自学内容网 自学内容网

MySQL --- 库的操作

一、创建数据库

create database [ if not exists ] 数据库名; // []中的为可选项

在创建库时,也可以指定数据库采用的字符集(character set)和数据库字符集的校验规则(collate)

(当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则是:utf8_ general_ ci,或者在配置文件中进行设置,在Linux中配置文件路径一般为 /etc/my.cnf,这样创建的数据库就会遵循配置文件中的选项)

字符集(Character Set)

字符集定义了数据库中可以存储哪些字符以及这些字符如何编码。每个字符集都包含了特定语言或符号的字符及其对应的编码。例如,utf8 字符集支持 Unicode 标准中的多语言字符,包括英文字符、中文、日文、韩文等。latin1(或称为 iso8859-1)则主要用于西欧语言。

字符集的选择直接影响到数据的存储效率和准确性。选择不恰当的字符集可能会导致数据丢失(例如,使用不支持中文的字符集存储中文字符)或存储效率低下(例如,使用utf8mb4存储纯英文文本,而latin1已足够)。

校验规则(Collation)

校验规则定义了字符集中字符的比较和排序规则。在同一字符集下,可以存在多种不同的校验规则。这些规则决定了字符的比较是基于二进制值、是否区分大小写、是否区分重音符号等。

  • show variables like 'character_set_database'; // 查看系统默认字符集
  • show variables like 'collation_database'; // 查看系统默认的校验规则
  • show charset; // 显示系统支持的字符集
  • show collation; // 显示系统支持的字符集校验规则

二、显示数据库

show databases; // 显示数据库

show create database 数据库名; // 显示创建语句

说明:

  • MySQL 建议我们关键字使用大写,但是不是必须的。
  • 数据库名字的反引号``,是为了防止使用的数据库名刚好是关键字
  • /*!40100 default.... */ 这个不是注释,表示当前mysql版本大于4.01版本,就执行这句话

三、修改数据库

alter database 数据库名 字符集 校验规则;

// 对数据库的修改主要指的是修改数据库的字符集,校验规则

四、删除数据库

 drop database [if exists] 数据库名;

 

五、备份和恢复

1、备份

mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径;

说明:

  • -P 端口号  ,即mysql服务器进程对应的端口号
  • -u 用户名
  • -p 密码
  • -B 数据库名

形成的文件中保存的是我们创建数据库的语句,也就是说当我们去还原数据库时,本质就是将这些语句重新执行一遍

2、恢复

source 备份的文件路径 ;

 从上面我们也能看出,恢复时,只是在执行创建数据库时的各种语句。

如果我们只要备份数据库的其中一张/多张表

mysqldump -P3306 -u root -p 数据库名 表1 表2 .... > 数据库备份存储的文件路径;

 如果我们要备份多个数据库

mysqldump -P3306 -u root -p -B 数据库1 数据库2 ... > 数据库备份存储的文件路径;

注意:-B选项的作用在于备份数据库时,备份文件中有创建数据库的语句,所以在恢复时,直接source就行,否则就需要先创建数据库,在使用数据库(即执行 use 数据库名),再进行source。 

六、查看连接情况

show processlist;

可以查看当前有哪些用户连接到我们的 MySQL ,如果查出某个用户不是你正常登陆的,很有可能你的数据库被人入侵了。以后大家发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况

原文地址:https://blog.csdn.net/V_zjs/article/details/140573482

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!