MySQL库的操作

文章目录

创建数据库

本质就是在/var/lib/mysql创建一个目录

sql 复制代码
create database db_name;

如果该数据库不存在再创建,需加上if not exists选项

sql 复制代码
create database if not exists db_name;

四种创建带编码格式或校验规则的数据库


删除数据库

本质就是在/var/lib/mysql删除一个目录

cpp 复制代码
drop database db_name;

总结:

在/var/lib/mysql创建一个目录,再mysql中可以用show databases;查看到,也可以使用drop database db_name;删除;总之,两者是互通的。

但是不建议在/var/lib/mysql下手动创建,这样不合理;
执行删除之后的结果:

  • 数据库内部看不到对应的数据库
  • 对应的数据库文件夹被删除,级联删除,里面的数据表全部被删

查看数据库

sql 复制代码
show databases;

修改数据库

sql 复制代码
ALTER DATABASE db_name [[DEFAULT] CHARSET=character_name] [[DEFAULT] COLLATE=collation_name];

修改校验规则

字符集和校验规则

创建数据库的时候,有两个编码集;

1、数据库编码集------数据库未来存储数据;

2、数据库校验集------支持数据库的字段比较,本质也是一种读取数据库中数据的采用的编码格式;
数据库无论对数据做任何操作,都必须保证操作和编码必须是编码一致的;

查看系统默认的字符集

show variables like 'character_set_database';

查看系统默认的字符集校验规则

show variables like 'collation_database';

查看数据库支持的字符集

show charset;

查看数据库支持的字符集校验规则

show collation;

校验规则对数据库的影响

校验规则utf8_general_ci,不区分大小写;

校验规则utf8_bin,区分大小写;

创建两个数据库

utf8_general_ci

插入数据

查看数据

查询姓名是'cxy'的信息

utf8_bin

插入数据

查看数据

查询姓名是'cxy'的信息

我们发现 ,

校验规则utf8_general_ci,不区分大小写;

校验规则utf8_bin,区分大小写;

数据库的备份和恢复

备份

我们需要备份的库以及其中的内容

我们执行下述代码即可将数据库备份在当前路径下

复制代码
mysqldump -P 端口号 -u 用户名 -p 密码 -B 数据库名1 数据库名2 ...  > 数据库备份存储的文件路径

当我们打开back1.sql文件后,我们发现文件中有许多命令是我们之前执行的各种SQL命令;

恢复

我们执行下述代码恢复数据库

恢复后得结果

数据库中的内容也保存在里面

总的来说当我们打开back1.sql文件时,我们就意识到了数据库的备份不过就是,我们将创建数据库以及对数据库操作的SQL语句,其中包括创建数据库、创建表、插入数据等SQL语句操作进行保存;在恢复时,重新执行上述操作

相关推荐
wdfk_prog2 分钟前
[Linux]学习笔记系列 -- [drivers]char
linux·笔记·学习
运维行者_11 分钟前
深入解析 Docker 监控:核心指标完整清单
运维·服务器·网络·数据库·docker·容器·eureka
Aloudata24 分钟前
数据治理新解法:基于算子级血缘的主动元数据如何破解数仓重构难题?
大数据·数据库·数据治理·元数据·数据血缘
德育处主任Pro38 分钟前
『n8n』不用写SQL,了解一下内置的Datatable
数据库·sql
阿乐艾官42 分钟前
【日志及存储】
大数据·数据库
深蓝海拓1 小时前
PySide6的QTimeLine详解
笔记·python·qt·学习·pyqt
踢足球09291 小时前
寒假打卡:2026-2-12
数据库
thginWalker1 小时前
Redis的常用命令
数据库·redis·缓存
NineData1 小时前
NineData 社区版 V4.9.0 发布!支持应用切换能力以降低迁移风险,慢查询新增外部采集来源
数据库·sql·ninedata·社区版·v4.9.0·sql开发工具·navicat平替
2501_901147831 小时前
幂函数实现的优化与工程思考笔记
笔记·算法·面试·职场和发展·php