Mysql入门MySQL中的binlog相关命令和恢复技巧
《Mysql入门MySQL中的binlog相关命令和恢复技巧》要点: MYSQL必读操作命令: 代码如下: show binlog events in 'mysql-bin.000016' limit 10;MYSQL必读reset master 删除所有的二进制日志 MYSQL必读show master logs; 或者 show binary logs; 查看二进制文件列表和文件大小 ./mysqlbinlog --start-datetime="2012-05-21 15:30:00" --stop-datetime="2012-05-21 16:40:00" /binlog/mysql-bin.000005 > a.log MYSQL必读2. 要想通过日志恢复数据库,在你的 my.cnf 文件里应该有如下的定义,log-bin=mysql-bin,这个是必须的 ?log-bin=mysql-bin ?binlog-do-db=db_test ?binlog-do-db=db_test2????? MYSQL必读3.删除二进制日志: purge master logs to 'mysql-bin.000006'; ?(删除mysql-bin.000006之前的二进制日志文件) purge master logs before '2007-08-10 04:07:00' ?(删除该日期之前的日志) 在my.cnf 配置文件中[mysqld]中添加: 代码如下: expire_logs_day=3 ?设置日志的过期天数,过了指定的天数,会自动删除 MYSQL必读4.下面就是恢复操作了 MYSQL必读技巧1: MYSQL必读技巧2: MYSQL必读技巧3: MYSQL必读要想确定当前的二进制日志文件的文件名,输入下面的MySQL语句: MYSQL必读1. 指定恢复时间 MYSQL必读该命令将恢复截止到在 Cstop-date 选项中以DATETIME格式给出的日期和时间的所有数据.如果你没有检测到几个小时后输入的错误的SQL语句,可能你想要恢复后面发生的活动.根据这些,你可以用起使日期和时间再次运行mysqlbinlog: MYSQL必读2. 指定恢复位置 MYSQL必读该命令将在/tmp目录创建小的文本文件,将显示执行了错误的SQL语句时的SQL语句.你可以用文本编辑器打开该文件,寻找你不要想重复的语句.如果二进制日志中的位置号用于停止和继续恢复操作,应进行注释.用log_pos加一个数字来标记位置.使用位置号恢复了以前的备份文件后,你应从命令行输入下面内容: mysqlbinlog Cstop-position="368312" /var/log/mysql/mysql-bin.000001 | mysql -u root -pmypwd mysqlbinlog Cstart-position="368315"/var/log/mysql/mysql-bin.000001 | mysql -u root -pmypwd MYSQL必读上面的第1行将恢复到停止位置为止的所有事务.下一行将恢复从给定的起始位置直到二进制日志结束的所有事务.因为mysqlbinlog的输出包含每个SQL语句记录之前的SET TIMESTAMP语句,恢复的数据和相关MySQL日志将反应事务执行的原时间. 编程之家PHP培训学院每天发布《Mysql入门MySQL中的binlog相关命令和恢复技巧》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |