mysql-binlog日志

开启bin-log日志

vi /etc/my.cnf  增加bin-log=mysql-bin

 #binlog日志的文件是存放在data目录中所以 要在此设置一下datadir这个属性
datadir = /var/lib/mysql/data 注意:data目录是后期自己建上去的,必须建这个目录

查看mysql-binlog日志: show variables like "%bin%"; log-bin后面如果为on那说明bin-log日志开启成功

ls /var/lib/mysql  其中mysql-bin.00001为二进制日志文件

bin-log日志更新

flush logs;此时就会生成一个最新的bin-log日志

show master status;查看最后一个bin日志

reset master;清空所有的bin-log日志

此案例为把mysql-bin.000002日志文件里面记录的操作产生的数据恢复到test数据库中

 /usr/bin/mysqlbinlog --no-defaults mysql-bin.000002|mysql -uroot -p test

 /usr/bin/mysqlbinlog --start-position="50" --stop-position="100" mysql-bin.000001 | mysql -uroot -p123 test【把mysql-bin.000001的50-100行的记录恢复到test数据库,除此之外还可以有--stop-date=""
--start-position="50" --stop-position="100"可以单独使用

 --stop-date="2014-01-01 11:11:11"

 --start-date="2014-01-01 11:11:11"

这个操作需要进入到/var/lib/mysql/data 存放二进制目录文件的里面才能执行

mysql备份

mysqldump -uroot -p test -l -F>/tmp/test.sql 【备份test数据库到test.sql文件里 -l 代表读锁 -F代表flush logs】

mysql恢复

mysql -uroot -p test -v -f < /tmp/test.sql【从test.sql恢复数据记录-v 代表查看导入信息 -f代表忽略错误】

猜你喜欢

转载自1207368746.iteye.com/blog/2124823