数据库备份恢复

143 阅读1分钟
#
数据库备份/恢复实验一:

数据库损坏
备份:

1.
#
mysqldump -uroot -p123 --all-databases > /backup/`date +%F`_all.sql



2.
#
mysql -uroot -p123 -e 'flush logs' //截断并产生新的binlog



3. 插入数据 //模拟服务器正常运行

4. mysql> set sql_log_bin=0; //模拟服务器损坏

mysql> drop database db;

恢复:

1.
#
mysqlbinlog 最后一个binlog > /backup/last_bin.log



2. mysql> set sql_log_bin=0;

mysql> source /backup/2014-02-13_all.sql //恢复最近一次完全备份

mysql> source /backup/last_bin.log //恢复最后个binlog文件

#
数据库备份/恢复实验二:



如果有误删除
备份:

1. mysqldump -uroot -p123 --all-databases > /backup/`date +%F`_all.sql

2. mysql -uroot -p123 -e
'
flush logs
'
//截断并产生新的binlog

3. 插入数据 //模拟服务器正常运行

4. drop table db1.t1 //模拟误删除

5. 插入数据 //模拟服务器正常运行恢复:

1.
#
mysqlbinlog 最后一个binlog --stop-position=260 > /tmp/1.sql



#
mysqlbinlog 最后一个binlog --start-position=900 > /tmp/2.sql



2. mysql> set sql_log_bin=0;

mysql> source /backup/2014-02-13_all.sql //恢复最近一次完全备份

mysql> source /tmp/1.log //恢复最后个binlog文件

mysql> source /tmp/2.log //恢复最后个binlog文件

\更多学习资料可关注:itheimaGZ获取