admin

Mysql 数据库存储位置迁移
很多时候,安装Mysql的时候没有考虑到服务器的磁盘空间问题,把Mysql安装到了任意位置,然后使用到某天发现数据...
扫描右侧二维码阅读全文
24
2018/11

Mysql 数据库存储位置迁移

很多时候,安装Mysql的时候没有考虑到服务器的磁盘空间问题,把Mysql安装到了任意位置,然后使用到某天发现数据库连不上了,报错No space left on device。很明显,这是服务器磁盘不够了,如果这是由于Mysql的数据文件存储路径的空间不够了,那么可以将Mysql的数据迁移到其他位置去,如果是整个服务器的磁盘满了,那就只能删掉一些无用文件或者升级服务器硬盘了。
下面来介绍下如何迁移Mysql的数据文件。
首先查看Mysql的数据文件存储位置,vim my.cnf可以查看得到,如果my.cnf配置文件中没有配置,那么就用以下sql命令查看:

show variables like 'datadir';

我这里是/data/mysql/mysql3306/
接下来就是复制或者移动该目录下的数据库文件了,我这里把它迁移到/home目录下去,首先新建数据库文件目录:

# mkdir /home/mysql_data

然后复制文件:

# cp /data/mysql/mysql3306/* /home/mysql_data

数据文件比较大的话可能时间会比较长,耐心等待。

数据迁移完了然后修改数据库存储目录的权限:

# chown mysql:mysql -R /home/mysql_data

如果不进行如上的修改,在重启Mysql的时候会报下面的错误:

Starting MySQL. ERROR! The server quit without updating PID file (/var/mysql/mysql3306/info/mysqld.pid).

上面修改完了权限下面还要修改my.cnf/etc/init.d/mysqld(我这里里面没有配置,所以可以不改)中的存储路径:

datadir=/home/mysql_data

重启Mysql(我这里是CentOS):

# service mysqld restart
Last modification:November 24th, 2018 at 10:00 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment