创建名为 db1 的数据库:
create database db1; (说明:当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则 是:utf8_ general_ ci)
删除数据库:
drop database db_name;
在 /var/lib/mysql 创建一个目录
删除数据库就是删除目录
(如下,但是不要如此操作)
1.数据库编码集 – 数据库未来存储数据
2.数据库校验集 – 支持数据库,进行字段比较使用的编码,本质也是一种读取数据库中数据的采用的编码格式
数据库无论对数据做任何操作,都必须保证操作和编码是一致的
show variables like ''character_set_database';
(配置文件里可以改)
show variables like 'collation_database';
show variables like 'character_%';
show charset;
上面是如何读入,下面是如何写入,如何解释
show collation;
create database d1;
默认创建好的数据库里面会有db.opt文件,里面就是指定的编码格式
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...] create_specification: [DEFAULT] CHARACTER SET charset_name [DEFAULT] COLLATE collation_name
说明: 大写的表示关键字 [] 是可选项 CHARACTER SET: 指定数据库采用的字符集 COLLATE: 指定数据库字符集的校验规则
创建一个使用utf8字符集的名为 db2 数据库:
create database db2 charset=utf8; create database db2 charset set utf8;
创建一个使用utf字符集,并带校对规则的 db3 数据库。
create database db3 charset=utf8 collate utf8_general_ci;
校验规则 utf8_ general_ ci 和 utf8_ bin 的区别是前者区分大小写,后者不区分大小写。
所以这里我们可以用这两个校验规则来测试。
drop database d1;
use d1;
show tables;
selct database();
show create database d1;
修改后,提示部分的具体编码格式会变化
修改编码集
alter database d1 charset=gbk collate gbk_chinese_ci;
(备份是在linux下操作,而不是数据库中)
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
如果不带 -B 选项,那么还原时,需要自己建立表并且use,才能还原。所以想给数据库重命名,就不要带-B选项了。(现在数据库是没有重命名操作的,因为别人如果在使用某个数据库,你改了名字,就可能出问题)
备份文件示例:
.sql 文件
其实把我们所有的操作都进行了备份。
mysql> source D:/mysql-5.7.22/mytest.sql;
mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径
show processlist
可以告诉我们当前有哪些用户连接到我们的MySQL,如果查出某个用户不是你正常登陆的,很有可能你
的数据库被人入侵了。以后大家发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况。