Mysql高性能備份方案解決數(shù)據(jù)不間斷訪問(wèn)_MySQL教程
推薦:設(shè)置mysql的sql_modeauthor:skate time:2013/04/11 mysql的sql_mode合理設(shè)置 sql_mode是個(gè)很容易被忽視的變量,默認(rèn)值是空值,在這種設(shè)置下是可以允許一些非法操作的,比如允許一些非法數(shù)據(jù)的插入。在生產(chǎn)環(huán)境必須將這個(gè)值設(shè)置為嚴(yán)格模式,所以開發(fā)、測(cè)試環(huán)境的數(shù)據(jù)庫(kù)也必須要設(shè)置,這樣
備份特點(diǎn):
1、在大多數(shù)情況下,這種方式幾乎算得上是熱備。它無(wú)需關(guān)閉服務(wù),只需要設(shè)置只讀或者類似這樣的限制。
2、支持所有基于本地磁盤的存儲(chǔ)引擎,比如MYISAM、InnoDB和BDB,還支持Solid、PrimeXT和Faction。
3、備份速度最快,因?yàn)槟阒恍枰截愊嚓P(guān)的二進(jìn)制數(shù)據(jù)文件即可。
4、由于只是簡(jiǎn)單的拷貝文件,因此對(duì)服務(wù)器開銷非常低。
5、保存方式多種多樣,你可以備份到磁帶上、FTP服務(wù)器上、NFS服務(wù)器上或者其他什么網(wǎng)絡(luò)服務(wù)器,以及使用各種網(wǎng)絡(luò)備份軟件來(lái)備份。
做到這些很簡(jiǎn)單,說(shuō)到底就是拷貝文件而已。
6、恢復(fù)速度很快�;謴�(fù)所需要的時(shí)間等于你把數(shù)據(jù)拷貝回來(lái)的時(shí)間。你可以想出更多的方法讓這個(gè)時(shí)間變得更短。
7、無(wú)需使用昂貴的商業(yè)軟件。
前期準(zhǔn)備工作
1、創(chuàng)建LVM分區(qū)
更多LVM創(chuàng)建方法請(qǐng)參考 Linux LVM邏輯卷配置過(guò)程詳解http://dreamfire.blog.51cto.com/418026/1084729
# lvcreate -L 3G mysqlvg1 -n mysqllv \創(chuàng)建大小為3G的邏輯卷mysqllv
# mkfs.ext4 /dev/mysqlvg1/mysqllv \格式化邏輯卷
2、停止mysql服務(wù)
# /etc/rc.d/init.d/mysqld stop
3、掛在邏輯卷到臨時(shí)目錄/tmp下
# mount /dev/mysqlvg1/mysqllv /tmp/ \掛載邏輯卷到臨時(shí)目錄
4、使用tar命令遷移原來(lái)數(shù)據(jù)庫(kù)目錄文件到臨時(shí)目錄/tmp下
# cd /var/lib/mysql/
# tar cf - . | tar xf - -C /tmp/ \對(duì)數(shù)據(jù)進(jìn)行分解壓縮到/tmp下,也就是放在邏輯卷掛載的目錄中
5、重新掛在邏輯卷到數(shù)據(jù)庫(kù)目錄下,并在/etc/fstab中添加開啟自動(dòng)掛載
# umount /tmp/ 卸載邏輯卷
# rm -rf /var/lib/mysql/* //刪除數(shù)據(jù)庫(kù)目錄下的所有信息,一定要確認(rèn)上一步操作OK
# mount /dev/mysqlvg1/mysqllv /var/lib/mysql/ //將邏輯卷重新掛載到數(shù)據(jù)庫(kù)mysql目錄下
并在/etc/fstab中添加開啟自動(dòng)掛載
# blkid /dev/mysqlvg1/mysqllv | awk '{print $2}' \取出邏輯卷mysqllv的UUID值
# cat >>/etc/fstab <
> UUID=29502f33-fde2-4c21-b6c3-9fe1b74c0f0d /var/lib/mysql ext4 defaults 0 0
> endf
6、關(guān)閉selinux
# setinforce 0 \設(shè)置為premission模式
7、啟動(dòng)mysql服務(wù)
# /etc/rc.d/init.d/mysqld start
mysql數(shù)據(jù)庫(kù)LVM快照備份
1、鎖表
mysql> flush tables with read lock; \防止創(chuàng)建快照過(guò)程中有數(shù)據(jù)寫入
2、查看position信號(hào)
mysql> show master statusG; \查看當(dāng)前的position信號(hào),方便同步到slave的時(shí)候使用
3、創(chuàng)建快照
# lvcreate -n mysql-snap -L 100M -s /dev/mysqlvg1/mysqllv \將邏輯卷中的數(shù)據(jù)創(chuàng)建為大小為100M的快照,這個(gè)速度非�?�。
4、解鎖
mysql> unlock tables;\解鎖
5、掛載創(chuàng)建快照
# mount /dev/mysqlvg1/mysql-snap /mnt/ \掛載快照,為備份做準(zhǔn)備
6、讀取快照進(jìn)行備份(備份需要備份的即可)
# tar cf mysql-01.tar.gz db1 db_2 \備份快照信息到存儲(chǔ)設(shè)備里面
7、卸載掛載的快照,然后刪除快照
# umount /mnt/
# lvremove -f /dev/mysqlvg1/mysql-snap \刪除快照,節(jié)省空間
到此,整個(gè)備份過(guò)程就算結(jié)束了。如果你想要將內(nèi)容同步到slave機(jī)上的話,那么還需要多加幾個(gè)步驟。
1、把備份內(nèi)容拷貝到slave的數(shù)據(jù)文件目錄下。
2、重啟MySQL服務(wù)器,等待恢復(fù)完成。
3、使用CHANGE MASTER TO 命令告訴slave新的二進(jìn)制日志位置,并從那里開始同步,(就是我們剛剛記錄下來(lái)的那個(gè))例如:
mysql> CHANGE master TO master_host=”192.168.100.109”,master_user=”slave”,master_password=”123.com”, master_log_file=”host-bin.000006″,master_log_pos=198;
分享:驗(yàn)證實(shí)例名稱是否正確在與 SQL Server 建立連接時(shí)出現(xiàn)與網(wǎng)絡(luò)相關(guān)的或特定于實(shí)例的錯(cuò)誤。未找到或無(wú)法訪問(wèn)服務(wù)器。請(qǐng)驗(yàn)證實(shí)例名稱是否正確并且 SQL Server 已配置為允許遠(yuǎn)程連接。 (provider: 命名管道提供程序, error: 40 - 無(wú)法打開到 SQL Server 的連接) 說(shuō)明: 執(zhí)行當(dāng)前 Web 請(qǐng)求期間,出
- MSSQL清空日志刪除日志文件
- 關(guān)于數(shù)據(jù)庫(kù)中保留小數(shù)位的問(wèn)題
- 解析mysql與Oracle update的區(qū)別
- mysql 導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)以及函數(shù)、存儲(chǔ)過(guò)程的介紹
- MySQL——修改root密碼的4種方法(以windows為例)
- 解決MYSQL出現(xiàn)Can''t create/write to file ''#sql_5c0_0.MYD''的問(wèn)題
- 深入理解SQL的四種連接-左外連接、右外連接、內(nèi)連接、全連接
- 解析:內(nèi)聯(lián),左外聯(lián),右外聯(lián),全連接,交叉連接的區(qū)別
- mysql出現(xiàn)“Incorrect key file for table”處理方法
- mysql重裝后出現(xiàn)亂碼設(shè)置為utf8可解決
- 淺析一個(gè)MYSQL語(yǔ)法(在查詢中使用count)的兼容性問(wèn)題
- 解析MySQL中INSERT INTO SELECT的使用
MySQL教程Rss訂閱編程教程搜索
MySQL教程推薦
- KB967723補(bǔ)丁造成的MYSQL在Win2003上頻繁連接不上
- 更新text字段時(shí)出現(xiàn)Row size too large報(bào)錯(cuò)應(yīng)付措施
- 如何修改mysql數(shù)據(jù)庫(kù)的max_allowed_packet參數(shù)
- 網(wǎng)站模板MySQL timestamp自動(dòng)更新時(shí)間
- MySQL數(shù)據(jù)庫(kù)備份和還原的常用命令
- SQL分組排序去重復(fù)的小實(shí)例
- MySQL查詢優(yōu)化:LIMIT 1避免全表掃描提高查詢效率
- 解析mysql中:單表distinct、多表group by查詢?nèi)コ貜?fù)記錄
- MySQL筆記之函數(shù)查詢的使用
- MySQL:數(shù)據(jù)庫(kù)知識(shí)點(diǎn)
猜你也喜歡看這些
- 四個(gè)關(guān)于SQL Server 2005數(shù)據(jù)庫(kù)鏡像的問(wèn)題
- mdf文件和ldf文件導(dǎo)入到sql server 2005實(shí)現(xiàn)語(yǔ)句
- 解析SQL觸發(fā)器在保持?jǐn)?shù)據(jù)庫(kù)完整性中的實(shí)際應(yīng)用
- 解析SQL Server 2008企業(yè)級(jí)新特性
- 怎樣做sql server數(shù)據(jù)庫(kù)的還原
- sql2005 附加數(shù)據(jù)庫(kù)出錯(cuò)(錯(cuò)誤號(hào):5123)解決方法
- char、varchar、text和nchar、nvarchar、ntext的區(qū)別
- 淺談選擇SQL Server恢復(fù)模型確保正確備份
- 看Sql server 2005 找出子表樹
- 解決SQL Server數(shù)據(jù)庫(kù)占用過(guò)多內(nèi)存的方法
- 相關(guān)鏈接:
- 教程說(shuō)明:
MySQL教程-Mysql高性能備份方案解決數(shù)據(jù)不間斷訪問(wèn)
。