方法一:
參照windows下的方法,把/var/lib/mysql移到需要的目錄,再修改/etc/my.cnf檔案,指定資料目錄。這方面的教程網上很多,大家可以去搜尋一下。
停掉Mysql服務
在my.ini的[mysqld]裡有三個設定,路徑改成移動之後的路徑
| 代碼如下 |
複製代碼 |
basedir=”D:/MySQL-5.0.15b/” datadir=”D:/MySQL-5.0.15b/data” innodb_data_home_dir=”D:/MySQL-5.0.15b/data” |
重新啟動Mysql服務就好了。
這裡分別對應的就是剛剛移動的那些檔案夾裡面對應的檔案夾和檔案
basedir,會影響bin目錄,影響服務;
datadir,影響資料庫存放路徑;
其中basedir在遷移時一定要設定,否則基本會導致服務不能啟動,ibdata1一般會在data檔案夾的上一層。
另 外innodb的資料檔案ibdata1如果沒有放在預設位置,那麼一定要設定,否則的話服務第一次可以啟動,而且會在應該存放ibdata1的路徑下新 建一個初始的ibdata1檔案,看起來正常,但所有使用innodb儲存引擎的資料庫的資料都會丟失,而且再次重啟時,有可能會無法啟動,或者各種始料 不及的錯誤。
方法二:
使用linux下的軟串連方法,具體操作如下:(以遷移到/home/mysql/目錄為例)
先停止mysql:
| 代碼如下 |
複製代碼 |
/etc/init.d/mysqld stop 移動資料: mv /var/lib/mysql/* /home/mysql/ 建立軟串連: ln -s /home/mysql/ /var/lib/mysql/ 啟動mysql: /etc/init.d/mysqld start |
移動資料:
mv /var/lib/mysql /home/mysql
建立軟串連:
ln -s /home/mysql /var/lib/mysql
這兩句命令的意思是: 將 /var/lib/ 目錄下的 mysql 整個移動到 /home/ 目錄,並保留原始目錄屬性
在 /var/lib/ 目錄下建立個連結到 /home/mysql/ 目錄的軟串連 mysql 目錄.
總結
在網上有很多朋友說了使用
移動資料:
mv /var/lib/mysql/* /home/mysql/
建立軟串連:
ln -s /home/mysql/ /var/lib/mysql/
大家需要注意再注意啊,這個種方法不是不可行是不安全。