RM新时代国际平台

  • <div id="r605l"></div>
      1. <th id="r605l"></th>
      2. Mysql數(shù)據(jù)恢復(fù)

        上一篇講了Mysql當前支持的備份方式,那么,有了備份文件,怎么將數(shù)據(jù)庫進行恢復(fù)?

        1.對當前的整個mysql實例進行備份,不備份的話,一切后果請自行負責哦

        2.進入mysql,刪除mysql,test2,world三個數(shù)據(jù)庫

        刪庫跑路嘍,[壞笑]

        3.不用怕,此時使用備份的all-database.sql進行恢復(fù)

        發(fā)現(xiàn)刪掉的數(shù)據(jù)庫又回來了

        擴展:

        37977d80db7b0ffef77f0262880cb801.jpg

        1.你也可以對某個數(shù)據(jù)庫或者表進行類似操作,但是,在對庫進行恢復(fù)操作時,需要先手動創(chuàng)建庫,否則系統(tǒng)會報錯。此處不再進行演示,請參考以下命令:

        mysql -uroot -p 數(shù)據(jù)庫名< C:/Users/backup/數(shù)據(jù)庫名.sql

        2.此外,你還可以使用Mysql自帶命令進行數(shù)據(jù)恢復(fù)

        語法結(jié)構(gòu)(需要進入mysql):

        source path/file_name.sql

        3.mysqldump本身也支持導(dǎo)出文本文件的備份,使用mysqlimport進行導(dǎo)入文本備份文件,此處不再進行演示

        請按照圖示步驟理解

        目前熱點數(shù)據(jù)恢復(fù)支持的文件格式為.text,.csv,.xlsx,.xls。其他的暫不支持,切記你要導(dǎo)入的表一定預(yù)先存在數(shù)據(jù)庫中的,其效率很高,要比insert語句快20倍以上

        1,開啟binlog,修改配置文件參數(shù)

        log-bin=C:/Users/backup/mysql-bin #日志文件存放路徑

        max_binlog_size=100M 單個文件大小

        binlog-format=row 日志生成格式

        2.小編本機有個test庫及一張user表,已知有4條數(shù)據(jù)

        3.使用mysqldump對test進行全量備份

        mysqldump -uroot -p test > c:/Users/backup/user.sql

        生成的對應(yīng)的sql文件:

        4.此時插入兩條新數(shù)據(jù)

        生成新的binlog

        truncate user表,用以模仿突發(fā)問題(數(shù)據(jù)庫崩潰,或者誤刪等),user中數(shù)據(jù)沒了

        5.由于預(yù)先對test進行了全量備份,所以此時需要恢復(fù)user表中的數(shù)據(jù)

        mysql -uroot -p test < c:/Users/backup/user.sql

        再次查詢,發(fā)現(xiàn)user表中恢復(fù)了部分數(shù)據(jù),但剛剛插入的2條卻找不到

        6.使用binlog恢復(fù)5.6條數(shù)據(jù)

        由于我之前flush一次log(非演示中),所以,我的最新一次的log應(yīng)為:mysql-bin.000002

        此時,我們只要使用這個文件進行恢復(fù)數(shù)據(jù)就OK了

        此時查看user表中數(shù)據(jù)

        數(shù)據(jù)恢復(fù)成功

        7.同時mysqlbinlog支持對postion的恢復(fù)

        例如,我再恢復(fù)一次第六條的數(shù)據(jù),首先我得知道第6條數(shù)據(jù)在mysql-bin.000002的起始位置和結(jié)束位置.

        1>你可以使用如下命令查看mysql-bin.000002的內(nèi)容

        查看binlog內(nèi)容

        最后一條插入的起始1736和結(jié)束位置1830

        2>你也可以將binlog導(dǎo)出為.txt文件進行查看

        查看.txt文件

        起始位置1736,結(jié)束位置1830

        3>利用binlog postion恢復(fù)第6條數(shù)據(jù)

        利用position恢復(fù)數(shù)據(jù)

        4>查看user表數(shù)據(jù)

        由于之前就已經(jīng)恢復(fù)了5.6條,再次執(zhí)行,即插入一條新數(shù)據(jù)

        擴展:

        1.show master status; 可以產(chǎn)看當前binlog文件和字節(jié)碼索引的位置

        2.show binary logs; 查看所有binlog文件

        3.show binlog events 查看mysql-bin.000001所有事件,也可以找到時間postion的起始和結(jié)束位置索引

        4.show binlog events in 'mysql-bin.000002'; 查看mysql-bin.000002所有事件,也可以找到時間postion的起始和結(jié)束位置索引


        下一篇:MySQL數(shù)據(jù)恢復(fù)的九把瑞士軍刀
        RM新时代国际平台
      3. <div id="r605l"></div>
          1. <th id="r605l"></th>
          2. <div id="r605l"></div>
              1. <th id="r605l"></th>
              2. 新时代RM|国际平台 新时代软件下载 RM新时代官网网址 rm新时代是正规平台 新时代rm平台入口