mysql如何更改数据库文件目录?

发布时间:2020-03-21编辑:脚本学堂
有关更改mysql数据库文件目录的方法,将mysql数据文件目录从原目录(/var/lib/mysql)转移到空间较大的home目录下,具体方法见文中介绍。

问题描述:
Ubuntu系统,当初划分/根目录下15G空间,目前mysql数据文件已达近3G,决定将其从原目录(/var/lib/mysql)转移到空间较大的home目录下。

1. 创建目标数据文件夹(如:/home/flyer0126/data/MySQLdb),并复制数据文件
 

cd  ~ 
mkdir data/mysql 
cp -r /var/lib/mysql  ~/data/mysqldb/ 

2. 修改mysql配置文件my.cnf
# vim /etc/mysql/my.cnf  
 
将datadir = /var/lib/mysql  
改为 datadir = /home/flyer0126/data/mysqldb/mysql 

3. 修改文件夹权限
 

# chown -R mysql:mysql /home/flyer0126/data/mysqldb/mysql/   ← 改变数据库文件目录的归属为mysql 

4. 修改usr.sbin.mysqld
# sudo vim /etc/apparmor.d/usr.sbin.mysqld 
把 
 

/var/lib/mysql r, 
/var/lib/mysql/** rwk, 
 

  
改成 
 

/home/flyer0126/data/mysqldb/mysql/  r, 
/home/flyer0126/data/mysqldb/mysql/** rwk, 
 

注意,无此步骤的话,mysql重启报错,类似找不到“Can't open the mysql.plugin table.”等,导致启动失败。

5. 重启服务
 

#sudo /etc/init.d/apparmor restart 
#sudo /etc/init.d/mysql restart

mysql数据库文件目录移动完成。