一、备份方式:mysqldump
1. 备份
- 只备份单个数据表
mysqldump -h 远程服务器IP -u 用户 -p 密码 数据库名 数据表名 > /备份路径/文件名.sql
示例:mysqldump -h192.168.5.22 -uroot -ppassword database table > /tmp/database.sql
- 只备份单个数据库
mysqldump -h 远程服务器IP -u 用户 -p 密码 数据库名 > /备份路径/文件名.sql
示例:mysqldump -h192.168.5.22 -uroot -ppassword database > /tmp/database.sql
- 备份多个数据库
mysqldump -h 远程服务器IP -u 用户 -p 密码 --databases 数据库1名称 数据库2名称 > /备份路径/文件名.sql
示例:mysqldump -h192.168.5.22 -uroot -ppassword --databases database1 database2 > /tmp/database.sql
- 备份整个数据库
mysqldump -h 远程服务器IP -u 用户 -p 密码 --all-databases > /备份路径/文件名.sql
示例:mysqldump -h192.168.5.22 -uroot -ppassword --all-databses > /tmp/database.sql
- 只备份数据结构,不备份数据
mysqldump -d 数据库名 -u root -p > xxx.sql
- 只备份数据,不备份数据结构
mysqldump -t 数据库名 -u root -p > xxx.sql
扩展:
在使用mysqldump导出MySQL数据时,可以使用自定义参数来控制导出速度和大小。以下是一些常用的自定义参数:
–quick:强制mysqldump使用较少的内存来快速导出数据。
–max-allowed-packet=1024M:允许mysqldump传输更大的数据包,提高导出速度。
–single-transaction:使用事务来处理mysqldump所导出的数据,在执行期间可以避免表锁定,提高导出速度。
2. 还原
- source 命令还原
mysql -h192.168.5.22 -uroot -ppasswd
use databsename;
source /备份路径/备份文件名.sql
# 如果还原某张表,就需要执行use databasename;如果还原整个库不需要执行use databasename,就可以直接执行上述命令。
- mysql 命令恢复
- 还原数据库
mysql -h192.168.5.22 -uroot -p123123 < /opt/test03.sql
- 还原数据表
mysql -h192.168.5.22 -uroot -p123123 数据库名称 < /opt/test03.sql