<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        MYSQL自動備份策略的選擇_MySQL

        來源:懂視網 責編:小采 時間:2020-11-09 18:44:52
        文檔

        MYSQL自動備份策略的選擇_MySQL

        MYSQL自動備份策略的選擇_MySQL:bitsCN.com MYSQL自動備份策略的選擇 1、邏輯備份:使用mysql自帶的mysqldump工具進行備份。備份成sql文件形式。優點:最大好處是能夠與正在運行的mysql自動協同工作,在運行期間可以確保備份是當時的點,它會自動將對應操作的表鎖定,不允許其他用戶修改(只
        推薦度:
        導讀MYSQL自動備份策略的選擇_MySQL:bitsCN.com MYSQL自動備份策略的選擇 1、邏輯備份:使用mysql自帶的mysqldump工具進行備份。備份成sql文件形式。優點:最大好處是能夠與正在運行的mysql自動協同工作,在運行期間可以確保備份是當時的點,它會自動將對應操作的表鎖定,不允許其他用戶修改(只

        bitsCN.com

        MYSQL自動備份策略的選擇

        1、邏輯備份:使用mysql自帶的mysqldump工具進行備份。備份成sql文件形式。

        優點:最大好處是能夠與正在運行的mysql自動協同工作,

        在運行期間可以確保備份是當時的點,它會自動將對應操作的表鎖定,不允許其他用戶修改(只能訪問)。可能會阻止修改操作。sql文件通用方便移植。

        缺點:備份的速度比較慢。如果是數據量很多的時候。就很耗時間。如果數據庫服務器處在提供給用戶服務狀態,在這段長時間操作過程中,意味著要鎖定表(一般是讀鎖定,只能讀不能寫入數據)。那么服務就會影響的。

        備注:所謂的與mysql服務器能夠自動協同工作,實際上是指加參數來控制mysql服務器,比如鎖定所有表只能進行讀,不能進行寫操作。

        --lock-all-tables

        2、物理備份:直接拷貝mysql的數據目錄。缺點,你不能去操作正在運行的mysql服務器(在拷貝的過程中有用戶通過應用程序訪問更新數據,這樣就無法備份當時的數據)

        可能無法移植到其他機器上去。

        直接拷貝只適用于myisam類型的表。這種類型的表是與機器獨立的。但實際情況是,你設計數據庫的時候不可能全部使用myisam類型表。你也不可能:因為myisam類型表與機器獨立,方便移植,于是就選擇這種表,這并不是選擇它的理由。

        更多的情況是,你會根據業務特點(比如你需要支持事務機制就必須使用innodb),查詢速度和服務性能來選擇表類型的。

        必須保證表不被使用中。

        如果服務器在你則正在拷貝一個表時改變它,拷貝就失去意義。

        如果數據庫表在文件系統備份過程中被修改,進入備份的表文件主語不一致的狀態,而對以后的恢復表將失去意義。

        保證你的拷貝完整性的最好方法是:關閉服務器,拷貝文件,然后重啟服務器。

        或者是,要鎖定對應的表(對前端用戶造成訪問問題)。

        解釋直接拷貝文件,為什么不具備可移植性?

        mysqldump 產生可移植到其他機器、甚至具有不同硬件結構的機器上的文本文件。直接拷貝文件不能夠移植到其他機器上,除非要拷貝的表使用MyISAM 存儲格式。ISAM 表只能在具有相同硬件結構的機器之間進行拷貝。例如,將文件從S PARC 的Solaris 機器拷貝到Intel 的Solaris 機器(或者相反)是行不通的。由MySQL3.23 引進的MyISAM 表存儲格式可以解決這個問題,因為該格式與機器獨立。因此,如果以下兩個條件都滿足的話,直接拷貝文件可以移植到具有不同硬件結構的機器上:即另一臺機器上也必須運行MySQL3.23 以上的版本,并且文件必須表示成MyISAM 表,而不是ISAM 表。

        3、雙機熱備份。

        mysql數據庫沒有增量備份的機制。當數據量太大的時候備份是一個很大的問題。還好mysql數據庫提供了一種主從備份的機制(也就是雙機熱備)

        優點:適合數據量大的時候。現在明白了。大的互聯網公司對于mysql數據備份,都是采用熱機備份。搭建多臺數據庫服務器,進行主從復制。

        主從復制經常遇到的問題就是,如何保證數據不堵塞,不延遲。這個問題還是可以容忍的,有一些方案可以改善。畢竟有得有失的。這已經是很省心省力的方式了。

        ================================================

        我目前應該使用什么樣的備份策略的權衡:

        物理備份,恢復快,當然最好是存儲在一個機器上。我現在是用物理備份還是邏輯備份為好呢?

        考慮到以后會遷移平臺。為了保證通用性。恢復速度1分鐘左右的差距我是可以容忍的。所以我為了跨平臺,我更加愿意使用邏輯備份。存儲sql文件形式。

        雙熱機備份方式,目前硬件沒有多個。技術人員有限,需要人力去維護,比較麻煩。所以排除在外。

        方案:

        1、總體策略:寫個定時執行任務。定時在晚上或凌晨自動備份(考慮數據庫服務器在運行中不能停機)

        代碼中做成備份成功后,把以前的刪掉。避免很多數據占據磁盤。

        2、考慮到初期數據量這么小。使用mysqldump進行備份吧。設置在凌晨幾點(4-6點這個時候基本上沒什么人訪問)的時候自動備份。

        3、使用邏輯備份方式:恢復速度1分鐘左右的差距我是可以容忍的。所以我為了跨平臺,我更加愿意使用邏輯備份。存儲sql文件形式。

        4、每天都進行備份。由于是在凌晨的時候mysqldump去鎖定,訪問數據庫服務器。對服務器幾乎沒什么影響。所以每天都可以備份。每天都一個sql文件。那么將會很多文件。

        所以,每次備份成功后。刪除以前的文件。保留最近一個星期的備份sql文件。

        備份工具的路徑:/usr/bin/mysqldump

        備份數據保存路徑:/data/backdata/

        5、備份腳本的編寫

        思路:

        5.1 在shell腳本中調用mysqldump生成備份文件(這個工具可以生成sql文件到磁盤上去)

        5.2 為了方便以后查找。每次備份的記錄記錄成日志形式。幾點進行了備份操作,生成了什么文件名稱。這樣可以方便以后查閱哪天是否沒有成功備份

        刪除的文件作為日志信息也記錄下來。

        5.3 讓linux下的crontab進程調用腳本執行。

        命令:crontab -e

        打開的文件中加入代碼:0 05 * * * 腳本的路徑/mysqlback.sh

        mysqlback.sh的內容:

        # /bin/bashDB_NAME="****"DB_USER="****"DB_PASS="****"BIN_DIR="/usr/bin"BACK_DIR="/data/backdata"DATE="mysql-`date +'%Y%m%d-%H:%M:%S'`"LogFile="$BACK_DIR"/dbbakup.log #日志記錄保存的目錄BackNewFile=$DATE.sql$BIN_DIR/mysqldump --opt --force -u$DB_USER -p$DB_PASS $DB_NAME > $BACK_DIR/$DATE.sqlecho -----------------------"$(date +"%y-%m-%d %H:%M:%S")"----------------------- >> $LogFile echo createFile:"$BackNewFile" >> $LogFile#find "/data/backdata/" -cmin +1 -type f -name "*.sql" -print > deleted.txtfind "/data/backdata/" -ctime +7 -type f -name "*.sql" -print > deleted.txtecho -e "delete files:/n" >> $LogFile #循環刪除匹配到的文件cat deleted.txt | while read LINEdo rm -rf $LINE echo $LINE>> $LogFiledoneecho "---------------------------------------------------------------" >> $LogFile


        bitsCN.com

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        MYSQL自動備份策略的選擇_MySQL

        MYSQL自動備份策略的選擇_MySQL:bitsCN.com MYSQL自動備份策略的選擇 1、邏輯備份:使用mysql自帶的mysqldump工具進行備份。備份成sql文件形式。優點:最大好處是能夠與正在運行的mysql自動協同工作,在運行期間可以確保備份是當時的點,它會自動將對應操作的表鎖定,不允許其他用戶修改(只
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 精品亚洲成在人线AV无码| 国产黄色片在线免费观看| 亚洲色偷偷偷鲁综合| 一区二区在线免费视频| 国产乱弄免费视频| 亚洲日本在线观看视频| 九九全国免费视频| 亚洲日韩av无码| 无码人妻丰满熟妇区免费| 亚洲综合久久1区2区3区| 在线观看免费av网站| 亚洲精品美女久久久久| 国产成人精品免费视频大全麻豆| 亚洲一区在线免费观看| 妞干网在线免费观看| 日本在线观看免费高清| 亚洲中文字幕无码永久在线| 国内精品一级毛片免费看| 亚洲欧洲综合在线| 日韩在线a视频免费播放| 国产99久久久国产精免费| 亚洲av之男人的天堂网站| 无遮免费网站在线入口| 色窝窝亚洲av网| 亚洲日本乱码在线观看| 亚洲黄色免费在线观看| 337P日本欧洲亚洲大胆精品| 77777亚洲午夜久久多人| 99久久99久久精品免费观看| 亚洲小说图区综合在线| 在线亚洲人成电影网站色www| 2021在线观看视频精品免费| 亚洲人成未满十八禁网站| 国产亚洲美女精品久久久| 最近中文字幕mv免费高清视频8| 亚洲AV无码一区二区三区网址| 精品国产日韩亚洲一区| 嫖丰满老熟妇AAAA片免费看| 永久免费精品影视网站| 亚洲人成影院在线高清| 亚洲人成伊人成综合网久久久 |