看板 Linux 關於我們 聯絡資訊
※ 引述《onlyunmandy (曼蒂在雲端)》之銘言: : 各位好 : 原本的問題已經解決了... : 但是怎麼解決的我也不曉得= = : 就一直重複更改動作就可以執行了... : 我把datadir更改至/home/mysql,但mysql.sock還是在/var/lib/mysql : (因為mysql.sock複製過去後更改位置他還是自動消失) : 之前另外一台的設定也是這樣,是沒有問題的 : 但是這台...... : 他沒有抓到我要放的/home/mysql位置 : 儲存位置還是在/var/lib/mysql : (my.cnf已經更改了喔喔喔~~~目錄權限也有設定) : 這台的狀況是因為硬碟壞掉重灌了 : 然後廠商重灌後把系統檔分割太小 : 原本的mysql資料檔案過大無法全部回存(早已經放在/home/mysql裡) : 想說將儲存路徑修改至/home/mysql : 將權限改好應該就可以了 : 但是一直發生問題... : 是否有其他方式可以解決? : 先謝謝大家了~~~ :) 1. mysql.sock 這是 unix domain socket file,簡單說 mysql daemon 啟動的 時候會產生這個檔案,後續相關 client 端要存取 mysql 服務程式的話,於 mysql server 本機 client 端工具最快速的方式就是透過這類檔案與 daemon 溝通就可以了。其他方式就是得走 tcp/ip 的 port 3306 來溝通,若連結的 client 不是在 mysql server 本機上就會用這個方式。 2. mysql 目錄放在 /var/lib/mysql 目錄內,若你要改到其他地方去的話有很多 種的方式。其中一種最簡單就是把 /var/lib/mysql 這個目錄搬移到某個目錄內, 後續建立 symlink 檔案就可以存取使用。ex: ==> mv /var/lib/mysql /home ==> ln -s /home/mysql /var/lib/mysql (記得 ln -s 之前確認 /var/lib/mysql 目錄已經搬移走或刪除了,要不然 ln -s 會有錯誤結果) 這樣存取 /var/lib/mysql 實際指向 /home/mysql 目錄,所以 my.cnf 檔案也 不需要有任何修改,程式還是會抓取 /var/lib/mysql 目錄,但是最後會應對到 新的目錄去。 若你是自己建立新的 /home/mysql 的話也可以,請注意 permission,owner 與 group 項目就好。比方我這邊機器原本 /var/lib/mysql 的 owner/group 都是 mysql,所以就這樣使用: my.cnf : [mysqld] datadir=/home/mysql 然後... ==> mkdir /home/mysql ==> chown mysql:mysql /home/mysql ==> chmod 600 /home/mysql 若已經有現成的 /home/mysql 目錄要使用,那記得 chown 多個 -R 把目錄內 所有檔案目錄的 owner/group 也一併修正。 3. 目前 centos/rhel based 的 linux 發行版本預設都有啟用 selinux 這個安全 架構環境,所以若你使用這類版本而且有啟用 selinux 的話,手動建立 mysql db 目錄還不夠,得自己變更一下 security context 設定允許存取。像是: ==> chcon -t mysqld_db_t -R /home/mysql 記得 my.cnf 檔案應該是使用 mysqld_etc_t 這個安全本文,不正確的話 會被禁止存取。不確定可以用 ls -Z 方式觀察... [kendlee@server /]$ ls -lZ /etc/my.cnf -rw-r--r--. root root system_u:object_r:mysqld_etc_t:s0 /etc/my.cnf 4. 若有使用 selinux 可以順便改一下 policy 設定,登記該目錄都是屬於 mysql 的安全本文範圍項目,在 relabel or restore 時候可以應對到正確資訊,ex: ==> semanage fcontext -a -t mysqld_db_t "/home/mysql(/.*)?" 提供給你參考。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.33.71.87 ※ 文章網址: http://www.ptt.cc/bbs/Linux/M.1413118207.A.83F.html ※ 編輯: kenduest (114.33.71.87), 10/12/2014 21:15:35