天天看点

SUSE 企业版 11 更改MYSQL安装目录(经过实测)

     前段时间服务器上的数据库在分区没做好,担心以后mysql数据量太大,所以准备更换mysql安装目录,网上查了下资料,多是转载文章,好多没有实测,因为要用在生产环境中,所以我经过在虚拟机上测试成功,总结了点东西。分享出来希望对大家有帮助。大家都知道Mysql 默认的数据文件存储目录为/var/lib/mysql。而我们要把目录移动到/home/data下需要进行下面几步:

1.在home目录下建立data目录

Suse#cd home

suse:/home #mkdir data

关闭mysql服务进程

Suse#mysqladmin –u root –p shutdown

2.复制mysql 目录

Suse#cd /var/lib

    #cp -a mysql  /home/data/  

//个人认为此处用复制较好,网上好多文档都用mv命令,在实测过时,使用mv没有成功。如果不是在生产环境下大家可以试一试。

3.修改my.cnf配置文件

一般安装的时候,在/etc/目录下会有my.cnf这个文件,如果没有这个文件到/usr/share/mysql下找到*.cnf文件。拷贝其中的一个到

4./etc目录下,并修改名字为my.cnf.

Suse# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

     编辑my.cnf文件 suse#vi /etc/my.cnf,找到21行和28行,将原来一行的文件删除或者通过“#”注释掉,改为现在的:

      socket         = /home/data/mysql/mysql.sock

5.修改mysql 启动脚本/etc/init.d/mysql

Suse#vi /etc/init.d/mysql

或者删除或者注释后添加一行

datadir=/home/data/mysql 

6.重新启动mysql服务

Suse#/etc/init.d/mysql start,

或者suse#service mysql start

7.测试

suse:~ # mysql -u root -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 8 to server version: 5.0.22-standard-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

结束语:

   如果第一次更改目录后失败,不用担心。仔细检查刚才的配置,如果没问题,就时光倒流一次,把刚才修改的配置文件恢复为默认的配置,把/home/data删除,重新启动一次mysql服务。如果成功,则继续按照上面步骤做一次,只要步骤正确,肯定会成功。

此实验全部是在SUSE 11 企业版上操作,如果是其他版本可能会有不同。