美文网首页
mysql简介

mysql简介

作者: bigpeng个人博客 | 来源:发表于2018-08-30 20:51 被阅读11次

1、mysql数据库简介

mysql数据库是一个开源免费的关系型数据库。目前属于oracle旗下产品。

特点

  • 开源免费,可以定制,你可以修改源码来开发自己的msql系统。
  • 使用标准的sql数据语言,兼容性较好

2、mysql 常用命令

  • mysql -u root -p 登录
  • show databases 显示所有的数据库
  • show tables 显示指定数据库的所有表
  • desc 表名 显示某种表的所有字段结构
  • show index from tablename 显示某张表的索引
  • use databaseName 使用某个数据库

3、数据库创建

1)创建数据库
语法:

create database [数据库名称] default character set utf8 collate utf8_general_ci;
create database [数据库名称] default charset utf8 collate utf8_general_ci;
charset 为编码格式
collate 为排序规则

示例:

create database testa default charset utf8 collate utf8_general_ci;

2)查看和修改数据库字符集
a.查看编码
show variables like 'character%';

b.更改数据库的字符编码
ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
3)删除数据库
drop database 数据库名

create table tutorials_tbl(
   tutorial_id INT NOT NULL AUTO_INCREMENT,
   tutorial_title VARCHAR(100) NOT NULL,
   tutorial_author VARCHAR(40) NOT NULL,
   submission_date DATE,
   PRIMARY KEY ( tutorial_id )
);

4、用户管理

1)创建用户
语法:

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
例子:
CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';

2)给用户授权
语法:

GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'%'  IDENTIFIED BY 密码;

取消授权:revoke 权限 from db@服务器地址;

show grants for '用户'@'IP地址'                  -- 查看权限

示例:

GRANT ALL PRIVILEGES ON isignatureserver.* TO 'kinggrid'@'%'  IDENTIFIED BY 'kinggrid';


3)修改密码

mysqladmin -u用户名 -p旧密码 password 新密码。
set password for '用户名'@'IP地址' = Password('新密码')

4)删除用户
DROP USER 'username'@'host';

5、存储引擎

查看当前存储引擎

SHOW ENGINES;显示所有支持的存储引擎
 SHOW VARIABLES LIKE 'storage_engine'; 显示当前引擎

常见的四种存储引擎

  • InnoDB存储引擎:
    支持自动增长列,支持外键约束,支持事务,相对访问速度略差,mysql默认使用该引擎。

  • MyISAM存储引擎 :
    不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表

  • MEMORY存储引擎
    memory类型的表访问非常的快,因为它的数据是放在内存中的,并且默认使用HASH索引,但是一旦服务关闭,表中的数据就会丢失掉。

  • Archive存储引擎
    仅支持insert和select
    支持很好的压缩功能
    不支持事务,不能很好的支持索引
    适用于:存储日志信息,或其它按时间序列实现的数据采集类的应用,如监控日志。

6、mysql 分页

mysql中分页使用limit来实现
语法:
select * from table limit 起始位置,查询的记录条数

mysql> SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15   
  
//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:    
mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.   
  
//如果只给定一个参数,它表示返回最大的记录行数目:    
mysql> SELECT * FROM table LIMIT 5; //检索前 5 个记录行   
  
//换句话说,LIMIT n 等价于 LIMIT 0,n。  

7、mysql 和oracle的区别

  • mysql 开源免费 而oracle是收费不开源的
  • mysql 一般用于中小型项目或互联网,而oracle一般用于大型企业
  • mysql 有自增主键,而oracle 需要使用序列来完成。
  • mysql 使用双引号来包裹字符,而oracle使用单引号
  • 分页查询语句不一样 mysql使用limit 而oracle 通过rownum

相关文章

网友评论

      本文标题:mysql简介

      本文链接:https://www.haomeiwen.com/subject/gacxwftx.html