目录
1. 创建数据库
2. 删除数据库
3. 查看数据库
4. 修改数据库
5. 备份和恢复
6. 查看连接情况
1. 创建数据库
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]
1. 大写的是关键字
2. [ ]可带可不带
3. db_name 数据库名称
4. CHARACTER SET: 指定数据库采用的字符集&&COLLATE: 指定数据库字符集的校验规则。
1. 字符集和校验规则
创建数据库的时候有两个编码集:
1. 数据库的编码集:数据库存储的数据的编码。
2. 数据库的校验集:读取数据采用的编码格式。
比如:写字写的是中文,别人看得是个会中文的看,而不是不懂中文的。
数据库对数据的任何操作对应的编码集必须是一致。
1. 查看系统默认字符集以及校验规则
show variables like 'character_set_database';
show variables like 'collation_database';
2. 查看数据库支持的字符集
show charset;
3. 查看数据库支持的字符集校验规则
show collation;
4. 校验规则对数据库的影响
创建一个数据库,校验规则使用utf8_ general_ ci[不区分大小写]
create database test1 charset=utf8 collate utf8_general_ci;
创建一个数据库,校验规则使用utf8_ bin[区分大小写]
create database test2 charset=utf8 collate utf8_bin;
创建2个表d1,d2。
create table d1(name varchar(20));
create table d2(name varchar(20));
插入数据:
insert into d1 (name) values('a');
insert into d1 (name) values('b');
insert into d1 (name) values('c');
insert into d1 (name) values('A');
insert into d1 (name) values('B');
insert into d1 (name) values('C');
insert into d2 (name) values('a');
insert into d2 (name) values('b');
insert into d2 (name) values('c');
insert into d2 (name) values('A');
insert into d2 (name) values('B');
insert into d2 (name) values('C');
查看数据:
按小写查询:
按大写查询:
对内容进行排序:
前者不区分大小写,后者区分大小写
2. 删除数据库
DROP DATABASE [IF EXISTS] db_ name;
执行删除之后的结果 :
数据库内部看不到对应的数据库
对应的数据库文件夹被删除,级联删除,里面的数据表全部被删
3. 查看数据库
show databases;// 使用数据库
use 库名// 查看当前正在使用哪个数据库
select database()
4. 修改数据库
ALTER DATABASE db_name [alter_spacification [,alter_spacification]...]
对数据库的修改主要指的是修改数据库的字符集,校验规则。
5. 备份和恢复
// 备份数据库
mysqldump -P3306 -u root -p 密码 -B 数据库名1 数据库名2 .... > 数据库备份存储的文件路径// 备份表
mysqldump -P3306 -u root -p 密码 数据库名 表1 表2 .... > 数据库备份存储的文件路径// 还原
mysql> source 路径
如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用据
库,再使用source来还原。
相当于把该数据库里的表都备份了。
6. 查看连接情况
show processlist
可以告诉我们当前有哪些用户连接到我们的 MySQL ,如果查出某个用户不是你正常登陆的,很有可能你 的数据库被人入侵了。