首页 > 代码库 > linux系统下迁移mysql数据库文件

linux系统下迁移mysql数据库文件

linux下(这里是centos),mysql安装后,数据库的数据默认存放在/var/lib/mysql目录下,如果该目录下挂载的磁盘空间很少,不够用,需要迁移到其他的目录位置。
方法一:
  参照windows下的方法,把/var/lib/mysql移到需要的目录,再修改/etc/my.cnf文件,指定数据目录。这方面的教程网上很多,大家可以去搜索一下。
方法二:
  使用linux下的软连接方法,具体操作如下:(以迁移到/home/mysql/目录为例)

  先停止mysql:
  /etc/init.d/mysqld stop
  移动数据:
  mv /var/lib/mysql /home/mysql
  创建软连接:
  ln -s /home/mysql /var/lib/mysql
  启动mysql:
  /etc/init.d/mysqld start

 

这样做的前提是在未移动mysql的数据库文件时mysql可以正常启动,上面的步骤没有涉及文件属性和属组的修改, 修改属性和属组的方法如下:

chown mysql:mysql /home/mysql -R(上面的步骤不需要这个操作)

 

NOte:如果上面配置之后还出现问题,就把新的数据库文件所在的顶层目录加上mysql:mysql属性和属组

例如:移动到/root/ 或者 是/root/data/目录下面后启动失败,修改/root的属组则可以启动:

[root@localhost lib]# chown mysql:mysql /root/

如果移动到/root/目录下面可以启动,而移动到/root/data目录下面启动失败的话,修改/root/data的属性则可以:

[root@localhost lib]# chown mysql:mysql /root/data

 

经过上面的操作,移动mysql的数据库文件位置后,mysql则可以正常启动了。