您好,登錄后才能下訂單哦!
前言
公司的Ubuntu服務器對于各個系統的目錄是放在不同的邏輯分區上的,比如存放mysql數據庫文件的默認目錄/var/lib/mysql所在的系統目錄/var/單獨在一個分區上,但是這個分區的大小是固定的,不足以存放整個數據庫文件。但是另一個系統目錄/data大小卻達到T級,大大滿足了需求,因此有了更改數據庫文件目錄的需求。
以下是我參考網絡上一些文章進行嘗試的過程:
1.停止數據庫服務:
使用/etc/init.d/mysql stop
或者 stop mysql
2. 在目標位置(/data)創建數據庫文件的目錄(如/mysqldb),并復制(如果不再使用默認的位置,則可以直接mv原先數據庫文件到新目錄下)原先的數據庫文件目錄到該目錄下:
cd /data mkdir mysqldb cp -r /var/lib/mysql /data/mysqldb/
經過一段時間的等待后,在/data/mysqldb/下面就有了原先默認的mysql數據庫文件目錄的拷貝“/mysql”
3.修改my.cnf文件
# vim /etc/mysql/my.cnf
將datadir = /var/lib/mysql
改為 datadir = /data/mysqldb/mysql
另外由于當前my.cnf 中的socket = /var/run/mysqld/mysqld.sock
(而并非像網上所說的sock = /var/lib/mysql/mysql.sock),即socket的位置并不在數據庫文件所在的位置,因此可以不做類似網上其他網頁所說的,要使用以下的命令做一個mysql.sock 鏈接:
ln -s /data/mysqldb/mysql/mysql.sock /var/lib/mysql/mysql.sock (需要從/home/data/mysql下復制一份過來)
4. 修改數據庫的權限:
# chown -R mysql:mysql /data/mysqldb/mysql/ ← 改變數據庫文件目錄的歸屬為mysql # chmod 700 /data/mysqldb/mysql/whois/ ← 改變數據庫目錄whois的屬性為700 # chmod 660 /data/mysqldb/mysql/whois/* ← 改變數據庫中數據表的屬性為660
5. 修改文件usr.sbin.mysqld
# vim /etc/apparmor.d/usr.sbin.mysqld
把
/var/lib/mysql r, /var/lib/mysql/** rwk,
改成
/data/mysqldb/mysql/ r, /data/mysqldb/mysql/** rwk,
注意:沒有該步驟的話,將導致數據庫服務無法重啟,好像在重啟,但是一直卡住無反應。
6.啟動mysql服務器
/etc/init.d/apparmor restart /etc/init.d/mysql restart (或者使用 restart mysql)
搞定!
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。