Mysql二進制日志管理_第1頁
Mysql二進制日志管理_第2頁
Mysql二進制日志管理_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、mysql 二進制日志管理mysql 二進制日志是以事務安全的方式包含更新日志中可用的所有信息。它包含了所有更新了數據或者已經潛在更新了數據(例如,沒有匹配任何行的一個delete )的所有語句。語句以“事件”的形式保存,它描述數據更改。運行服務器時若啟用二進制日志則性能大約慢1%。但是,二進制日志的好處,即用于恢復并允許設置復制超過了這個小小的性能損失。打開 mysql二進制日志編輯 mysql 配置文件: /etc/f (windows 下是 my.ini) ,將“ bin-log”一行前面的注釋去掉,默認是:#log-bin=mysql-bin , (沒有的話,自己手動添加一行),等號后

2、面的mysql-bin 是生成日志的路徑和文件名,這里表示在mysql 的 data 目錄下生成,你也可以自己改路徑,如log-bin=/data/mysql/log/mysql-bin。還可以設置以下選項:binlog-do-db= db_name#將 db_name 更新記錄到二進制日志中binlog-ignore-db= db_name #不將 db_name 更新保存到二進制日志中max_binlog_size= 104857600 #每個日志文件最大100m 保存,重啟mysql。重啟后看到有生成類似mysql-bin.000001 、 mysql-bin.000002 的文件就說明

3、已經成功打開了二進制日志。管理二進制日志文件1、查看當前已有的二進制日志文件,執行sql“ show binlog events g”或“ show master logs ” :mysqlshow binlog events g; mysqlshow master logs;2、清除二進制日志文件:mysqlpurge master|binary logs to log_name;mysqlpurge master|binary logs before datetime;例如:mysqlpurge master logs to mysql-bin.000001;mysqlpurge mast

4、er logs before 2010-06-20 13:00:00; 另一種清除二進制日志方法:mysql flush logs;mysql reset master;從二進制日志文件恢復數據mysqlbinlog:用于處理二進制日志文件的實用工具;可以用它來恢復從指定的時間點開始 (例如,從你最后一次備份)直到現在或另一個指定的時間點的數據。使用方法: mysqlbinlog options log-files 。mysqlbinlog 有很多選項,具體可以使用mysqlbinlog help 查看 : 如: binmysqlbinlog -help (如果沒有將mysqlbinlog設置

5、成系統命令,linux下可以用find / -name mysqlbinlog搜索出mysqlbinlog的位置,windows下在mysql安裝目錄的bin文件夾下)如果執行mysqlbinlog時出現類似unknown variable default-character-set=utf8錯誤提示,是因為在f(或my.ini)中的client選項組中添加了default-character-set=utf8,可以有兩種辦法解決這個bug:第一種,執行時加上-no-defaults選項;如:mysqlbinlog-no-defaults-help。第二種,在使用mysqlbinlog工具時把

6、f(或my.ini)中client選項組中的default-character-set=utf8注釋掉。注意要記得在不在使用mysqlbinlog工具時取消這個注釋。部分常用選項說明:-start-datetime=datetime#從二進制日志中第1 個日期時間等于或晚于datetime參量的事件開始讀取,格式應符合datetime或timestamp數據類型。datetime值是相對于運行mysqlbinlog的機器上的本地時區時間。-stop-datetime=datetime#從二進制日志中第1 個日期時間等于或晚于datetime參量的事件停止讀取,描述同start-datetime

7、 。-start-position=n #從二進制日志中第1 個位置等于n參量時的事件開始讀。-stop-position=n#從二進制日志中第1 個位置等于n參量時的事件停止讀。示例:、從 mysql-bin.000001 中恢復從2010-01-0101:00:00開始之后的數據:binmysqlbinlog -start-datetime=2010-01-0101:00:00 mysql-bin.000001 | mysql -uroot -proot 、從 mysql-bin.000001 中恢復從2010-01-0101:00:00到 2010-01-0201:00:00之間的數據:

8、binmysqlbinlog -start-datetime=2010-01-01 01:00:00-stop-datetime=2010-01-0201:00:00mysql-bin.000001|mysql -uroot -proot 、從多個日志文件中恢復數據:bin mysqlbinlog mysql-bin.000001 mysql-bin.000002 | mysql -uroot -proot 或binls -t -r -1 mysql-bin.* | xargs mysqlbinlog| mysql -uroot -proot 、其他方式恢復:bin mysqlbinlog mysql-bin.000001 /temp/binlog.sql #符號 表示創建新的文件, 如果原來已經存在,則會覆蓋掉原文件。bin mysqlbinlog -stop-dateti

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論