Mysql bin-log日誌及資料恢複

來源:互聯網
上載者:User

一、 Mysqlbin-log 日誌

1.開啟Mysqlbin-log 日誌

#vi/etc/my.cnf

[client]

#password =your_password

port =3306

socket =/tmp/mysql.sock

default-character-set-utf8

.......

[mysqld]

port= 3306

socket= /var/lib/mysql/mysql.sock

log-slow-queries=mysql-slowlog

log-error=mysql.err

log=mysql.log

log-bin=mysql-bin//刪除#符號


2.查看二進位檔案mysql-bin.******)

#cd/usr/local/mysql/bin/ && ls


3.查看mysqbinlog日誌是否開啟

mysql>showvariables like “%log-bin%;


4.Mysqlbin-log有關的日誌操作

mysql>flushlogs;//此時就會多一個最新的bin-log日誌

mysql>showmaster status;//查看最後一個bin日誌

mysql>resetmaster;//清空所有的bin-log日誌

mysql>mysqlbinlog–no-defaults mysql-bin.******|more//查看bin-log日誌






二、Mysqlbin-log日誌恢複


1.備份現有資料()

#mysqldump-uroot -p123456 test -l -F > /tmp/test.sql //-F即flushlogs,-l即讀鎖,在備份時使用者不可進行寫操作


2.第一次恢複操作

#mysql -uroot-p123456 test -v(可選)-f < /tmp/test.sql


3.第二次從bin-log日誌恢複操作

#/usr/local/mysql/bin/mysqlbinlog--no-defaults --stop-position=”position_num” mysql-bin.****** |/usr/local/mysql/bin/mysql -uroot -p123456 //position是用來記錄增、刪、改操作的



三、一次完整的Mysqlbin-log日誌恢複過程執行個體

1).建立一個表:

mysql>usetest;

mysql>createtable t1(id int);

mysql>showtables;


2).添加兩行資料:

mysql>insertinto t1 values(1);

mysql>insertinto t1 values(2);

mysql>select *from t1;


3).備份現有資料(09:30):

#mysqldump -uroot-p123456 test -l -F > /tmp/test.sql


4).在備份完後再添加三行資料記錄):

mysql>insertinto t1 values(3);

mysql>insertinto t1 values(4);

mysql>insertinto t1 values(5);


5).此時突然資料庫損損壞或者認為刪除:

mysql>droptable t1;


6).用已備份的test.sql來恢複資料庫:

#mysql -uroot-p123456 test < test.sql


7).bin-log日誌恢複:

#/usr/local/mysql/bin/mysqlbinlog–no-defaults mysql-bin.000006|more//查看bin-log日誌,在我的虛力機上bin-log日誌從mysql-bin.000005開始

#/usr/local/mysql/bin/mysqlbinlog--no-defaults --stop-position=”272” mysql-bin.000006 |/usr/local/mysql/bin/mysql -uroot -p123456 //恢複bin-log日誌





本文出自 “mhf_zzjc” 部落格,請務必保留此出處http://1meir3a.blog.51cto.com/6176787/1298413

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.