CentOS 更改MySQL數據庫目錄位置

原文鏈接:https://www.cnblogs.com/dsphper/p/4288236.html

CentOS 更改MySQL數據庫目錄位置

由於MYSQL的數據庫太大,默認安裝的“/var”盤已經再也無法容納新增加的數據,沒有辦法,只能想辦法轉移數據的目錄。

以下是將MYSQL數據庫默認安裝目錄從“/var/lig/mysql”目錄轉移到“/home/mysql_data/”目錄具體操作流程:

通過用”YUM”安裝“MYSQL”數據庫,安裝目錄爲默認路徑:”/var/lib/mysql”

啓動“MYSQL”數據庫

[root@localhost ~]#service mysqld start

設置“MYSQL”數據庫登錄密碼

[root@localhost ~]#mysqladmin –uroot password 123

 

登錄測試“MYSQL”可否正常登錄

[root@localhost ~]#mysql –uroot –p123

 

創建所需的測試數據庫

Mysql>create databases ceshi;

Mysql>show databases;

 

進入測試數據庫,創建表

Mysql>use ceshi;

Mysql>create table mytable (name varchar(20),sex char(1),birth date,home varchar(30));

Mysql>show tables;

 

向表裏增加數據

Mysql>insert into mytable values(’zhangsan’,’m’,’1977-05-16’,’china’);

Mysql>insert into mytable values(’lisi’,’m’,’1988-09-25’,’china’);

Mysql>select * from mytable;

 

到此!開始做“MYSQL”數據庫目錄位置的遷移

1. 關閉“MYSQL”

[root@localhost ~]#service mysqld stop

2. 創建遷移後數據庫所要放置的目錄

[root@localhost ~]#mkdir /home/mysql_data

 

3.  轉移數據,把默認安裝目錄【/var/lib/mysql】拷貝的新創建的數據目錄【/home/mysql_data】下

[root@localhost ~]#cd /var/lib

 

[root@localhost lib]#cp  -arp mysql /home/mysql_data

【注:-a這個參數保持原因文件的權限;-r連同目錄一塊複製】 

[root@localhost ~]#cd /home/mysql_data/mysql

 

4. 修改配置文件,一共有三處:

修改第一處文件:修改之前先備份原有文件

[root@localhost ~]#cp /etc/my.cnf /etc/my.cnfbak

修改數據存放目錄:

原來存放路徑:【datadir=/var/lib/mysql】 

è

現在存放路徑:【 datadir=/home/mysql_data/mysql】

 

原來存放路徑:【socket=/var/lib/mysql/mysql.sock】

 è

 現在存放路徑:【socket=/home/mysql_data/mysql/mysql.sock】

【注:爲了安全,可以將原來的註釋掉,重新加入一行。】

[root@localhost ~]#vim /etc/my.cnf

 

5. 修改第二個文件:修改之前先備份原有文件

[root@localhost ~]#cp /etc/init.d/mysqld /etc/init.d/mysqldbak

修改數據目錄:

原來存放路徑【/var/lib/mysql】

è 

現在存放路徑【/home/mysql_data/mysql】

【注:準確的位置是/etc/rc.d/init.d/mysqld,由於這裏這裏有一個/etc/init.d到/etc/rc.d/init.d的映射,】

[root@localhost ~]#vim /etc/init.d/mysqld

 

 

6. 修改第三處文件:修改之前先備份原有文件

[root@localhost ~]#cp /usr/bin/mysqld_safe /usr/bin/mysqld_safebak

修改數據目錄:

原來存放路徑【/var/lib/mysql】

è 

現在存放路徑【/home/mysql_data/mysql】

[root@localhost ~]#vim /usr/bin/mysqld_safe

 

 

7. 啓動“MYSQL”服務

[root@localhost ~]#service mysqld start

 

8. 啓動“MYSQL”服務後需要建立一個mysql.sock的鏈接:

Ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock

 

9. 查看進程“MYSQL”運行的是否爲修改後的路徑

[root@localhost ~]#ps –ef | grep mysql

 

測試可否正常登錄數據庫

[root@localhost ~]#mysql  -uroot -p 

 

10.  測試向表中插入數據:

插入數據前“mytable”表中的數據

Mysql>select * from mytable;

 

向“mytable”表中插入一條新數據

Mysql>insert into mytable values (’wangwu’,’m’,’1985-09-15’,’china’);

 

11.  最後修改下數據庫的權限

[root@localhost ~]# chown -R mysql:mysql /home/data/mysql/  

注: 改變數據庫的歸屬爲mysql

[root@localhost ~]# chmod 700 /home/data/mysql/test/  

注: 改變數據庫目錄屬性爲700
[root@localhost ~]# chmod 660 /home/data/mysql/test/*  

注: 改變數據庫中數據的屬性爲660

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章