最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql備份與恢復詳解

 更新時間:2013年06月14日 09:12:27   作者:  
本篇文章是對mysql的備份與恢復進行了詳細的分析介紹,需要的朋友參考下

MYSQL的備份有多少種,請簡要的描述:
數(shù)據(jù)庫分邏輯備份\物理備份
物理備份又分冷備和熱備

A.直接拷貝數(shù)據(jù)文件到安全地方進行保存
B.使用MYSQLHOSTCOPY備分數(shù)據(jù)
C.使用MYSQLDUMP備份數(shù)據(jù)
D.使用MYSQL的同步復制,實現(xiàn)數(shù)據(jù)實時數(shù)據(jù)同步備份

常用的邏輯備份主要就是兩種:一種是將數(shù)據(jù)生成為可以完全重現(xiàn)當前數(shù)據(jù)庫中的數(shù)據(jù)的insert語句,另一種是將數(shù)據(jù)通過邏輯備份軟件,將數(shù)據(jù)庫表的數(shù)據(jù)以特定分隔符進行分割后記錄在文本中。

對于第一種生成insert語句來說我們可以直接使用mysql自帶的工具mysqldump來完成。這種方式不好之處在于可能導致數(shù)據(jù)的不一致,或是不完整。解決辦法:一個是通過在數(shù)據(jù)庫系統(tǒng)中加入寫入鎖,只提供數(shù)據(jù)庫的查詢服務(wù);第二種是對于支持事務(wù)的存儲引擎來說,INNODB BDB可以通過將整個備份過程控制在一個事務(wù)中,來達到備份數(shù)據(jù)的一致性和完整性;并且可以不用影響到數(shù)據(jù)庫的正常運行。
恢復方式則是通過mysql<backup.sql直接運行的。
第二種直接生成數(shù)據(jù)格式。占用的空間小,數(shù)據(jù)格式清晰。可是沒有數(shù)據(jù)庫結(jié)構(gòu)的腳本。不容易控制
實現(xiàn)方式:通過select******* to outfile from***命令來實現(xiàn)?;謴头绞骄褪峭ㄟ^,load data infile和mysqlimport命令來做。

這一過程相當?shù)膹碗s需要實時的進行恢復測試,保證備份數(shù)據(jù)是可用的
數(shù)據(jù)庫的物理備份,主要的對象是數(shù)據(jù)庫的物理數(shù)據(jù)文件,日志文件以及配置文件等。

物理數(shù)據(jù)文件有哪些呢?
一是日志文件6大類:錯誤日志error Log、二進制日志binary Log、更新日志 update log、查詢?nèi)罩?query log、慢查詢?nèi)罩?slow query log、innodb的redo日志。
二是數(shù)據(jù)文件?對于myisam來說的話,.frm表結(jié)構(gòu)信息.myd數(shù)據(jù)信息.myi數(shù)據(jù)的索引信息。對于Innodb來說的話.ibd文件(獨享表空間)和.ibdata(共享表空間)文件。
三是replication文件?master.info存儲在slave端的數(shù)據(jù)目錄下,存放了slave和master的相關(guān)信息,relay log和 relay log index主要存儲了I/O進程從Master端讀取到的binary log信息,然后由slave端的SQL線程從該binary log中讀取解析過的日志信息,轉(zhuǎn)化成master所能執(zhí)行的query語句。index則是存放binarylog的路徑也就是目錄文件。
四是系統(tǒng)文件?如my.cnf、pid文件是mysqld應(yīng)用程序中的一個進程文件存放自己的進程id還有就是socket文件它只有在linux下才有的,可以不通過tcp/ip網(wǎng)絡(luò)協(xié)議直接連接mysql

如果是做冷備的話,直接復制所有的數(shù)據(jù)文件和日志文件到備份集存放的地方,

熱備的方法針對不多的數(shù)據(jù)庫有不同的方案
對于myisam存儲引擎來說,做法就是給數(shù)據(jù)庫表加鎖來阻止寫操作,可以直接復制物理文件,或者也可以通過mysql專門的mysqlhotcopy(原理就是現(xiàn)鎖住表,然后進行操作)程序來完成相應(yīng)的備份任務(wù)。
flush tables with read lock
cp -R test /tmp/backup/test
unlock tables;

