如何更改MySQL數(shù)據(jù)庫目錄位置

字號(hào):


    MySQL默認(rèn)的數(shù)據(jù)文件存儲(chǔ)目錄為/var/lib/mysql。假如要把MySQL目錄移到/home/data下需要進(jìn)行下面幾步:
    1、home目錄下建立data目錄
    cd /home
    mkdir data
    2、把MySQL服務(wù)進(jìn)程停掉
    mysqladmin -u root -p shutdown
    3、把/var/lib/mysql整個(gè)目錄移到/home/data
    mv /var/lib/mysql /home/data/
    這樣就把MySQL的數(shù)據(jù)文件移動(dòng)到了/home/data/mysql下。
    4、找到my.cnf配置文件
    如果/etc/目錄下沒有my.cnf配置文件,請(qǐng)到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個(gè)到/etc/并改名為my.cnf)中。命令如下:
    [root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
    5、編輯MySQL的配置文件/etc/my.cnf
    為保證MySQL能夠正常工作,需要指明mysql.sock文件的產(chǎn)生位置。修改socket=/var/lib/mysql/mysql.sock一行中等號(hào)右邊的值為:/home/mysql/mysql.sock。操作如下:
    vi  my.cnf  (用vi工具編輯my.cnf文件,找到下列數(shù)據(jù)修改之)
    # The MySQL server
    [mysqld]
    port = 3306
    #socket  = /var/lib/mysql/mysql.sock(原內(nèi)容,為了更穩(wěn)妥用“#”注釋此行)
    socket  = /home/data/mysql/mysql.sock (加上此行)
    6、修改MySQL啟動(dòng)腳本/etc/init.d/mysql
    最后,需要修改MySQL啟動(dòng)腳本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等號(hào)右邊的路徑改成你現(xiàn)在的實(shí)際存放路徑:home/data/mysql。
    [root@test1 etc]# vi /etc/init.d/mysql
    #datadir=/var/lib/mysql(注釋此行)
    datadir=/home/data/mysql (加上此行)
    7、重新啟動(dòng)MySQL服務(wù)
    /etc/init.d/mysql start
    或用reboot命令重啟Linux
    如果工作正常移動(dòng)就成功了,否則對(duì)照前面的7步再檢查一下。
    還要注意目錄的屬主和權(quán)限。
    【相關(guān)文章】
    輕松接觸MySQL數(shù)據(jù)庫支持的3個(gè)引擎如何在MySQL數(shù)據(jù)庫中定義外鍵分析MySQL的數(shù)據(jù)類型以及建庫策略