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

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

PHP?? ?? ??? ???? ? ?? ?? ??? ????. 1. php.ini? ?? ??? ??; 2. ? ?? (? : Apache? Setenv ?? nginx? FastCGI_Param)? ??????. 3. PHP ?????? putenv () ??? ??????. ? ??? Php.ini? ????? ??? ???? ??? ???? ? ?? ??? ?? ???? ????? ???? Putenv ()? ?? ??? ?????. ?? ???? ?? ?? (? : php.ini ?? ? ?? ??)? ???? ????. ?? ?? ??? ??? ?? ??? ????? ???? ?? ????.

PHP? ??? ?? ??, ?????? ???? ? ?? AI ???? ???? ? ????? ??? ?? ????? ??? ? ??? ??? ??? ?????. 2.?? ??? ?? ?? ??? ????? ???????. ??? ??? ??? ???, PHP ??? ??? ? ?? ??? ???? ?? ?? ?? ??? ???? ??? OpenAI ?? DialogFlow? ?? ?? AI ???? ???? ???? ??? ????. 3. ?? ??? ???? ???? ???? ?? PHP? ?? MySQL ? ?? ??????? ?????. 4. ?? AI ???? guzzle? ???? HTTP ??? ??? Apikeys? ???? ???? ?? ?? ? ?? ??? ? ???????. 5. ?????? ????? ??, ???, ?? ?? ? ??? ???? ???????, ???? ????? ???? ?? ? ??? ???? ?? ???? ???????.

??? PHP ??? ??? ??? ?? ???? ??? ?? ????? ???????. Laravel? ?? ??? ???? ??? ? ? ???? ??? ??? ???? ?????? ?? ? ?? ?? ???? ?????. Symfony? ? ???? ??? ???? ?????. Codeigniter? ??? ??? ?? ??? ?? ??? ?? ????? ?????. 2. AI ??? ???? ????? ??? ??? ??, ???? ?? ?? (? : ???, ??, F1 ?), ??? ? ?? ?? ? ?? ??? ?? ???? ?? ??? ???? ???? ?? ??? ? ?? ???? ?? ?? ??? ????? ?? ???? ????? ?????? ??? ????? ???????. 3. ??? ?? ?? ????? ?? ??? ?????. AES? ?? ??? ???? ????? ?????.

PHP ????? ?? ??? ??? ? ??? ??? CI (Continuous Integration) ????? ???? ? ????. 1. DockerFile? ???? ?? ???, ?? ??, ??? ?? ? ?? ??? ???? PHP ??? ?????. 2. Gitlabci? ?? CI/CD ??? ???? .gitlab-ci.yml ??? ?? ??, ??? ? ?? ??? ???? ?? ??, ??? ? ??? ?????. 3. PHPUNIT? ?? ??? ??? ??? ???? ?? ?? ? ???? ???? ????????. 4. Kubernetes? ?? ?? ?? ??? ???? ?? .yaml ??? ?? ?? ??? ?????. 5. Dockerfile ??? ? ??? ??? ??????

??? ??? ??? ?? AI? ??? PHP? ?? ????? PHP? ??? "???"?????, ?? ???? ????? ???? ??? ? ??, ASYNCHRONOUS ??? ?? AI ??? (? : Google CloudVideoAi ?)? ??????? ????. 2. PHP? JSON ??? ?? ????, ??, ??, ??, ?? ? ?? ??? ???? ??? ??? ???? ??????? ?????. 3. ??? PHP? ??? ? ???? ???? ?? PHP ?????? ????? ????? ???? ? ??? AI ??? ???? ???? ????. 4. ???? ???? ??? ?? ?? (?? ?? ? URL??? ???? ????? ?? ??), ??? ?? (??? ??? ??), ?? ?? (??? ??, ?? ????) ? ?? ??? (?? ???)? ?????. 5. ??? ??? ????? ?? ?????

??? ? PHP ?? ???? ?? ??? Docker? ?? ??? ? ????. ?? ??? ??? ????. 1. Docker ? DockerCompose? ??? ??????. 2. DockerFile ? Crontab ??? ?????? ?? ????? ????. 3. PHPCLI ??? ???? CRON ? ??? ??? ????? dockerfile? ??????. 4. ??? ??? ???? ?? Crontab ??? ??????. 5. docker-compose.yml ??? ???? ????? ???? ?? ??? ??????. 6. ????? ???? ??? ??????. ? ?????? ??? ??? ???? ?? ??? ? ?? ????? ?? ??, ??? ??, ??? ??? ? ?? ??? ??? ????. ?? ? ?? ??? ?????

?? ?? ?? : ?? ????? PHP? ?? Error_Log ()? ??? ? ????. ????? ???? ??? ?? ??? ?????? ???? ?? ??? ? ?? ??? ???? ??? ?? ???, ??, ?? ? ?? ? ?? ?? ??? ???? ??? ??????. 2. ??? ?? ?? : ??? ??? ??? ??? ? ??? ?? ??? ??? ?? ??? ??? ??????? ??????. MySQL/PostgreSQL? ???? ??? ? ???? ??????. Elasticsearch Kibana? ? ???/? ???? ?????. ???, ??? ?? ? ??? ? ?? ??? ?? ??????. 3. ?? ? ?? ????? : ??, ???, ?? ? ??? ??? ??????. Kibana? ?? ????? PHP ??? ?? ?? ?????? ???? ???? ?????? ???? ??? ? ?? ??? ??? ? ????.

PHP ??? ?? ??? ??? ??? ???? ?? ??? Kubernetes? ????? ? ??????? ??? ???? ?? ???? ???? ????. ?? ??? ??? ????. 1. ?? PHP ??, ??, ??? ? ? ?? ??? ???? ?? ? Docker ???? ???? ??? ???? ?? ? ??? ????????. 2. Kubernetes? ?? ? ??? ???? ? ???? ??? ??? ???? ?? ??? ?? ?? ?? ??? ?? ??? ?? ??? ??? ???? ?????. 3. Unified Kubernetes ?? ?? ?? (?? ? ??? ?)? ?? ?? ???? ?? ???? ???? ?? ??? ??????. 4.
