目录
1.查看数据库列表
语法:
show databases;
2.创建数据库
语法:
create database 数据库名
本质就是在/var/lib/mysql上创建一个目录
3.删除数据库
drop database 数据库名
本质是删除了/var/lib/mysql中的一个目录
4.数据库的编码集
写入和读取的编码集必须是相同的,就像你使用汉语写了一段信息,使用英文是无法获取这段信息的内容的
一共有两个编码集
- 1.数据库编码集 -- 数据库未来存储数据
- 2.数据库校验集 -- 支持数据库,进行字段比较使用的编码,本质也是一种读取数据库中数据的采用的编码
4.1查看编码集和校验集
- 查看编码集
show variables like 'character_set_database';
- 查看校验集
show variables like 'collation_database';
4.2指定编码集创建数据库
创建数据库时,如果没有指定字符集和校验集,系统默认字符集:utf8,校验集:utf8_general_ci
- 创建一个utf8字符集数据库
create database user1 charset=utf8;
- 创建一个utf8字符集,校验集utf8_general_ci数据库
create database user2 charset=utf8 collate utf8_general_ci;
4.3比较不同校验集
创建两个数据库,一个校验集为utf8_general_ci(不区分大小写),一个为utf8_bin(区分大小写),然后我们插入若干字母(有大写和小写),进行比较。
1.创建表
2.插入数据
3.现象
- user1: utf8_general_ci(不区分大小写)
- user2:utf8_bin(区分大小写)
5.修改数据库
对数据库的修改主要指的是修改数据库的字符集,校验规则
alter database 数据库名 charset=gbk collate gbk_chinese_ci
6.数据库的备份与恢复
6.1备份
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
查看mytest.sql 文件里的内容,会发现其实把我们整个创建数据库,建表,导入数据的语句
都装载这个文件中。
6.2恢复
source 路径名/文件名;
我们先将user1删除,再恢复
可以看到这样就成功恢复了
6.3仅备份几张表或备份多个数据库
- 仅备份几张表
mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql
- 备份多个数据库
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径
如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原