linux修改mysql数据库文件的路径

510 查看

mysql更改数据文件的存放路径感觉直接把/etc/my.cnf中的datadir改一下重启一下服务就行,但是从网上搜了n多资料,大部分都是更改my.cnf中的datadir及sock及启动脚本/etc/rc.d/init/mysqld中的datadir,按照网上提供的方案好像都不行,有没有大侠给个肯定的说法

其实只是要做两件事情:一个是mv一下socket和data的目录。也就是将其从原来的目录移动到指定的位置;第二,就是修改配置文件,假如直接是用mysql/bin下面的命令启动的话,直接改my.cnf就可以了,也就是把ocket和data的目录改到你移到的位置,如果是要它在开机的时候可以自动启动服务或是使用service启动的话,估计需要修改/etc/rc.d/init/mysqld中的datadir。

还有一个:

首先在数据库里看一下数据库里当前数据文件的存放路径:
复制代码 代码如下:

mysql> show variables like '%dir%';
+----------------------------+----------------------------+
| Variable_name | Value |
+----------------------------+----------------------------+
| basedir | / |
| character_sets_dir | /usr/share/mysql/charsets/ |
| datadir | /data/mysql/ |
| innodb_data_home_dir | |
| innodb_log_arch_dir | |
| innodb_log_group_home_dir | ./ |
| innodb_max_dirty_pages_pct | 90 |
| slave_load_tmpdir | /tmp/ |
| tmpdir | /tmp/ |
+----------------------------+----------------------------+

如果你觉得这个路径可以的话,就不用去修改了。如果觉得不满意的话,也可以修改。

1:service mysql stop

关闭数据库

2:vi /etc/rc.d/init.d/mysql

3: 把 datadir=/var/lib/mysql 这里改成你想要的。就OK了

4:service mysql start

如何改变MySQL数据文件路径