Change the MySql data default directory

注意:在操作之前,要先备份好数据库。
默认情况下,MySql的数据库文件位于/var/lib/mysql下。于是想着把现在的数据库文件移动到挂载的硬盘上。找了一些办法,例如一起移动socket,datadir等等。但是移动完成后不能启动。最终找到了一个很完美的方案。

  • 停止Mysql服务

    sudo /etc/init.d/mysql stop
  • 复制现在的数据库文件到新的路径下

    sudo cp -R -p /var/lib/mysql /path/to/new/datadir
  • 更改MySql的配置文件.在my.cnf中查找datadir,将其值更改为新的路径。
  • 修改usr.sbin.mysqld。如不明白为什么修改这个文件,查看一下AppArmor
    sudo vi /etc/apparmor.d/usr.sbin.mysqld

    从/var/lib/mysql到最后,先复制一下。然后将原来的值全部用#注释掉。如果有注释的,最好也加一个注释,这样就会知道哪些注释是默认的,哪些注释是你新添加的。注释完后,在最后一行粘贴刚才复制的内容。并将/var/lib/mysql的值换成新的路径

  • 启动MySql
    sudo service mysql start

发表评论

电子邮件地址不会被公开。

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>