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

linux MySQL數據庫位置變更及更改庫名

編輯:MySQL綜合教程

 

Linux環境下:MySQL默認的數據文件存儲目錄為/var/lib/mysql。今天想干兩件事,把庫改名(測試了三種方法),另外就是更改MySQL數據庫目錄位置。 庫改名:1、RENAME DATABASE zhoz_db to zhoz_db_bak
mysql> RENAME DATABASE zhoz_db to zhoz_db_bak; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATABASE test to test_bak' at line 1 報錯,網上查了下好像在mysql6環境下可以。測試環境為mysql5。
2、mv /var/lib/mysql/zhoz_db /var/lib/mysql/zhoz_db_bak 成功執行,也改了名。但是進入phpMyAdmin下發現有這個庫,但顯示不了表。 其實單獨操作改名,是不行的。相應的表也需要作更改操作。當然,如果僅作備份來用,是可以的。
3、兩全其美的方法: 在phpMyAdmin下操作: 選擇要改名的庫→點右上角的[操作]→重新命名數據庫為:「zhoz_db_bak」→執行更改MySQL數據庫目錄位置:MySQL默認的數據文件存儲目錄為/var/lib/mysql,目標移到/home/zhozcom_data下:
1、home目錄下建立data目錄:cd /home mkdir zhozcom_data
2、把MySQL服務進程停掉:mysql -u root -p shutdown
3、把/var/lib/mysql整個目錄移到/home/zhozcom_data mv /var/lib/mysql /home/zhozcom_data/
這樣就把MySQL的數據文件移動到了/home/zhozcom_data/mysql下
4、找到my.cnf配置文件 如果/etc/目錄下沒有my.cnf配置文件,請到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個到/etc/並改名為my.cnf中。 命令如下:[root@test1 mysql]# cp /usr/share/mysql/my.cnf /etc/my.cnf
5、編輯MySQL的配置文件/etc/my.cnf 為保證MySQL能夠正常工作,需要指明mysql.sock文件的產生位置。 修改socket=/var/lib/mysql/mysql.sock的值為:socket=/home/zhozcom_data/mysql.sock 操作如下:[root@zhoz etc]# vi  my.cnf # The MySQL server[mysqld]  port = 3306#socket  = /var/lib/mysql/mysql.sock (原內容,通常為了安全用#注釋此行)socket  = /home/zhozcom_data/mysql/mysql.sock (加上此行)
6、修改MySQL啟動腳本/etc/init.d/mysql 修改MySQL啟動腳本/etc/init.d/mysql: 把其中datadir=/var/lib/mysql修改成現在的路徑:datadir=/home/zhozcom_data/mysql。 方法:[root@zhoz etc]# vi /etc/init.d/mysql #datadir=/var/lib/mysql(注釋此行)datadir=/home/data/mysql (加上此行)
7、重新啟動MySQL服務/etc/init.d/mysql start
一切OK了,不行的話就查看權限:drwxr-xr-x 目錄。重啟庫也是需要的。  

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