Mysql常规操作

2018-08-14  本文已影响0人  白衣渡人_a063

一、增加用户

1.远程登录用户

格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”
例子:增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。

grant select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identified by “abc”;

2.增加本机登录用户

例子:增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作

grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “abc”;

二、数据库操作

1.显示数据库

mysql>> show databases;

2.创建数据库

mysql>> create database <数据库名>

3.删除数据库

mysql>> drop database <数据库名>

4.选择数据库

mysql>> use <数据库名>

5.查看当前数据库所有数据表

mysql>> show tables;

6.查看数据库版本

mysql>> select version();

三、表操作

1.创建表

mysql>> create table <表名>(<字段名n> <类型n>...);

表参数 理解
NOT NULL 不为空
AUTO_INCREMENT 自增属性+1,一般用于主键
PRIMARY KEY 定义主键
ENGINE 设置存储引擎
CHARSET 设置编码
ASC 升序
DESC 降序
INDEX、KEY 用于指定字段为索引
UNIQUE 创建唯一性索引
FULLTEXT 创建全文索引
SPATIAL 创建索引

2.获取表结构

mysql>> desc <表名>
show columns from <表名>

3.删除表

mysql>> drop table <表名>

可删除多个,需要有每个表的DROP权限

4.插入数据

mysql>> insert into <表名>(字段名..) VALUE(值);

说明:每次只能向表中插入一条数据

5.删除数据

mysql>> delete from <表名> where 表达式

6.更新表数据

mysql>> update <表名 > set 字段=新值... where 表达式

可更新多张表,limit限制更新行数

7.更改表字段

7.1 新增表字段

mysql>> alter table <表名> add <字段> 类型 其他;

7.2 加索引

mysql>> alter table <表名> add index <索引名> (字段名,字段名...)

7.3加关键字索引

mysql>> alter table <表名> add primary key(id);

7.4删除索引

mysql>> alter table <表名> drop index <索引名>;

7.5修改字段类型

mysql>> alter table <表名> MODIFY 字段 类型 新类型;

7.5修改字段名称、类型

mysql>> alter table <表名> CHANGE 字段 新字段名 新类型

8.修改表名

mysql>> rename table 原表名 to 新表名

当你执行 RENAME 时,你不能有任何锁定的表或活动的事务。

9.查数据表相关信息

show table status like '表名';

10.查询数据库变量属性

show variables like "PROFILING(变量名)";

属性 含义
name 表名
Engine 表的引擎类型,旧版本中该属性名为Type
Row_format 行的格式 Dynamic(长度可变)Fixed(长度固定)Compressed(压缩表)
Rows 表的行数(InnoDB中是估计值)
Avg_row_length 平均每行字节数
Data_length 表数据大小(字节单位)
Max_data_length 表数据最大容量(和存储引擎有关)
Index_length 索引大小(字节单位)
Data_free 已分配还未使用空间
Auto_increment 下一个AUTO_INCREMENT的值
Create_time 创建时间
Update_time 最后更新时间
Check_time 最后一次检查表的时间
Collation 表的默认字符集和字符列排序规则
Create_options 创建表时指定的其他选项
Comment 额外信息,注释或空间信息

四、数据备份

mysqldump常用于MySQL数据库逻辑备份。导出文件默认在mysql\bin目录下

1.备份数据库

格式:mysqldump -u 用户名 -p 数据库名 > 导出的文件名

mysql>> mysqldump -u user_name -p 123456 [database_name...] > 路径/文件名

2.备份数据表

格式同数据库备份

mysql>> mysqldump -u user_name -p 123456 database_name [table_name....]> 路径/文件名

3.导出数据库结构

mysql>> mysqldump -u user_name -p -d –add-drop-table database_name > 路径/文件名

-d 无数据 -add-drop-table 在每个create语句之前增加一个drop table

4.不同主机备份

mysql>> mysqldump -h链接ip -P(大写)端口 -u用户名 -p密码数据库名>路径

5.数据库恢复

mysql>> source 备份文件

第二种:命令行执行
mysql -uroot -p demo_db < 备份文件

五、binlog增量备份

上一篇下一篇

猜你喜欢

热点阅读