方案一:mysqldump全備份+日志增量備份
創(chuàng)新互聯(lián)建站服務(wù)項目包括松江網(wǎng)站建設(shè)、松江網(wǎng)站制作、松江網(wǎng)頁制作以及松江網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,松江網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到松江省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1, mysqldump備份方案:
周一凌晨3點 全備
周二到周日凌晨3點增量備份
2, 備份步驟
(1) 創(chuàng)建備份目錄,備份腳本存放目錄
Shell mkdir /usr/mysqlbackup;
Shell chmod 755 /usr/mysqlbackup;
Shell mkdir /usr/mysqlbackup/daily;
Shell chmod 755 /usr/mysqlbackup/daily;
Shell mkdir /usr/script;
Shell chmod 777 /usr/script/*.sh
(2) 啟用二進制日志
如果日志沒有啟開,必須啟用binlog,要重啟mysqld,首先,關(guān)閉mysqld,打開/etc/my點吸煙 f,加入以下幾行:
[mysqld]
log-bin
然后重新啟動mysqld,會產(chǎn)生hostname-bin.000001以及hostname-bin.index,前面的日志文件是記錄所有對數(shù)據(jù)的更新操作,后面的文件是存儲所有二進制文件的索引,不能輕易被刪除。
(3) 全備份,增量備份。
詳細見mysqlFullBackup.sh、mysqlDailyBackup.sh腳本(請注意腳本里面的備份目錄、mysql軟件安裝目錄、壓縮文件名以及用戶名密碼,如有不符,請修改)。
下面是部分shell上單個手動執(zhí)行的測試命令。
Shell /usr/local/mysql/bin/mysqldump -uroot -pnYuIman25040slave201012301124 --no-create-info=FALSE --order-by-primary=FALSE --force=FALSE --no-data=FALSE --tz-utc=TRUE --flush-privileg
es=FALSE --compress=FALSE --replace=FALSE --insert-ignore=FALSE --extended-insert=TRUE --quote-names=TRUE --hex-blob=TRUE --complete-insert=FALSE --add-locks=TRUE --port=3306 --d
isable-keys=TRUE --delayed-insert=FALSE --create-options=TRUE --delete-master-logs=FALSE --comments=TRUE --default-character-set=utf8 --max_allowed_packet=1G --flush-logs=FALSE -
-dump-date=TRUE --lock-tables=TRUE --allow-keywords=FALSE --events=FALSE --single-transaction=TRUE --routines --all-databases /backup/mysql/full/mysql_20110104_195546.sql
(4) 設(shè)置crontab任務(wù),每天執(zhí)行備份腳本
shell crontab –e
#每個星期日凌晨3:00執(zhí)行完全備份腳本
#周一到周六凌晨3:00做增量備份
0 3 * * 1-6 /root/MySQLBackup/mysqlDailyBackup.sh /dev/null 21
(5) 清除舊的備份文件。
每天去看查看下備份磁盤空間,刪除舊的備份壓縮文件。
1、還好MySQL數(shù)據(jù)庫提供了一種主從備份的機制,其實就是把主數(shù)據(jù)庫的所有的數(shù)據(jù)同時寫到備份數(shù)據(jù)庫中。實現(xiàn)MySQL數(shù)據(jù)庫的熱備份。
2、要想實現(xiàn)雙機的熱備首先要了解主從數(shù)據(jù)庫服務(wù)器的版本的需求。要實現(xiàn)熱備MySQL的版本都要高于3.2,還有一個基本的原則就是作為從數(shù)據(jù)庫的數(shù)據(jù)庫版本可以高于主服務(wù)器數(shù)據(jù)庫的版本,但是不可以低于主服務(wù)器的數(shù)據(jù)庫版本。
3、設(shè)置主數(shù)據(jù)庫服務(wù)器: a.首先查看主服務(wù)器的版本是否是支持熱備的版本。然后查看my點吸煙 f(類Unix)或者my.ini(Windows)中MySQLd配置塊的配置有沒有l(wèi)og-bin(記錄數(shù)據(jù)庫更改日志),因為MySQL的復(fù)制機制是基于日志的復(fù)制機制,所以主服務(wù)器一定要支持更改日志才行。然后設(shè)置要寫入日志的數(shù)據(jù)庫或者不要寫入日志的數(shù)據(jù)庫。這樣只有您感興趣的數(shù)據(jù)庫的更改才寫入到數(shù)據(jù)庫的日志中。 server-id=1 //數(shù)據(jù)庫的id這個應(yīng)該默認是1就不用改動 log-bin=log_name //日志文件的名稱, //這里可以制定日志到別的目錄 如果沒有設(shè)置則默認主機名的一個日志名稱 binlog-do-db=db_name //記錄日志的數(shù)據(jù)庫 binlog-ignore-db=db_name //不記錄日志的數(shù)據(jù)庫以上的如果有多個數(shù)據(jù)庫用","分割開 然后設(shè)置同步數(shù)據(jù)庫的用戶賬號 MySQL GRANT REPLICATION SLAVE ON *.* - TO 'repl'@'%.mydomain點抗 ' IDENTIFIED BY 'slavepass';4.0.2以前的版本, 因為不支持REPLICATION 要使用下面的語句來實現(xiàn)這個功能 MySQL GRANT FILE ON *.* - TO 'repl'@'%.mydomain點抗 ' IDENTIFIED BY 'slavepass';設(shè)置好主服務(wù)器的配置文件后重新啟動數(shù)據(jù)庫 b.鎖定現(xiàn)有的數(shù)據(jù)庫并備份現(xiàn)在的數(shù)據(jù) 鎖定數(shù)據(jù)庫 MySQL FLUSH TABLES WITH READ LOCK;備份數(shù)據(jù)庫有兩種辦法一種是直接進入到MySQL的data目錄然后打包你需要備份數(shù)據(jù)庫的文件夾,第二種是使用MySQLdump的方式來備份數(shù)據(jù)庫但是要加上"--master-data " 這個參數(shù),建議使用第一種方法來備份數(shù)據(jù)庫
從服務(wù)器上有個IO線程負責(zé)抓取主服務(wù)器二進制日志,并將主服務(wù)器的二進制日志內(nèi)容放到從服務(wù)器上的中繼日志里。
然后從服務(wù)器上還有個SQL線程,負責(zé)將中繼日志里的內(nèi)容在從服務(wù)器上執(zhí)行,也就是在從服務(wù)器執(zhí)行同步。
綜上,你所說的“同步負載”是由從服務(wù)器負擔(dān)的,這個過程對主服務(wù)器有所影響的就是網(wǎng)絡(luò)開銷,因為需要把主服務(wù)器上的二進制日志通過網(wǎng)絡(luò)傳到從服務(wù)器。
怎么是 10.168.88.89:3306,不是192...嗎?
master上的data目錄整個復(fù)制到了slave上?不需要這么做吧。