如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的中站網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

1,為什么要進(jìn)行數(shù)據(jù)庫的拆分
在LNMP架構(gòu)中,動態(tài)數(shù)據(jù)的讀取都要通過PHP去調(diào)取數(shù)據(jù)庫數(shù)據(jù),這樣一個過程如果實在訪問數(shù)量龐大的情況下一臺數(shù)據(jù)庫是難以承擔(dān)的,必然導(dǎo)致內(nèi)存溢滿,讀取不過來而導(dǎo)致web宕機(jī),因此一般架構(gòu)中Nginx和PHP是部署在一起的。數(shù)據(jù)庫作為后端,它的數(shù)據(jù)處理速度就代表了整個web架構(gòu)的效率,所以數(shù)據(jù)庫單獨(dú)部署且不止一臺數(shù)據(jù)庫服務(wù)器
2,數(shù)據(jù)庫拆分后解決了什么問題
1)提高了數(shù)據(jù)庫處理數(shù)據(jù)速度
2)緩解Web壓力
3)提高用戶訪問速度
3,數(shù)據(jù)庫拆分后架構(gòu)變化
如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲

4,以第22章LNMP架構(gòu)為例
1) web:10.0.0.8 Nging+PHP
2) db:    10.0.0.51 MySQL
5,拆分
1)安裝數(shù)據(jù)庫服務(wù)器
yum install mariadb mariadb-server -y
systemctl start mariadb
systemctl enable mariadb
mysqladmin password 'oldboy123'
2)把Web上的數(shù)據(jù)庫數(shù)據(jù)備份出來
mysqldump -uroot -p'oldboy123' -A --single-transaction > mysql-all.sql(將數(shù)據(jù)庫所有數(shù)據(jù)備份出來)
3)把數(shù)據(jù)SCP到新的數(shù)據(jù)庫服務(wù)器
scp mysql-all.sql 10.0.1.51:/tmp
4)在新數(shù)據(jù)庫服務(wù)器上將數(shù)據(jù)還原
mysql -uroot -p'oldboy123' < /tmp/mysql-all.sql
mysql -uroot -p'oldboy123' -e "show databases;"
5)創(chuàng)建用戶并授權(quán)
mysql -uroot -p'oldboy123'
grant all privileges on *.* to 'yangjiwan'@'%' identified by 'oldboy123';(這里創(chuàng)建一個普通用戶不用root用戶了權(quán)限太大,密碼是oldboy123,%表示允許所有ip連接也可以指定就Nginx+PHP服務(wù)器連接)
flush privileges;
exit

6)修改PHP與數(shù)據(jù)庫的配置文件將指定新的(用戶,密碼,ip)用來連通新的數(shù)據(jù)庫
vim /code/wordpress/wp-config.php

/** MySQL數(shù)據(jù)庫用戶名 */
define('DB_USER', 'yangjiwan');

/** MySQL數(shù)據(jù)庫密碼 */
define('DB_PASSWORD', 'oldboy123');

/** MySQL主機(jī) */
define('DB_HOST', '10.0.0.51');

7)測試,將原來PHP與數(shù)據(jù)庫的通訊斷開,連接新的數(shù)據(jù)庫
systemctl stop mariadb.service
如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲
然后還能訪問表示遷移成功!

1,將Web數(shù)據(jù)目錄資源掛載到NFS共享存儲
1)為什么web數(shù)據(jù)目錄要掛載到NFS共享統(tǒng)一存儲,生產(chǎn)環(huán)境中用戶訪問通過Nginx分發(fā)后會訪問不同web服務(wù)器,當(dāng)用戶上傳了數(shù)據(jù)后,如果你沒有統(tǒng)一的存放位置,單獨(dú)的存放在某臺web上,那下次用戶再訪問的時候Nginx把他的請求分發(fā)到別的web了,請問還能看到自己上傳的數(shù)據(jù)了嗎?
2)增加一臺NFS服務(wù)器的作用?
1,web數(shù)據(jù)目錄資源一致性
2,節(jié)省了web服務(wù)器上的存儲資源
3,方便后端cdn對資源的加速出來
4,實現(xiàn)后端Lsyncd對web數(shù)據(jù)統(tǒng)一備份
2,增加NFS服務(wù)器后的web架構(gòu)
如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲
如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲
3,環(huán)境:
web7:nginx+php
web8:nginx+php
db51:mariadb
nfs31:nfs
4,搭建NFS服務(wù)器(已完成

[root@nfs01 ~]# yum install nfs-utils -y
[root@nfs01 ~]# cat /etc/exports
/data/blog 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)
/data/zh 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)
[root@nfs01 ~]# mkdir /data/{blog,zh} -p
[root@nfs01 ~]# chown -R www.www /data

5,web7服務(wù)器作為nfs客戶端
yum -y install nfs-utils
systemctl start rpcbind (客戶端只需啟動rpc)
6,在web服務(wù)器上將數(shù)據(jù)目錄掛載給NFS服務(wù)器
mount -t nfs 172.16.1.31:/data/blog  /code/wordpress/wp-content/uploads/(web數(shù)據(jù)目錄)
mount -t nfs 172.16.1.31:/data/zh  /code/zh/wp-content/uploads/
7,開機(jī)自動掛載

[root@web01 ~]# tail -1 /etc/fstab 
172.16.1.31:/data/blog /code/wordpress/wp-content/uploads nfs defaults 0 0

8,web8服務(wù)器作為nfs客戶端
操作如上web7:

上述就是小編為大家分享的如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章名稱:如何進(jìn)行數(shù)據(jù)庫拆分和設(shè)置NFS共享存儲
URL地址:http://bm7419.com/article22/gosojc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化域名注冊、全網(wǎng)營銷推廣、用戶體驗、云服務(wù)器虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司