二進(jìn)制日志的文件的作用
mysql二進(jìn)制日志文件用來記錄所有用戶對(duì)數(shù)據(jù)庫(kù)操作,即記錄用戶對(duì)數(shù)據(jù)庫(kù)操作的sql語句。如果有此文件,當(dāng)數(shù)據(jù)庫(kù)發(fā)生意外時(shí),可以通過此文件查看到用戶在此文件記錄的時(shí)間段內(nèi)用戶所做的操作,再和數(shù)據(jù)庫(kù)備份配合使用,即可再現(xiàn)用戶操作,使數(shù)據(jù)庫(kù)恢復(fù)。
二進(jìn)制日志文件的弊端
二進(jìn)制日志文件開啟后,所有對(duì)數(shù)據(jù)庫(kù)操作的記錄均會(huì)被記錄到此文件,
所以,當(dāng)長(zhǎng)時(shí)間開啟之后,日志文件會(huì)變得很大,占用磁盤空間。
使用二進(jìn)制日志文件恢復(fù)數(shù)據(jù)庫(kù)
開啟日志文件
mysql默認(rèn)是不開啟日志文件的功能的,需要我們手動(dòng)開啟。操作如下:
1、 打開mysql安裝目錄/my.ini(windows系統(tǒng)是my.ini文件,linux是my.cnf文件)。
2、 找到[mysqld]這個(gè)標(biāo)簽,在此標(biāo)簽下面一行,添加語句:log-bin=binary-log。上面語句中,log-bin說明要開啟二進(jìn)制日志文件,binary-log是二進(jìn)制日志文件的名字。
(測(cè)試的時(shí)候我設(shè)置的:log-bin=d:/mysql_log/logbin_ouyang.log)
3、 重啟mysql服務(wù)。可以在mysql安裝目錄/data 文件夾下看到“binary-log.數(shù)字編號(hào)”文件,
如binary-log.000001。以后每重啟一次mysql服務(wù),都會(huì)重新生成二進(jìn)制日志文件,
文件名中的數(shù)字編號(hào)依次遞增。
(你的上一步給出的文件名,加了個(gè)序號(hào) 還有一個(gè)總的文件 index文件 如圖1:)

恢復(fù)數(shù)據(jù)庫(kù)
使用日志文件恢復(fù)數(shù)據(jù)庫(kù)必須要有一個(gè)數(shù)據(jù)庫(kù)備份(只要是在二進(jìn)制日志文件功能開啟之后備份的就行)。恢復(fù)數(shù)據(jù)庫(kù)時(shí),可以通過時(shí)間恢復(fù),也可以通過操作點(diǎn)恢復(fù)。
1、通過時(shí)間恢復(fù)方法如下:
如果我在2011-04-02 00:00:00時(shí)刻開啟了二進(jìn)制日志文件功能,并備份了數(shù)據(jù)庫(kù)文件。且在2011-04-02 12:00:00數(shù)據(jù)庫(kù)發(fā)生異常,需要恢復(fù)到2011-04-02 10:00:00。則操作如下:
l 用備份將數(shù)據(jù)庫(kù)回復(fù)到2011-04-02 00:00:00時(shí)候的狀態(tài)。
l 在命令行輸入如下命令:
mysqlbinlog --stop-date="你想要恢復(fù)的時(shí)間" 日志文件的目錄/binary-log.000001 | mysql -u root 主站蜘蛛池模板: 沙田区| 太湖县| 长沙县| 文登市| 荥经县| 钟祥市| 岫岩| 烟台市| 绥德县| 富蕴县| 确山县| 鱼台县| 楚雄市| 韶关市| 牡丹江市| 托克逊县| 鹿邑县| 民勤县| 信丰县| 且末县| 济阳县| 灵川县| 盈江县| 大连市| 洞头县| 宜都市| 柘城县| 铁岭市| 白城市| 平谷区| 南郑县| 扎囊县| 易门县| 同德县| 宣汉县| 河津市| 盱眙县| 新野县| 进贤县| 青阳县| 河源市|