mysql的binlog日志

基本的备份命令

mysqldump -h hostname -u username -p password databasename > backupfile.sql

基本还原命令

mysql -h hostname -u username -p password databasename < backupfile.sql

帮助:mysqldump --help

指定时间恢复

mysqlbinlog --start-date="2005-04-20 10:01:00" /var/log/mysql/bin.123456  | mysql -u root -pmypwd 
mysqlbinlog --stop-date="2005-04-20 10:01:00" /var/log/mysql/bin.123456  | mysql -u root -pmypwd 

指定位置恢复

mysqlbinlog --stop-position="368312" /var/log/mysql/bin.123456  | mysql -u root -pmypwd 
mysqlbinlog --start-position="368312" /var/log/mysql/bin.123456  | mysql -u root -pmypwd 

根据数据库名来进行还原 -d
在这里是小写的d,请不要把它和mysqldump中的-D搞混了。

[root@BlackGhost mysql]# /usr/local/mysql/bin/mysqlbinlog -d test  /var/lib/mysql/mysql-bin.000002

根据数据库所在IP来分-h

[root@BlackGhost mysql]# /usr/local/mysql/bin/mysqlbinlog -h 192.1681.102  /var/lib/mysql/mysql-bin.000002

根据数据库所占用的端口来分-P
有的时候,我们的mysql用的不一定是3306端口,注意是大写的P

[root@BlackGhost mysql]# /usr/local/mysql/bin/mysqlbinlog -P 13306  /var/lib/mysql/mysql-bin.000002

根据数据库serverid来还原–server-id
在数据库的配置文件中,都有一个serverid并且同一集群中serverid是不能相同的。

[root@BlackGhost mysql]# /usr/local/mysql/bin/mysqlbinlog –server-id=1  /var/lib/mysql/mysql-bin.000002

备份所有数据,并清空所有bin-log日志

./mysqldump –flush-logs -u root  –all-databases > /tmp/alldatabase.sql

你可能感兴趣的:(mysql的binlog日志)