innodb數(shù)據(jù)庫引擎來說,有一款商業(yè)軟件ibbackup,在線物理備份功能。還有一款開源的工具xtrabackup,
如果在備份過程中,把INNODB數(shù)據(jù)文件備份完成后,會鎖住整個庫,并開始復制MYISAM等非事務(wù)引擎的數(shù)據(jù)和.frm;所以如果你擁有比較多的MYISAM表,鎖庫的時候會持續(xù)很長。如果是在主庫上運行,千萬注意。

同樣也只能通過xtrabackup進行增量的備份,其實這一工具只是備份innobd的日志信息。

4 xtrabackup/ibbackup
xtrabackup --backup --datadir=/var/lib/mysql/ --target-
dir=/data/backups/mysql/

xtrabackup --backup  --defaults-file=/etc/my.cnf --target-
dir=/data/backups/mysql/
mysql的備份方式

1.mysqldump
效率比較低,備份和還原的速度都很慢,任何數(shù)據(jù)插入和更新操作都會被掛起

2.mysqlhotcopy
mysqlhotcopy 是專門針對myisam 數(shù)據(jù)表進行備份,備份的過程中,任何數(shù)據(jù)插入和更新操作都會被掛起

3.準備一臺從服務(wù)器,專門做備份(master-slave方式)

4.xtrabackup 是 percona 的一個開源項目,可熱備份innodb ,XtraDB,MyISAM(會鎖表)
 
Xtrabackup有兩個主要的工具:xtrabackup、innobackupex
xtrabackup只能備份InnoDB和XtraDB兩種數(shù)據(jù)表,而不能備份MyISAM數(shù)據(jù)表
innobackupex-1.5.1則封裝了xtrabackup,是一個腳本封裝,所以能同時備份處理innodb和myisam,但在處理myisam時需要加一個讀鎖
Øxtra備份原理
記住開始時候的LSN號,然后開始拷備文件,同時運
行一個后臺進程監(jiān)視重做日志,并將變化拷備下來到
xtrabackup_logfile。

innobackupex可以備份myisam表和frm文件。當
xtrabackup結(jié)束后,執(zhí)行flush tables with read lock,避
免數(shù)據(jù)更改,然后刷新所有myisam表到磁盤??絺浣Y(jié)
束后,釋放鎖。

mysqlbinlog也是一個恢復工具,是基于時間點來處理二進制文件的

Ø備份:直接拷備

Ø還原:
ü時間點還原:mysqlbinlog --stop-date="2005-04-20 9:59:59"
/var/log/mysql/bin.123456 | mysql -u root –pmypwd

mysqlbinlog --start-date="2005-04-20 10:01:00"
/var/log/mysql/bin.123456| mysql -u root –pmypwd

Ø日志點還原:
mysqlbinlog --stop-position="368312" /var/log/mysql/bin.123456 \
| mysql -u root -pmypwd
mysqlbinlog --start-position="368315" /var/log/mysql/bin.123456 \
| mysql -u root -pmypwd \

LVM是 Logical Volume Manager(邏輯卷管理)的簡寫,它是Linux環(huán)境下對磁盤分區(qū)進行管理的一種機制。
LSN定義:

日志序號
日志序號 (LSN) 標識特定日志文件記錄在日志文件中的位置。

LSN 由 DB2® 產(chǎn)品中的許多組件用來維護數(shù)據(jù)庫一致性和完整性。除其他作用外,LSN 還對于分區(qū)數(shù)據(jù)庫環(huán)境中的落實和回滾操作、崩潰和前滾恢復以及數(shù)據(jù)庫操作同步起非常重要的作用。

日志文件中 LSN 的增長率與數(shù)據(jù)庫活動直接相關(guān)聯(lián)。也就是說,隨著事務(wù)發(fā)生并且條目被寫入日志文件,LSN 會不斷增大。數(shù)據(jù)庫中的活動越多,LSN 增長得越快。

