您的位置:首页 > 数据库 > MySQL

mysql的逻辑备份和恢复

2014-08-26 10:46 197 查看
备份指定的数据库或此数据库中的某些表

mysqldump [options] db_name [tables] >backup.sql

备份指定的一个或多个数据库

mysqldump --databases 数据库1 [数据库2 数据库3]>backup.sql

备份所有的数据库

mysqldump --all-databases >backup.sql

恢复

完全恢复

mysql -uroot -p dbname <bakfile

备份恢复后数据并不完整,还需要将备份后执行的日志进行重放,语法如下:

mysqlbinlog binlog-file |mysql -uroot -p

mysqldump -uroot -p -l -F test >test.dmp -l参数表示给所有表加读锁,-F表示声称一个新的日志文件,

基于时间点的恢复:

假设12点发生了误操作:

mysqlbinlog --stop-date="2014-08-25 11:59:59" binlog |mysql -uroot -p

mysqlbinlog --start-date="2014-08-25 12:01:00" binlog |mysql -uroot -p

基于位置恢复

mysqlbinlog --stop-position="3648" binlog |mysql -uroot -p

mysqlbinlog --start-position="3670" binlog |mysql -uroot -p
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: