MySQL 数据库基础操作指南:从创建管理到备份恢复全解析
前言
在日常开发或数据管理中,与 MySQL 数据库打交道时,我们最常遇到的需求往往不是复杂的架构设计,而是 “如何创建一个数据库”“怎么查看字符集是否正确”“备份的数据该怎么恢复” 这类基础操作。这些看似简单的步骤,却是保证数据安全、避免乱码或误删风险的关键 —— 比如没设置正确的校验规则可能导致中文排序异常,误删数据库前没备份会直接造成数据丢失,连不上数据库时不知道如何查看连接情况则会卡住业务进度。
为了帮大家系统掌握这些 “高频基础操作”,这篇博客会围绕 MySQL 数据库的核心日常管理展开:从最基础的 “查看已有数据库”“创建新数据库” 讲起,到如何安全删除数据库、如何配置字符集与校验规则避免乱码,再到数据库的基本操纵逻辑,最后重点拆解备份与恢复的具体步骤,以及如何查看数据库连接情况排查问题。
目录
查看和创建数据库
数据库删除
字符集和校验规则
操纵数据库
备份和恢复
查看连接情况
查看和创建数据库
show databases;
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
create database bd;

create database bd2 charset=utf8;
create database bd3 charset=utf8 collate utf8_bin;
三个数据库的创建结果
数据库删除
DROP DATABASE [IF EXISTS] db_ name;
创建数据库:create database db_name;---本质就是在/var/lib/mysql 创建一个目录(小编的Linux云主机上,大家可能不同)
删除数据库:drop database db_name;----删除目录
所以在上面那个路径下直接mkdir ,rm进行命令操作也能成功,但是别这么做,毕竟是不规范的操作。
字符集和校验规则
show variables like 'character_set_database';
show variables like 'collation_database';
show charset;
show collation;

创建数据库的时候,有两个编码集:
1.数据库编码集--数据库未来存储数据
2.数据库校验集--支持数据库,进行字段比较使用的编码,本质也是一种读取数据库中数据的采用的编码格式
综上:数据库无论对数据做任何操作,都必须保证操作和编码必须是编码一致的!!!
create database test1 collate utf8_general_ci;use test1;create table name(name varchar(20));insert into num values('a');insert into num values('A');insert into num values('b');insert into num values('B');select *from num;
create database test2 collate utf8_general_ci;use test2;create table name(name varchar(20));insert into num values('a');insert into num values('A');insert into num values('b');insert into num values('B');
区分大小写的排序和查询结果
操纵数据库
查看数据库
show databases;
显示创建语句
show create database 数据库名;
mysql> show create database test2;
+----------+--------------------------------------------------------------------------------------------------------------------------+
| Database | Create Database |
+----------+--------------------------------------------------------------------------------------------------------------------------+
| test2 | CREATE DATABASE `test2` /*!40100 DEFAULT CHARACTER SET utf8mb3 COLLATE utf8mb3_bin */ /*!80016 DEFAULT ENCRYPTION='N' */ |
+----------+--------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
修改数据库
语法:
ALTER DATABASE db_name
[alter_spacification [,alter_spacification]...]
alter_spacification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
mysql> show create database hellomysql;
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
| Database | Create Database |
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
| hellomysql | CREATE DATABASE `hellomysql` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */ |
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)mysql> alter database hellomysql charset=gbk;
Query OK, 1 row affected (0.02 sec)mysql> show create database hellomysql;
+------------+-------------------------------------------------------------------------------------------------------+
| Database | Create Database |
+------------+-------------------------------------------------------------------------------------------------------+
| hellomysql | CREATE DATABASE `hellomysql` /*!40100 DEFAULT CHARACTER SET gbk */ /*!80016 DEFAULT ENCRYPTION='N' */ |
+------------+-------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)mysql>
备份和恢复
备份
# mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
在系统终端执行正确的 mysqldump
命令
将test2库备份文件
# Linux 系统示例(直接在 [root@xxx ~]# 提示符下执行)
mysqldump -P3306 -u root -p -B test2 > /root/test2_backup.sql
mysql> source 路径;
mysqldump -u root -p 数据库名 表名1 表名2 > 。。。
mysql+系统级命令
# 1. 先登录 MySQL 客户端创建数据库(若已存在可跳过)
mysql -u root -p
Enter password: 你的密码
mysql> CREATE DATABASE IF NOT EXISTS test2; # 创建数据库
mysql> exit; # 退出客户端# 2. 执行还原命令,指定数据库
mysql -u root -p test2 < /root/test2_backup.sql
同时备份多个数据库
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径
查看连接情况
show processlist
结束语
到这里,MySQL 数据库的核心基础操作就梳理完毕了。我们从数据库的 “查看与创建” 入手,掌握了如何安全删除数据库、如何通过字符集与校验规则规避乱码问题,也了解了数据库的基本操纵逻辑,最后重点学会了备份与恢复的两种常用方式,以及如何通过查看连接情况排查异常 —— 这些操作看似基础,却是保障数据安全、稳定使用 MySQL 的 “基石”。
比如备份与恢复,很多人会在数据丢失后才意识到其重要性;字符集配置则容易被忽略,直到出现中文排序错误才回头排查。希望这篇内容能帮你把这些基础操作内化为 “习惯”,而不是等到出问题才临时补救。
如果在实际操作中遇到了特殊场景(比如超大数据库备份、多用户连接冲突),或者对某一步操作有疑问,欢迎在评论区交流。后续我们还会针对 MySQL 的进阶操作(如 SQL 优化、事务管理)展开分享,让大家从 “会用” 到 “用好” MySQL,持续提升数据管理能力。