今天給大家分享乙個windows下,
mysql
使用binlog
恢復表和資料的方法(自己也是了解一下bin-log的作用,大體思路是參考別人的文章,只是將一些細節完善一下,幫助大家自己做實驗更容易一些)
binlog主要兩大作用
1、高可用
2、資料恢復。
首先要開啟binlog日誌的功能:
進到這個目錄,"d:\mysql\mysql server 5.5\my.ini"
在my.ini的
[mysqld]
下面新增一行
log-bin = mysql-bin
,然後重啟
mysql
服務,就可以了。如下圖:
日誌儲存在路徑:
一、新建一張測試表test
create table if not exists test (
id int unsigned not null auto_increment ,
username varchar(3) not null default "老王" ,
primary key (`id`)
二、然後插入2條資料 ,查詢看看
insert into test values(1,'老李');
insert into test values(2,'老孫');
三、然後我們把資料備份到d盤
開啟windows的
cmd視窗 進入到
mysql
的bin
目錄:
cd d:\mysql\mysql server 5.5\bin
然後執行只備份test這張表的命令:
四、這時模擬誤操作(插入2條資料,然後刪除資料庫)
先插入insert into test values(3,'老張
');insert into test values(4,'老譚
再刪除truncate test;
五、這時,我們先用剛剛備份的test.sql檔案來恢復下資料(肯定只能恢復前兩條資料,因為我們是在後兩條資料插入之前備份的)
1.用mysql -u root -p root先登入
mysql
2.然後執行匯入
test.sql
的命令:
source d: (注
:如果有多個資料庫
,則使用」use 資料庫名
」選擇資料庫,再執行前面的語句
3. 然後在查詢下test表看下資料恢復過來沒有
正常資料恢復了,然後我們最後插入的那個老張,
老譚沒恢復成功。怎麼辦?只能用binlog了
。
六、剩餘的
兩條資料沒有恢復過來,我們使用mysql的
binlog
日誌來恢復
1.使用
sql語句:
show binlog events in 'mysql-bin.000001'; --
檢視binlog
內容記錄下開始位置和結束位置
2.然後進入到
mysql
的:c:\programdata\mysql\mysql server 5.5\data
cd c:\programdata\mysql\mysql server 5.5\data
3.用binlog
命令利用剛才查詢到的
開始位置
和結束位置
備份到d盤
mysqlbinlog --start-position=750--stop-position=1046mysql-bin.000001 > d:\\test1.sql
4.然後登入到
mysql
命令:mysql -uroot -proot
5.然後執行:
source d: (
記住要先選擇資料庫!這裡是用我們
binlog
備份的test1.sql
去恢復資料的
)最後在查詢下test表,發現資料已經恢復了
結束!
Win7下安裝iMac系統
首先是灰常激動啊,一下午的努力終於在自己華碩的筆記本上安裝了mac系統。先上乙個成果截圖 首先你要確定你的硬碟支援的是ahci,而不是ata。否則可能無法成功,成功率非常低 這樣的成功率低。安裝過程比較複雜。需要準備的物品 1 首先比較準備乙個win pe系統。防止寫入後c盤為不可活動區。系統無法啟...
Win7下清除Ubuntu系統
問題描述 裝了win7 和ubuntu 的雙系統,這兩天發現進 ubuntu 時候偶爾會出現載入不到登入頁面就死掉了,一直停在黑屏。強制關機後等待一會,再重新開機就可以登入。有時候甚至需要重啟 2 3次才能正常登入。網上有人說可能是螢幕解析度設定過高?這倒有可能,畢竟新買的 23寸螢幕,但也不至於這...
Win7 系統下進入Debug
在win7 64位系統下想使用debug工具,在cmd之後發現debug不是內部命令,這是因為系統本身不帶debug工具,我們可以通過dos 和 win7 32位的debug來實現。3.安裝dosbox 4.把debug.exe放在c盤以外的碟符 選擇放在d盤 5.開啟dosbox 6.輸入moun...