MySQL數(shù)據(jù)庫(kù)進(jìn)行備份在Linux異構(gòu)網(wǎng)絡(luò)里 |
發(fā)布時(shí)間: 2012/8/14 17:51:57 |
以下的文章主要講述的是在Linux異構(gòu)網(wǎng)絡(luò)中正確對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行備份(圖)主要是分成本地備份與備份數(shù)據(jù)到DVD盤片的介紹,以下就是文章的具體內(nèi)容描述,希望會(huì)給你帶來一些幫助在此方面。 筆者是一個(gè)中小Linux網(wǎng)站的管理員,系統(tǒng)構(gòu)架是:RHEL 4.0 + PHP 4.3 + MySQL(和PHP搭配之最佳組合) 4.03 +apache(Unix平臺(tái)最流行的WEB服務(wù)器平臺(tái)) 1.23。日均IP訪問量在200次,一個(gè)典型的Linux小型網(wǎng)站。由于是小型網(wǎng)站,所以沒有經(jīng)費(fèi)使用磁帶機(jī)進(jìn)行系統(tǒng)備份,使用的DVD光盤刻錄機(jī)+網(wǎng)絡(luò)硬盤。 隨著Linux的應(yīng)用日益廣泛,特別是在網(wǎng)絡(luò)應(yīng)用方面,有大量的網(wǎng)絡(luò)服務(wù)器使用Linux操作系統(tǒng)。由于Linux的桌面應(yīng)用和Windows相比還有一定的差距,所以在企業(yè)應(yīng)用中往往是Linux和Windows操作系統(tǒng)共存形成異構(gòu)網(wǎng)絡(luò)。在服務(wù)器端大多使用Linux和Unix的,PC端使用 Windows 9X/2000/XP。下面我們就講講在Linux異構(gòu)網(wǎng)絡(luò)備份MySQL(和PHP搭配之最佳組合)。 一、 本地備份 MySQL數(shù)據(jù)庫(kù)的常用備份方法是使用使用實(shí)用程序MySQL(和PHP搭配之最佳組合)dump, 其命令格式如下: # MySQL(和PHP搭配之最佳組合)dump [options] database [tables] 其參數(shù)的含義為: options:代表MySQL(和PHP搭配之最佳組合)dump的選項(xiàng),通過MySQL(和PHP搭配之最佳組合)dump –help可以查到。 database: 代表將要備份的數(shù)據(jù)庫(kù) tables: 代表將要備份的表,如果不指定任何表,則備份整個(gè)數(shù)據(jù)庫(kù)。 使用 MySQL(和PHP搭配之最佳組合)dump進(jìn)行備份非常簡(jiǎn)單,如果要備份MySQL數(shù)據(jù)庫(kù)” phpbb_db_backup ”,使用命令: #MySQL(和PHP搭配之最佳組合)dump –u -p phpbb_db_backup > /usr/backups/MySQL(和PHP搭配之最佳組合)/ phpbb_db_backup.2005.5.6 還可以使用gzip命令對(duì)備份文件進(jìn)行壓縮: #MySQL(和PHP搭配之最佳組合)dump phpbb_db_backup | gzip > /usr/backups/MySQL(和PHP搭配之最佳組合)/ phpbb_db_backup.2005.5.6。gz 恢復(fù)數(shù)據(jù)使用命令: #MySQL(和PHP搭配之最佳組合) –u -p phpbb_db_backup 二、 備份數(shù)據(jù)到DVD盤片 隨著MySQL(和PHP搭配之最佳組合)數(shù)據(jù)量的增大,使用傳統(tǒng)CD—R來備份硬盤并不現(xiàn)實(shí),采用CD—RW分卷制作實(shí)在太麻煩、磁帶機(jī)對(duì)于中小企業(yè)又過于昂貴。另外各個(gè)應(yīng)用程序的復(fù)雜度日與劇增, 處理的數(shù)據(jù)量也都相當(dāng)龐大,Linux用戶常常遇到的問題就是 : 有什么辦法可以經(jīng)濟(jì)快捷的對(duì)數(shù)據(jù)做備份與保存。隨著DVD刻錄機(jī)和盤片的價(jià)格迅速降低,使用DVD刻錄機(jī)用來備份Linux操作系統(tǒng)非常明智的。 1、安裝 下面以IDE接口的內(nèi)置刻錄設(shè)備為例,介紹在Linux環(huán)境中使用DVD刻錄機(jī)。Linux 需要將IDE接口的刻錄設(shè)備虛擬為SCSI設(shè)備才能進(jìn)行DVD刻錄。2.4以上內(nèi)核Linux發(fā)行版本包含了已編譯進(jìn)內(nèi)核的 SCSI 仿真,http://www.linuxidc.com所以只要對(duì)啟動(dòng)文件作一些小改動(dòng);USB或1394(FireWire)接口的外置刻錄機(jī)就簡(jiǎn)單多了。 把DVD刻錄機(jī)設(shè)備接入計(jì)算機(jī)第二個(gè)IDE接口(dev/hdc),開啟電源。假設(shè)系統(tǒng)用Grub啟動(dòng),用文本編輯器打開 /boot/grub/grub.conf,找到以“kernel”開頭的一行,在這行內(nèi)容的未尾加入“hdc=ide-scsi”,例如: “kernel /vmlinuz-2.4.20-8ro root=LABEL=/ hdc=ide-scsi”。 2、安裝刻錄軟件 DVD+RW-Tools :一個(gè)包含有用于刻錄DVD和映像的軟件工具包,包括:Growisofs和dvd+rw-format。官方站點(diǎn):http://fy.chalmers.se/~appro/linux/DVD+RW/, CDRDAO :DAO即是Disk-At-Once(實(shí)時(shí)刻錄),是一種在燒錄過程中沒有音軌間的兩秒緩沖的刻錄方法。它可以對(duì)磁盤的布局和磁道進(jìn)行完全的控制,這一功能在刻錄多來源的盤片相當(dāng)有幫助。 cdrtools:包含了一套用于CD、DVD刻錄的工具。Growisofs在創(chuàng)建映像時(shí)會(huì)使用這個(gè)軟件包中的mkisofs工具,并且用戶可以使用readcd來從一個(gè)現(xiàn)有的DVD上創(chuàng)建ISO映像。此外,Cdrecord應(yīng)用程序可被用于掃描連接系統(tǒng)上的CD/DVD刻錄機(jī),并且可以使用它來將ISO映像刻錄到CD— R(W)光盤上。通常大多數(shù)Linux版本包括這個(gè)軟件,也可以下載使用:http: //freshmeat.net/redir/cdrecord/35795/url_homepage/cdrecord.html dvdrecord:命令行下的DVD刻錄軟件。命令行下的DVD刻錄可用于很多種情形,比如當(dāng)我們通過遠(yuǎn)程訪問主機(jī)時(shí),機(jī)器上的圖形界面無(wú)法啟動(dòng)時(shí),或者機(jī)器由于某些原因無(wú)法啟動(dòng)GUI時(shí)。此外,在完成一些備份等自動(dòng)重復(fù)的功能時(shí),也需要使用命令行工具。 以上介紹了一下必須的軟件和相關(guān)下載網(wǎng)址,安裝過程比較簡(jiǎn)單,這里就不贅述了。 3、命令行下刻錄 使用DVD+RW-Tools 進(jìn)行刻錄工作 growisofs 是DVD+RW-Tools一個(gè)工具,Growlsofs訪問其刻錄設(shè)備使用的是一種不同的方式。它使用/dev下面的Unix路徑來連接刻錄機(jī)。不同的系統(tǒng)和發(fā)行版中用于刻錄機(jī)的路徑不盡相同,所以最好的方法是查看發(fā)行版中的幫助。在一些系統(tǒng)中,一個(gè)名為/dev/dvd的軟鏈接會(huì)被設(shè)置成指向可用的 DVD刻錄機(jī),在本文中,使用/dev/dvd來指定刻錄機(jī),如果系統(tǒng)中路徑設(shè)置不同,那么請(qǐng)使用合適的路徑將其取代。 (1)格式化可讀寫DVD光盤 可以使用DVD+RW-Tools工具包中提供的dvd十rw—format命令。它有兩種格式化DVD光盤的方式:快速模式、完全模式?焖倌J剑 #dvd+rw-format -blank /dev/dvd 完全模式: #dvd+rw-format -blank=full /dev/dvd (2)將文件存儲(chǔ)至DVD刻錄盤: DVD 和普通的光盤一樣,使用的也是ISO9660文件系統(tǒng),以及同樣的通用擴(kuò)展(Joliet和RockRidge)。Growlsofs提供了一種簡(jiǎn)單的將文件或目錄存儲(chǔ)至DVD刻錄盤的方法。先用調(diào)用mkisofs工具來創(chuàng)建一個(gè)映像,并且無(wú)需在將該映像存儲(chǔ)至硬盤之前就刻錄下來。其基本的命令格式如下: #growisofs -dvd-compat -Z /dev/dvd -J -R /path/to/home/cao 此命令將/path/to/home/cao目錄下的文件制作一個(gè)映像并且刻錄到的DVD光盤。 二、網(wǎng)絡(luò)備份 將MySQL(和PHP搭配之最佳組合)數(shù)據(jù)放在一臺(tái)計(jì)算機(jī)上是不安全的,所以應(yīng)當(dāng)把數(shù)據(jù)備份到局域網(wǎng)中其他計(jì)算機(jī)中。假設(shè)MySQL(和PHP搭配之最佳組合)服務(wù)器IP地址是:192.168.1.3。局域網(wǎng)使用Linux的遠(yuǎn)程計(jì)算機(jī)IP地址是192.168.1.17;局域網(wǎng)使用Windows的遠(yuǎn)程計(jì)算機(jī)IP地址是192.168.1.18。 1. 通過NFS網(wǎng)絡(luò)備份 類似于windows的網(wǎng)絡(luò)共享,UNIX(Linux)系統(tǒng)也有自己的網(wǎng)絡(luò)共享,那就是NFS(網(wǎng)絡(luò)文件系統(tǒng)),在linux客戶端掛接(mount)NFS磁盤共享之前,必須先配置好NFS服務(wù)端。linux系統(tǒng)NFS服務(wù)端配置方法如下: (1)修改 /etc/exports,增加共享目錄 /export/home/sunky 192.168.1.17(rw) /export/home/sunky1 *(rw) /export/home/sunky2 linux-client(rw) 注:/export/home/目錄下的sunky、sunky1、sunky2是準(zhǔn)備共享的目錄,10.140.133.23、*、linux- client是被允許掛接此共享linux客戶機(jī)的IP地址或主機(jī)名。如果要使用主機(jī)名linux-client必須在服務(wù)端主機(jī)/etc/hosts文件里增加linux-client主機(jī)ip定義。格式如下: 192.168.1.17 linux-client 若修改/etc/export文件增加新的共享,應(yīng)先停止NFS服務(wù),再啟動(dòng)NFS服務(wù)方能使新增加的共享起作用。使用命令exportfs -rv也可以達(dá)到同樣的效果。linux客戶端掛接(mount)其他linux系統(tǒng)或UNIX系統(tǒng)的NFS共享。這里我們假設(shè)192.168.1.17 是NFS服務(wù)端的主機(jī)IP地址,當(dāng)然這里也可以使用主機(jī)名,但必須在本機(jī)/etc/hosts文件里增加服務(wù)端ip定義。 /export/home/sunky為服務(wù)端共享的目錄。如此就可以在linux客戶端通過/mnt/nfs來訪問其它linux系統(tǒng)或UNIX系統(tǒng)以 NFS方式共享出來的文件了。 把MySQL(和PHP搭配之最佳組合)數(shù)據(jù)備份到使用Linux的遠(yuǎn)程計(jì)算機(jī)需要在兩端都安裝NFS協(xié)議(NetworkFile System),遠(yuǎn)程N(yùn)FS計(jì)算機(jī)安裝NFS協(xié)議后還要修改配置文件:/etc/exports,加入一行: /usr/backups/MySQL(和PHP搭配之最佳組合)/ 192.168.1.17 (rw, no_root_squash) 表示將/usr/backups/MySQL(和PHP搭配之最佳組合)/目錄共享。這個(gè)目錄具有遠(yuǎn)程root用戶讀寫權(quán)限。保存NFS配置文件,然后使用命令: #exportfs -a –r 然后重新啟動(dòng)NFS服務(wù): #service nfsd start 遠(yuǎn)程計(jì)算機(jī)設(shè)定后,在MySQL(和PHP搭配之最佳組合)服務(wù)器/mnt 目錄下建立一個(gè)backup_share目錄: #mkdir /mnt/backup_share 將遠(yuǎn)程的Linux計(jì)算機(jī)的/usr/backups/MySQL(和PHP搭配之最佳組合)/目錄掛載到MySQL(和PHP搭配之最佳組合)服務(wù)器的/mnt/backup_share目錄下: # mount -t nfs 192.168.1.17:/usr/backups/MySQL(和PHP搭配之最佳組合) /mnt/backup_share 將目錄掛載進(jìn)來后,只要進(jìn)入/mnt/backup_share 目錄,就等于到了IP地址:192.168.1.7那部NFS計(jì)算機(jī)的/usr/backups/MySQL(和PHP搭配之最佳組合)目錄中。下面使用MySQL(和PHP搭配之最佳組合)dump把“phpbb_db_backup”備份到遠(yuǎn)程計(jì)算機(jī): # MySQL(和PHP搭配之最佳組合)dump phpbb_db_backup > /mnt/backup_share/ phpbb_db_backup.2005-5-6 2. 通過Samba網(wǎng)絡(luò)備份 Windows 網(wǎng)絡(luò)共享的核心是SMB/CIFS,在linux下要掛接(mount)windows的磁盤共享,就必須安裝和使用samba軟件包。現(xiàn)在流行的 linux發(fā)行版絕大多數(shù)已經(jīng)包含了samba軟件包,如果安裝linux系統(tǒng)時(shí)未安裝samba請(qǐng)首先安裝samba。當(dāng)然也可以到 www.samba.org網(wǎng)站下載samba軟件包,現(xiàn)在最新的版本是3.0.10版。然后Windows計(jì)算機(jī)上建立一個(gè)目錄(/arc)并且共享,賦予其讀寫權(quán)限。同樣在MySQL(和PHP搭配之最佳組合)服務(wù)器/mnt 目錄下建立一個(gè)backup_share1目錄,然后進(jìn)行掛載: # mount -t smbfs -o username=cjh, password=XXXX //192.168.1.18/arc /mnt/backup_share 最后使用命令進(jìn)行備份: # MySQL(和PHP搭配之最佳組合)dump phpbb_db_backup > /mnt/backup_share/ phpbb_db_backup.2005-5-6 MySQL(和PHP搭配之最佳組合)是一個(gè)功能強(qiáng)大的MySQL數(shù)據(jù)庫(kù),需要在實(shí)踐中多練習(xí)才能熟練掌握,本文介紹MySQL(和PHP搭配之最佳組合)的網(wǎng)絡(luò)備份方法。希望對(duì)大家有所幫助。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |