内容简介
本章介绍MySQL数据库备份命令——mysqldump
mysqldump命令位于MySQL安装目录的bin目录下,可以备份单个数据库、多个数据库和所有数据库,且此三种备份方式比较相似
备份命令语法格式
使用该命令备份时,无需登录MySQL数据库在控制台操作,可直接在DOS/Shell命令行窗口下执行,若未配置环境变量,需要先切换至数据库安装目录的bin目录下
单个数据库
-- 语法格式
-- 多个表之间用空格分隔,若不指定表名则默认整个库
mysqldump -u用户名 -p密码 数据库名称 [表1 表2 表3……] > 备份文件路径.sql
执行结果
备份文件信息
还原数据库
使用root连接远程Mysql,新建数据库,运行备份文件sql
多个数据库
-- 语法格式:
-- 该命令下至少指定一个数据库,多个库之间用空格分隔
-- 注:该方式还原时不需要创建数据库和指定要操作的数据库,因为对应的备份文件中已经包含create database 和 use 等语句
mysqldump -u用户名 -p密码 --databases 库1 [库2 库3……] > 备份文件路径.sql
所有数据库
-- 语法格式:
-- 注:该方式还原时不需要创建数据库和指定要操作的数据库,因为对应的备份文件中已经包含create database 和 use 等语句
mysqldump -u用户名 -p密码 --all-databases > 备份文件路径.sql
数据库还原
当数据库中的数据被破坏时,可以通过备份好的数据文件进行还原
# 还原时先查看是否有同名库(控制台中执行)
show databases;
# 存在则先删除(控制台中执行)
drop database 库名;
# 创建库(控制台中执行)
create database IF NOT EXISTS `库名` DEFAULT CHARACTER SET utf8mb4;
# 还原方式1
# 语法格式:
# 备份文件中若有建库语句,则不用指定数据库名称
mysql -u用户名 -p密码 [数据库名称] < 备份文件路径.sql
# 还原方式2
# 先登录MySQL,进入控制台(不用进入数据库)
./bin/mysql -u用户名 -p密码
# 执行source语句
source 备份文件路径.sql