A-A+

CentOS更改MySQL存储目录位置

2012年10月10日 MYSQL 评论 1 条 阅读 3,072 次
如果您有代购或者代维服务器、PHP网站建设、程序代码修改、系统开发等需求,可以联系我购买付费服务。QQ 379880222

mysql默认的数据文件存储目录为/var/lib/mysql
假如要把目录移到/home/mysqldata下需要进行下面几步:

1、home目录下建立mysqldata目录
cd /home
mkdir mysqldata

2、停止mysql进程
mysql -u root -p shutdown

3、把/var/lib/mysql整个目录移到/home/mysqldata
mv /var/lib/mysql /home/mysqldata/
这样MySQL的数据文件就移动到了/home/mysqldata/mysql下

4、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/找到my-medium*.cnf文件,拷贝到/etc/并改名为my.cnf
命令如下:
[root@lxy mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

5、编辑/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock
socket=/home/mysqldata/mysql/mysql.sock
操作如下:
vi   my.cnf  (用vi工具编辑my.cnf文件,找到下列数据修改之)
# The MySQL server[mysqld] 
port = 3306
#socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
socket  = /home/mysqldata/mysql/mysql.sock (加上此行)

6、修改MySQL启动脚本/etc/init.d/mysql
把其中datadir=/var/lib/mysql一行中修改成现在的实际存放路径:home/mysqldata/mysql
[root@lxy etc]# vi /etc/init.d/mysql
#datadir=/var/lib/mysql(注释此行)
datadir=/home/mysqldata/mysql (加上此行)

最后做一个mysql.sock 链接:
ln -s /home/mysqldata/mysql/mysql.sock /var/lib/mysql/mysql.sock(需要从/home/mysqldata/mysql下复制一份过来)

7、重新启动MySQL服务
/etc/init.d/mysqld start
或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。

8、最后修改下数据库的权限
[root@localhost ~]# chown -R mysql:mysql /home/mysqldata/mysql/  ← 改变数据库的归属为mysql
[root@localhost ~]# chmod 700 /home/mysqldata/mysql/test/  ← 改变数据库目录属性为700
[root@localhost ~]# chmod 660 /home/mysqldata/mysql/test/*  ← 改变数据库中数据的属性为660

9、全部搞定!

标签:

1 条留言  访客:0 条  博主:0 条   引用: 1 条

来自外部的引用: 1 条

  • Mysql启动报错’./mysql-bin.index’ not found的解决方案 | 恋香缘

给我留言