mysql设置停止二进制文件的操作_window下使用二进制文件对mysql数据库备份及恢复(再现用户操作)...
1,查看二進制日志文件是否啟用
mysql>show variables like 'log_bin';
如果未啟用,則啟用二進制文件(默認是關閉的 )
2,在mysql的配置文件[mysqld]區域加上如下配置
log-error=? #記錄錯誤日志
#log=???????? #記錄所有日志
#log-slow-queries=?? #記錄慢查詢日志
#log-update=???????????? #記錄更新
log-bin=????????????????????? #二進制日志
以上默認只啟用錯誤日志,和二進制日志,可以指定日志文件名(如log-bin=logBin.log)如果不指定文件名在使用默認文件名(主機名-bin-000001)
3.重啟mysql服務(net stop mysql 和 net start mysql)win7下以管理員身份運行command line客戶端
到此為止,二進制文件啟用成功
4,開始備份數據庫
mysqldump -uroot -p123456 database_name>d:/backup20070713.sql
5,恢復數據庫:刪除原有數據庫,建立數據庫,把備份數據庫導入。
mysqladmin -uroot -p123456 drop database_name
mysqladmin -uroot -p123456 create database_name
mysql -uroot -p123456 database_name
注:在導入備份數據庫前,database_name如果沒有,是需要創建的;而且與backup20070713.sql中數據庫名是一樣的才能導入。
6,使用二進制文件再現用戶操作,即恢復到想恢復的時刻(如不小心誤刪除,錯誤更新等....)
使用日志文件恢復數據庫必須要有一個數據庫備份(只要是在二進制日志文件功能開啟之后備份的就行)。恢復數據庫時,可以通過時間恢復,也可以通過操作點恢復。
(1)、通過時間恢復方法如下:
如果我在2011-04-02 00:00:00時刻開啟了二進制日志文件功能,并備份了數據庫文件。且在2011-04-02 12:00:00數據庫發生異常,需要恢復到2011-04-0210:00:00。則操作如下:
l???????用備份將數據庫回復到2011-04-0200:00:00時候的狀態。
l???????在命令行輸入如下命令:
mysqlbinlog--stop-date="2011-04-02 10:00:00" mysql安裝目錄\data\binary-log.000001? | mysql -u root –p
這樣,系統會自動執行從二進制日志有記錄開始截止到2011-04-02 10:00:00,用戶所做過的所有操作。與stop-date對應的,還有start-date屬性,可以設定執行記錄的開始時間。也可以兩個屬性都設置。
2、通過操作點恢復方法如下:
在命令行中輸入mysqlbinlog D:\binary-log.000003 > D:\log.txt,執行后打開log.txt,查看里面語句,可以發現:在每個操作之前,都會有一個獨特的編號,如下紅字顯示:
/*!*/;
# at 450/*編號450*/
#110402 15:31:50 server id 1?end_log_pos 529 ????? Query?????? thread_id=2??? exec_time=0???????? error_code=0
SET TIMESTAMP=1301729510/*!*/;
DROP TABLE `jwc`
此編號隨著操作數增多而變大。和時間一樣是一個標記,通過操作點恢復的語句如下:
mysqlbinlog --stop-position="450" mysql安裝目錄\data\binary-log.000001? | mysql -u root –p
這樣,系統會自動執行二進制日志中編號最低的語句到編號450語句。與stop-position對應的,還有start-position屬性,可以設定執行記錄的開始編號。
總結
以上是生活随笔為你收集整理的mysql设置停止二进制文件的操作_window下使用二进制文件对mysql数据库备份及恢复(再现用户操作)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux系统中socket错误码:EI
- 下一篇: mysql监控sql排名_监控数据库性能