程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> CentOS Linux更改MySQL數據庫目錄位置具體操作

CentOS Linux更改MySQL數據庫目錄位置具體操作

編輯:MySQL綜合教程

引言
由於MySQL的數據庫太大,默認安裝的/var盤已經再也無法容納新增加的數據,沒有辦法,只能想辦法轉移數據的目錄。

下面我整理一下把MySQL從/var/lib/mysql目錄下面轉移到/home/mysql_data/mysql目錄的具體操作: 

1、首先我們需要關閉MySQL,命令如下
service mysqld stop
2、然後是轉移數據,為了安全期間,我們采用復制命令cp,先找到mysql的原目錄
cd /var/lib
ls
運行這個命令之後就會看到mysql的目錄了,然後執行cp命令
cp -a mysql /home/mysql_data/ #這樣就把數據庫復制到/home/mysql_data下面去了

注意:(-a這個參數一定要帶著,否則復制過去的權限就不對了。)

如果數據庫比較大的話,時間會比較長,可能會超時,具體怎麼設置ssh不超時的辦法,請大家自己找相關資料。
3、然後我們修改配置文件,一共有三個,下面我一一說明
修改第一個文件:修改之前先備份cp /etc/my.cnf /etc/my.cnfbak
vi /etc/my.cnf
打開之後修改datadir的目錄為/home/mysql_data/mysql
把socket改成/home/mysql_data/mysql/mysql.sock #為了安全起見,你可以把原來的注釋掉,然後重新加入一行,改成現在的目錄。
==================================================================================
修改第二個文件:修改之前先備份 cp /etc/init.d/mysqld /etc/init.d/mysqldbak
vi /etc/init.d/mysqld
注意:准確的位置是/etc/rc.d/init.d/mysqld,由於這裡這裡有一個/etc/init.d到/etc/rc.d/init.d的映射,
所以用上面的命令即可,也簡單。
把其中datadir=/var/lib/mysql一行中,等號右邊的路徑改成你現在的實際存放路徑:/home/mysql_data/mysql
=================================================================================
修改第三個文件:修改之前先備份 cp /usr/bin/mysqld_safe /usr/bin/mysqld_safebak
vi /usr/bin/mysqld_safe
這裡也是修改datadir的目錄為/home/mysql_data/mysql
==================================================================================
4、下面需要建立一個mysql.sock的鏈接
ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock
系統運維 溫馨提醒:qihang01原創內容版權所有,轉載請注明出處及原文鏈接

至此所有的修改都完成了,下面啟動mysql
service mysqld start
或者重啟linux
reboot
如果能正常啟動,說明修改成功。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved