mysql数据库备份
Posted ubeing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库备份相关的知识,希望对你有一定的参考价值。
原文https://www.cnblogs.com/yourblog/archive/2019/02/15/10381962.html
在开始备份之前,请锁定需要备份的实例
mysql> LOCK INSTANCE FOR BACKUP;
执行备份,完成后解锁实例
mysql> UNLOCK INSTANCE;
mysqldump工具备份
备份整个数据库
$> mysqldump -u root -h host -p dbname > backdb.sql
备份数据库中的某个表
$> mysqldump -u root -h host -p dbname tbname1, tbname2 > backdb.sql
备份多个数据库
$> mysqldump -u root -h host -p --databases dbname1, dbname2 > backdb.sql
备份系统中所有数据库
$> mysqldump -u root -h host -p --all-databases > backdb.sql
备份全部数据库的数据和结构
mysqldump -uroot -p123456 -A > /data/mysqlDump/mydb.sql
备份全部数据库的结构(加 -d 参数)
mysqldump -uroot -p123456 -A -d > /data/mysqlDump/mydb.sql
备份全部数据库的数据(加 -t 参数)
mysqldump -uroot -p123456 -A -t > /data/mysqlDump/mydb.sql
定时备份 (shell脚本)
vim backupdb.sh 创建脚本内容如下: #!/bin/sh db_user="root" db_passwd="123456" db_name="userdb" name="$(date +"%Y%m%d%H%M%S")" /usr/bin/mysqldump -u$db_user -p$db_passwd $db_name >>/home/backup/$name.sql 说明: /usr/bin/mysqldump :mysql数据库安装目录下的mysqldump备份工具路径 dbname :需要备份的数据库名字 /home/backup/$name.sql :备份文件输出位置,可以根据情况自行设定 2. 给shell脚本添加执行权限
chmod u+x backupdb.sh
3. 给脚本添加定时任务
crontab -e 输入上一行命名进行编辑定时任务,最后添加如下内容 00 01 * * * /bin/sh /usr/local/mysql/backupdb.sh 上面的定时任务意思是每天凌晨1点会执行自动备份脚,进行SQL数据库的定时备份
格式如下:minute hour day month week command
1. 创建shell脚本
2. 给shell脚本添加执行权限
3. 给脚本添加定时任务
以上是关于mysql数据库备份的主要内容,如果未能解决你的问题,请参考以下文章