日志序號的上限

在 DB2 V9.5 和較早版本中,日志序號 (LSN) 是 6 字節(jié)數(shù)字。從 FP3 開始,LSN 的范圍在 0x0000 0000 0000(首次創(chuàng)建數(shù)據(jù)庫時)到 0xFFFF 0000 0000(約 256 太字節(jié))之間。在 FP3 之前,上限為 0xFFFF FFFF FFFF。隨著記錄被添加到日志文件中,LSN 在數(shù)據(jù)庫生命期不斷增長。

相關(guān)文章

  • MySQL 覆蓋索引的優(yōu)點

    MySQL 覆蓋索引的優(yōu)點

    當索引包含了所有查詢的數(shù)據(jù)時,這個索引就稱之為覆蓋索引。覆蓋索引能夠成為一個非常有力的工具并且能夠顯著改善性能,本文將具體講述覆蓋索引的優(yōu)點
    2021-05-05
  • MySQL多版本并發(fā)控制MVCC詳解

    MySQL多版本并發(fā)控制MVCC詳解

    這篇文章主要介紹了MySQL多版本并發(fā)控制MVCC詳解,MVCC是通過數(shù)據(jù)行的多個版本管理來實現(xiàn)數(shù)據(jù)庫的并發(fā)控制,這項技術(shù)使得在InnoDB的事務(wù)隔離級別下執(zhí)行一致性讀操作有了保證
    2022-07-07
  • update.where無索引導致MySQL死鎖問題解決

    update.where無索引導致MySQL死鎖問題解決

    這篇文章主要為大家介紹了update.where無索引導致MySQL死鎖問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • 一文教你在windows中如何同時安裝兩個不同版本的Mysql

    一文教你在windows中如何同時安裝兩個不同版本的Mysql

    在項目中可能會用到多個版本的Mysql數(shù)據(jù)庫,本文將和大家介紹一下如何在本機已安裝了一個MySQL?5.7.38的情況下,再安裝一個mysql?8.0版本吧
    2025-03-03
  • 關(guān)于for update和lock in share mode的區(qū)別及說明

    關(guān)于for update和lock in share mode的區(qū)別及說明

    這篇文章主要介紹了關(guān)于for update和lock in share mode的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 詳解CentOS6.5 安裝 MySQL5.1.71的方法

    詳解CentOS6.5 安裝 MySQL5.1.71的方法

    這篇文章主要介紹了CentOS6.5 安裝 MySQL5.1.71的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-12-12
  • mysql8.0.21安裝教程圖文詳解

    mysql8.0.21安裝教程圖文詳解

    這篇文章主要介紹了mysql8.0.21安裝教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • MySQL 數(shù)據(jù)庫鐵律(小結(jié))

    MySQL 數(shù)據(jù)庫鐵律(小結(jié))

    這篇文章主要介紹了MySQL 數(shù)據(jù)庫鐵律,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • MySQL無法輸入中文字符問題的解決辦法

    MySQL無法輸入中文字符問題的解決辦法

    MySQL無法輸入中文的問題大多是由于字符集不匹配所導致的,下面這篇文章主要給大家介紹了關(guān)于MySQL無法輸入中文字符問題的解決辦法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • MySQL 常用命令

    MySQL 常用命令

    MySQL 常用命令...
    2006-12-12

最新評論

深水埗区| 农安县| 武夷山市| 陇川县| 温宿县| 鹰潭市| 万州区| 西宁市| 湾仔区| 石棉县| 大英县| 荔浦县| 库尔勒市| 玉山县| 黄梅县| 绥芬河市| 浏阳市| 芮城县| 太保市| 普兰店市| 大竹县| 中山市| 东乡县| 宝山区| 紫云| 时尚| 西昌市| 随州市| 饶阳县| 社旗县| 宁武县| 安陆市| 玛多县| 成安县| 博爱县| 平湖市| 长沙市| 武乡县| 逊克县| 叙永县| 昌都县|