在linux主機(jī)上的默認(rèn)存儲(chǔ)位置為:/var/lib/mysql/下,
專注于為中小企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)柯橋免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了超過千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
如果想更換mysql的數(shù)據(jù)文件的存儲(chǔ)位置,則
freebsd下:
#ds/usr/local/libexec/mysqldstop(停止mysql)
#dsmkdir/other/db(建立新的數(shù)據(jù)文件目錄,也可以直接移動(dòng)過來)
#dsmv/var/db/mysql/other/db(移動(dòng)數(shù)據(jù)文件)
#dsln-s/other/db/mysql/var/db/mysql(建立數(shù)據(jù)文件的軟鏈接)
#ds/usr/local/libexec/mysqldstart(啟動(dòng)mysql)ok!linux下:(linux下經(jīng)過測(cè)試,可以不用停止musql而直接操作,不過如果是經(jīng)常更新的數(shù)據(jù)庫還是先停止的好,停止的方法在此就不介紹了?。?/p>
#mkdir/other/db(建立新的數(shù)據(jù)文件目錄,也可以直接移動(dòng)過來)
#mv/var/db/mysql/other/db(移動(dòng)數(shù)據(jù)文件)
#ln-s/other/db/mysql/var/db/mysql(建立數(shù)據(jù)文件的軟鏈接)
如果您的操作用戶不是mysql,例如root用戶操作,那可能mysql對(duì)新建立的數(shù)據(jù)文件夾沒有讀取權(quán)限,還有chown,或者是chgrp,chmod才可以!
一.首先把mysql的服務(wù)先停掉。
二.更改MySQL配置文件My.ini中的數(shù)據(jù)庫存儲(chǔ)主路徑
打開MySQL默認(rèn)的安裝文件夾C:\Program Files\MySQL\MySQL Server 5.1中的my.ini文件,點(diǎn)擊記事本頂部的“編輯”,“查找”,在查找內(nèi)容中輸入datadir后并點(diǎn)擊“查找下一個(gè)”轉(zhuǎn)到“Path to the database root數(shù)據(jù)庫存儲(chǔ)主路徑”參數(shù)設(shè)置,找到datadir="C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/"即是默認(rèn)的數(shù)據(jù)庫存儲(chǔ)主路徑設(shè)置,現(xiàn)將它改到C:\mysql\data(你希望的)文件夾,正確的設(shè)置是datadir="C:/mysql/data/"。
更改完成后點(diǎn)擊菜單欄的“文件”,再點(diǎn)擊“保存”。
三.將老的數(shù)據(jù)庫存儲(chǔ)主路徑中的數(shù)據(jù)庫文件和文件夾復(fù)制到新的存儲(chǔ)主路徑
將C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/文件夾中的所有文件和文件夾拷貝到你新建的文件夾目錄下。
四.重啟MySQL服務(wù)
五.驗(yàn)證更改數(shù)據(jù)庫存儲(chǔ)主路徑的操作是否成功
MySQL默認(rèn)的數(shù)據(jù)文件存儲(chǔ)目錄為/var/lib/mysql。假如要把MySQL目錄移到/home/data下需要進(jìn)行下面幾步:\x0d\x0a1、home目錄下建立data目錄\x0d\x0acd /home\x0d\x0amkdir data\x0d\x0a2、把MySQL服務(wù)進(jìn)程停掉\x0d\x0amysqladmin -u root -p shutdown\x0d\x0a3、把/var/lib/mysql整個(gè)目錄移到/home/data\x0d\x0amv /var/lib/mysql /home/data/\x0d\x0a這樣就把MySQL的數(shù)據(jù)文件移動(dòng)到了/home/data/mysql下。\x0d\x0a4、找到my.cnf配置文件\x0d\x0a如果/etc/目錄下沒有my.cnf配置文件,請(qǐng)到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個(gè)到/etc/并改名為my.cnf)中。命令如下:\x0d\x0a\x0d\x0a[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf\x0d\x0a\x0d\x0a5、編輯MySQL的配置文件/etc/my.cnf\x0d\x0a為保證MySQL能夠正常工作,需要指明mysql.sock文件的產(chǎn)生位置。修改socket=/var/lib/mysql/mysql.sock一行中等號(hào)右邊的值為:/home/mysql/mysql.sock。操作如下:\x0d\x0a\x0d\x0avi my.cnf (用vi工具編輯my.cnf文件,找到下列數(shù)據(jù)修改之)\x0d\x0a# The MySQL server\x0d\x0a[mysqld]\x0d\x0aport = 3306\x0d\x0a#socket = /var/lib/mysql/mysql.sock(原內(nèi)容,為了更穩(wěn)妥用“#”注釋此行)\x0d\x0asocket = /home/data/mysql/mysql.sock (加上此行) \x0d\x0a\x0d\x0a6、修改MySQL啟動(dòng)腳本/etc/init.d/mysql\x0d\x0a最后,需要修改MySQL啟動(dòng)腳本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等號(hào)右邊的路徑改成你現(xiàn)在的實(shí)際存放路徑:home/data/mysql。\x0d\x0a\x0d\x0a[root@test1 etc]# vi /etc/init.d/mysql\x0d\x0a#datadir=/var/lib/mysql(注釋此行)\x0d\x0adatadir=/home/data/mysql (加上此行) \x0d\x0a\x0d\x0a7、重新啟動(dòng)MySQL服務(wù)\x0d\x0a\x0d\x0a/etc/init.d/mysql start\x0d\x0a\x0d\x0a或用reboot命令重啟Linux\x0d\x0a如果工作正常移動(dòng)就成功了,否則對(duì)照前面的7步再檢查一下。\x0d\x0a還要注意目錄的屬主和權(quán)限。
4.4.4修改字段排列位置
語句格式:ALTER TABLE 表名 MODIFY 字段名?數(shù)據(jù)類型FIRST|AFTER 字段名2;
此語句從格式上看比上面的修改字段數(shù)據(jù)類型語句多了一個(gè)參數(shù),即在上面的修改字段數(shù)據(jù)類型語句的最后增加了一個(gè)字段位置參數(shù),這個(gè)字段位置參數(shù)可以選擇“FIRST”或“AFTER 字段名2”中的一個(gè)。當(dāng)選擇“FIRST”參數(shù)時(shí)表示將指定字段調(diào)至第一個(gè)字段;當(dāng)選擇“AFTER 字段名2”時(shí)表示將指定字段調(diào)至“字段名2”所指字段的后面。
下面截圖中的“ALTER TABLE”語句將t_dept表中l(wèi)oc字段的位置由原來第三的位置調(diào)至了第一。
假如要把目錄移到/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?。由洗诵校?/p>
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)限。