天天看點

linux mysql 更改MySQL資料庫目錄位置

MySQL預設的資料檔案存儲目錄為/var/lib/mysql。假如要把目錄移到/home/data下需要進行下面幾步:

  1、home目錄下建立data目錄

  cd/home

  mkdirdata

  2、把MySQL服務程序停掉:

  mysqladmin-uroot-pshutdown

  3、把/var/lib/mysql整個目錄移到/home/data

  mv/var/lib/mysql /home/data/

  這樣就把MySQL的資料檔案移動到了/home/data/mysql下

  4、找到my.cnf配置檔案

  如果/etc/目錄下沒有my.cnf配置檔案,請到/usr/share/mysql/下找到*.cnf檔案,拷貝其中一個到/etc/并改名為my.cnf)中。指令如下:

  [root@test1mysql]#cp/usr/share/mysql/my-medium.cnf /etc/my.cnf

  5、編輯MySQL的配置檔案/etc/my.cnf

  為保證MySQL能夠正常工作,需要指明mysql.sock檔案的産生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右邊的值為:/home/mysql/mysql.sock。操作如下:

  vi my.cnf   (用vi工具編輯my.cnf檔案,找到下列資料修改之)

  #TheMySQLserver

   [mysqld]

   port   =3306

   #socket =/var/lib/mysql/mysql.sock(原内容,為了更穩妥用“#”注釋此行)

   socket =/home/data/mysql/mysql.sock   (加上此行)

[mysql]

socket=/tmp/mysql.sock

或者還可以通過修改php.ini中的配置來使php用其他的mysql.sock來連,這個大家自己去找找  6、修改MySQL啟動腳本/etc/init.d/mysql

  最後,需要修改MySQL啟動腳本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右邊的路徑改成你現在的實際存放路徑:home/data/mysql。

  [root@test1etc]#vi /etc/init.d/mysql

  #datadir=/var/lib/mysql    (注釋此行)

  datadir=/home/data/mysql  (加上此行)

  7、重新啟動MySQL服務

  /etc/init.d/mysql start

  或用reboot指令重新開機Linux

  如果工作正常移動就成功了,否則對照前面的7步再檢查一下。

還要注意目錄的屬主和權限。