现在的位置: 首页 > 综合 > 正文

ubuntu 更改mysql新建的数据库存放位置

2017年11月17日 ⁄ 综合 ⁄ 共 834字 ⁄ 字号 评论关闭

     mysql默认是存储在/var/lib/mysql目录下的,这个路径是在mysql的配置文件/etc/my.cnf中进行设置的。现在我想改变数据库的保存目录为/root/mysql/db_save_pos/。于是,我将/etc/my.cnf文件中的datadir=/var/lib/mysql  一行改为:datadir=/root/mysql/db_save_pos,接着关闭mysql,并把/var/lib/mysql目录下的所有文件拷贝到新目录下。然后重新启动mysql,却出现了错误,错误提示为:
Starting MySQL.Manager of pid-file quit without updating fi[失败] 。

     于是我上网搜索解决方法:

     方法1:需要注释/etc/my.cnf里的skip-federated。但是我的/etc/my.cnf里并没有skip-federated。失败。

     方法2:杀掉mysqld和mysqld_safe两个进程,但是我的这两个进程已经不存在了。失败。(www.002pc.com)

     方法3:到/var/log/mysql.log中查看日志信息,但是也没有看出问题。失败。

     方法4:首先将/var/lib/mysql目录下所有文件拷贝到/root/mysql/db_save_pos下,然后将/var/lib/mysql目录删除,接下来建立软连接,命令如下:

ln -s  /root/mysql/db_save_pos  /var/lib/mysql ,这样在/var/lib目录下就产生一个软连接到我指定的目录下。注意这个方法中并不需要更改 /etc/my.cnf 文件。然后重新启动mysql,但是还是启动失败。这是因为mysql对我这个新建的文件夹没有执行权限,我通过下列命令: chmod 777 -R  /root ,增加mysql对/root下的目录的执行权限。然后再启动mysql,success!

抱歉!评论已关闭.