【MySQL】深度学习与解析 : 库的操作知识整合

**前言:**本节内容是MySQL库的操作, 内容较少, 大体内容为创建库、删除库、修改库、库备份操作。

ps:本节内容适合安装了MySQL的友友们进行观看, 实操更有利于记住哦。

目录

创建数据库

查看数据库列表

创建数据库

删除数据库

编码集

查看字符集

查看校验集

规定字符集和校验集

校验规则对数据库的影响

修改数据库

数据库备份


创建数据库

查看数据库列表

首先要创建数据库就要能查看数据库, 查看数据库列表为:

cpp 复制代码
show databases; //查看数据库列表

创建数据库

cpp 复制代码
create database [if not exists] 数据库名;

其中sql命令当中有[]限定区域叫做可选项, 可以选择或者不选择。

创建数据的本质就是创建一个文件系统里面的目录。

删除数据库

cpp 复制代码
drop database 数据库名;  //删除数据库

删除数据库的本质就相当于删除linux文件系统里面的一个目录。

编码集

创建数据库的时候有两个编码集合, 一个叫做数据库编码集合, 一个叫做数据库校验集合。

  • 数据库编码集合------数据库未来存储数据采用的一个编码集合。
  • 数据库校验集合------支持数据库进行字段比较, 使用同样的编码。本质也是一种读取数据库中的数据采用的编码格式。

也就是说, 数据库无论对数据做任何操作, 都必须保证操作和编码必须是编码一致的。

查看系统支持的字符集或者校验集:

查看字符集

cpp 复制代码
show variables like 'character_set_database'; //查看字符集

mysql8.0下面默认生utf8mb4的:

查看校验集

cpp 复制代码
show variables like 'collation_database'; //查看校验集合

校验集合默认情况为utf8mb4_0900_ai_ci:

规定字符集和校验集

cpp 复制代码
create database 数据库名称 charset=字符集合; //设置字符集合
//或者
create database 数据库名称 character set 字符集; //设置字符集合

create database 数据库名称 charset=utf8mb4 collate 校验集;

下面为示例:

校验规则对数据库的影响

utf8_general_ci的校验规则是不区分大小写:

cpp 复制代码
create database test1 collate utf8_general_ci;
cpp 复制代码
create table person(name varchar(20));
cpp 复制代码
insert into person values('A');
insert into person values('a');
insert into person values('B');
insert into person values('b');

我们实验过后就会发现我们查'a'其实给我们查到的是A以及'a'的数据。 这就是不区分大小写。

--

然后utf8_bin区分大小写:

cpp 复制代码
create database test2 collate utf8_bin;
cpp 复制代码
create table person(name varchar(20));
cpp 复制代码
insert into person values('A');
insert into person values('a');
insert into person values('B');
insert into person values('b');

我们会发现如果查'a'就只能查到'a'了。

如果我们排序的话,排序是按照ASCII码值进行排序, 所以大写字母同意要比小写字母要小。 如果不区分大小写, 就是如同下面test1, 区分大小写就是下面的test2;

cpp 复制代码
select * from person order by name;

修改数据库

我们可以对数据库进行编码集修改:

cpp 复制代码
alter database test2 charset=utf8 collate utf8_general_ci; //例子, 修改编码集

数据库备份

我们可以在我们的用户里面创建一个文件用来保存数据库的备份文件:

然后执行命令:

cpp 复制代码
mysqldump -P3306 -uroot -p -B 数据库文件名 > 备份后的文件名

然后就能将数据库备份到指定文件里面:

以后我们想要将这份文件拷贝回来,只需要执行source 执行路径即可:

cpp 复制代码
source 指定路径

------------------以上就是本节全部内容哦, 如果对友友们有帮助的话可以关注博主, 方便学习更多知识哦!!!

相关推荐
激流丶6 分钟前
【Mysql 底层原理】MySQL 查询优化器的工作原理:如何生成最优执行计划
数据库·mysql·explain·执行计划
雷神乐乐22 分钟前
Sqoop学习
数据库·sqoop
小丑西瓜66628 分钟前
MySQL库操作
linux·服务器·数据库·mysql
谦谦均33 分钟前
PostgreSQL序列:创建、管理与高效应用指南
数据库·postgresql
荒川之神37 分钟前
RHEL/CENTOS 7 ORACLE 19C-RAC安装(纯命令版)
服务器·数据库·oracle
ZWZhangYu37 分钟前
【MyBatis源码】深入分析TypeHandler原理和源码
数据库·oracle·mybatis
ascarl20103 小时前
系统启动时将自动加载环境变量,并后台启动 MinIO、Nacos 和 Redis 服务
数据库·redis·缓存
LightOfNight3 小时前
Redis设计与实现第9章 -- 数据库 总结(键空间 过期策略 过期键的影响)
数据库·redis·后端·缓存·中间件·架构
Jasonakeke3 小时前
【重学 MySQL】八十四、深入理解 LEAVE 和 ITERATE 在存储过程中的使用
数据库·mysql
伏虎山真人5 小时前
开源数据库 - mysql - mysql-server-8.4(gtid主主同步+ keepalived热切换)部署方案
数据库·mysql·开源