(1) 創建一個共享mydata,路徑為/mysql/data,客戶端1掛載至/mydata;而后客戶端1主機安裝mysql或mariadb,將數據目錄設定為/mydata,要確保mysql服務能正常 運行,但數據目錄位于samba server上;
(2) 客戶端2主機使用類似客戶端1主機的方式掛載mydata共享至本地的/mydata目錄,而后,直接安裝mysql或mariadb server,設定其數據目錄為/mydata;測試
(a) 客戶端1 mysql服務運行時,客戶端2的mysql服務能否啟動?
(b) 客戶端1 mysql服務停止時,客戶端2的mysql服務能否啟動?
準備三臺主機,server-1(10.1.64.11),server-2(10.1.64.12),server-3(10.1.64.13)
Server-1
①將server-1安裝nfs
②service rpcbind status
③service rpcbind start
④vim /etc/exports
/mysql/data 10.1.64.12(r,w) 10.1.64.13(r,w)
⑤Systemctl restart nfs
⑥創建共享目錄
Mkdir -p /mysql/data
⑦創建用戶mysql,規定其主ID為27
并將/mysql/data目錄的屬主屬組改為mysql。
Server-2
①在server-2中安裝mariadb-server。
②創建用戶mysql,用戶名可以不一樣。但是其主ID一定要是27。
③創建mysql的數據存放目錄mydata,并將其屬主屬組改為新創建的用戶mysql。
④修改配置文件/etc/my.cnf。
如果是用yum安裝的mariadb,有可能會沒有/etc/my.cnf配置文件,需要將my.cnf
的模板文件/usr/shane/mysql/my-large.cnf拷貝到/etc/,并改名為my.cnf。
Vim /etc/my.cnf,并指定mydata為數據庫的數據存放路徑。
datadir = /mydata/
⑤將server-1的/mysql/data目錄掛載到server-2的/mydata目錄上。
Mount -t nfs 10.1.64.11:/mysql/data /mydata
⑥掛載成功后重啟mariadb服務。查看端口,順利啟動。
Server-3
Server-3的配置跟server-2的配置相同。
總結:
當server-2的mariadb服務開啟時,server-3的mariadb服務就開啟不了,當server-2的
Mariadb服務關閉后,server-3的mariadb就可以順利啟動。
因此,當將兩個數據庫的數據存放路徑都指向同一個nfs的掛載點時,兩個數據庫不能
同時啟動。
遇到的問題:
在修改數據庫的配置文件時,配置的是/etc/my.cnf.d/server.cnf,配置完成后,兩個數據庫都
順利重啟了,但是當進入/mysql/data目錄中卻沒有生成mysql相關的配置。意味著數據庫數據
指定路徑失敗。
通過翻閱筆記,發現系統默認讀取的配置文件應該是/etc/my.cnf。找到該配置文件的示例
目錄/usr/share/mysql/my-large.cnf,將其復制到/etc/并改名為my.cnf。再次修改my.cnf文件,將
Mydata目錄指定為mariadb的數據存放路徑。
啟動mariadb服務,查看mydata目錄,生成了mariadb相關的文件。進入nfs的/mysql/data
樣有數據庫的相關配置文件。
原創文章,作者:zzd,如若轉載,請注明出處:http://www.www58058.com/56227