mysql读书笔记--备份还原
2mysqldump多个命令参数生产标准备份实战mysqldump -uroot -p'oldboy123' -B d-name|gzip >/tmp/mysql.sql.gz
-B 添加建库建表的语句
同时备份多个数据库
-A 备份全部数据库
--compact 减少输出注解,生产不用
gzip 压缩数据库
-F 切割bin-log日志,刷新binlog参数
--master-data=1 增加binlog日志文件名及对应的文置点
--master-data=2添加了注释
-x--local-all-tables
-l--local-tables Lock all tables for read
-d 只备份表结构
-t 只备份数据
--single-transaction适合innodb事务数据库备份
备注:在/etc/my.cnf的里启用log-bin=mysql-bin所有的更改都会写在里面
过滤多余信息
egrep -v "#|^$|/*|--"/tmp/mysql.sql
mysqldump属于逻辑备份
恢复数据库
mysql -uroot -p'oldboy'备份的文件名
mysqldump -uroot -p oldboy student > /tmp/mysql_oldboy_student.sql
分库多表备份脚本
#!/bin/bash
user=root
pwd=oldboy
time=$(date +%F)
if [ ! -d /tmp/${time} ];then
mkdir -p /tmp/${time}
fi
for dbname in $(mysql -u${user} -p'${pwd}' -e "show databases;"|egrep -v "information_schema|performance_schema|Database|mysql")
do
for tname in $(mysql -u${user} -p'${pwd}' -e "use $dbname;show tables;"|egrep -v "Tables")
do
mysqldump -u${user} -p'${pwd}' ${dbname} ${tname} >/tmp/${time}/${dbname}_${tname}.sql
done
done
Warning: Using a password on the command line interface can be insecure
sh /tmp/mysql.sh >/dev/null 2>&1
06只备份MySQL表结构及只备份MySQL数据
mysql -uroot -p'oldboy' -d oldboy(只备份表结构)
mysql -uroot -p'oldboy' -t oldboy(只备份数据 )
7企业生产场景不同引擎备份命令参数详解
myisam:
mysqldump -uroot -poldboy123 -A -B -F --master-data=2 -x|gzip>/tmp/oldboy_all.sql.gz
innodb:
mysqldump -uroot -poldboy -A -B -F --master-data=2 --single-transaction|gzip>/tmp/oldboy_all.sql.gz
8利用source恢复mysql数据讲解及实战
进入mysql命令行
source /tmp/mysql_bal_B.sql
9分库备份后mysql如何分库恢复实战
解压数据库
gzip -d /tmp/oldboy_B.sql.gz
mysql -uroot -p'oldboy123'
页:
[1]