MySQL的库操作

一、创建数据库

1、语法:

    CREATE DATABASE [IF NOF EXIST] name [create_specification
[,create_specification] ...]
create_specification:
    [DEFAULT] CHARACTER SET charset_name
    [DEFAULT] COLLATE collation_name

2、说明:

1)大写的表示关键字;

2)[]是可选项;

3)CHARACTER SET:指定数据库采用的字符集;

4)COLLATE:指定数据库字符集的校验规则。

3、创建数据库的案例
(1)创建名为Day1的数据库
在这里插入图片描述
说明:当创建数据库没有指定字符集和校验规则时,系统使用默认的字符集:utf8;校验规则是:utf8_general_ci。
在这里插入图片描述
(2)创建一个使用utf8字符集的Day2数据库。
在这里插入图片描述
(3)创建一个使用utf8,并带校验规则的Day3数据库。
在这里插入图片描述
4、字符集和校验规则
(1)查看系统默认字符集以及校验规则
1)查看系统默认的字符集:show variables like ‘character_set_database’;
在这里插入图片描述
2)查看系统默认的校验规则:show variables like ‘collation_database’;
在这里插入图片描述
(2)查看数据库支持的字符集和校验规则
1)查看数据库支持的字符集
在这里插入图片描述
释:数据库支持的字符集有22种,utf8是其中一种。
2)查看数据库支持的校验规则
在这里插入图片描述
释:数据库支持的校验规则有222种,utf_general_ci是其中一种。
(3)校验规则对数据库的影响
1)区分大小写
【例1】创建一个数据库,校验规则使用utf_general_ci【不区分大小写】
在这里插入图片描述
【例2】创建一个数据库,校验规则使用utf8_general_bin【区分大小写】
在这里插入图片描述
2)对排序的影响
【例3】不区分大小写
在这里插入图片描述
【例4】区分大小写
在这里插入图片描述
二、操纵数据库
1、查看数据库的相关信息
(1)查看数据库—show databases;
在这里插入图片描述
(2)显示数据库创建语句—show create database information;
在这里插入图片描述
释:

1)在MySQL中使用关键字需大写,但是不是必须的。

2)数据库名字的反引号是为了防止使用的数据库名刚好是关键字。

3)/!40100 default…/这个不是注释,表示当前MySQL版本大于4.01版本就执行这句话。

扫描二维码关注公众号,回复: 5887036 查看本文章

2、修改数据库

(1)语法:

ALTER DATABASE [IF EXIST] db_name alter_spacification:
[DEFAULT]CHARCTER SET  charset_name 
[DEFAULT]COLLATE collation_name 

(2)说明:对数据库的修改主要指的是修改数据库的字符集和校验规则。
(3)实例:将information数据库字符集改成gbk。
在这里插入图片描述
3、数据库删除
(1)语法
DROP DATABASE [IF EXIST] db_name;
执行删除之后的结果:数据库内部看不到对应的数据库,对应的数据库文件夹被删除,级联删除,里面的数据表全部被删除。注意:不要随意删除数据库!
(2)实例:删除Day1数据库
在这里插入图片描述
4、备份和恢复数据库
(1)备份
1)语法:mysqldump -u 用户名 -p 密码 -B 数据库名 > 数据库备份存储的文件路径
2)实例:将mytest库备份到文件
在这里插入图片描述
释:这时打开mytest.sql文件,可以看到整个创建数据库、建表、导入数据的语句都转载到这个文件中。
(2)还原—将数据库还原回来
1)语法:source 数据库备份的路径
2)实例:将mytest数据库还原回来
在这里插入图片描述
(3)备份的注意事项
1)如果备份的不是整个数据库,而是其中的一张表,怎么做?
#mysqldump -u 用户名 -p 密码 数据库名 表名1 表名2 > 保存路径
2)同时备份多个数据库
#mysqldump -u root -p 密码 -B 数据库名1 数据库名2… > 数据库存放路径
释:如果备份一个数据时没有带上-B参数,在恢复数据库时,需要再创建空数据库,然后使用数据库,再使用source来还原。

5、查看当前MySQL数据库的连接情况
(1)语法:show processlist;
(2)实例:
在这里插入图片描述
查看当前MySQL数据库的连接情况,可以知道哪些用户连接到MySQL,如果查出某个用户不是不是正常登陆的,很可能数据库被入侵了。当发现数据库比较慢时,可以用这个指令来看看数据库的连接情况。

猜你喜欢

转载自blog.csdn.net/m0_38121874/article/details/89196097