MySQL移动数据库位置

来源:互联网 发布:养生软件下载 编辑:程序博客网 时间:2024/06/05 09:47

需求:MySQL数据库文件原位置:/var/lib/mysql 要移动至:/data/


   1、首先在/data目录下创建一个名为:mysql_data的文件名:

# mkdir /data/mysql_data# chown -R mysql:mysql /data/mysql_data# chmod -R 755 /data/mysql_data

   

   2、停止所有MySQL服务:

# service httpd stop# service mysqld stop# netstat -an |grep 3306    //查看mysql服务是否已经停止


   3、拷备/var/lib/mysql下所的文件到/data/目录下:

# mv /var/lib/mysql /data/mysql_data

    

   4、修改配置文件:

# vim /etc/my.cnf[mysqld]#datadir=/var/lib/mysql            //原路径datadir=/data/mysql_data/mysql            //修改后的路径#socket=/var/lib/mysql/mysql.sock    //原sock路径socket=/data/mysql_data/mysql/mysql.sock    //修改后的sock路径user=mysql# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid


   5、修改启动脚本:

# vim /etc/init.d/mysqld#get_mysql_option mysqld datadir "/var/lib/mysql"        //原sock路径get_mysql_option mysqld datadir "/data/mysql_data/mysql"    //修改后的sock路径

    

   6、启动MySQL服务:

# service mysqld start# service httpd start# mysql -uroot -p                    //测试是否可以正常登录;ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)                                                              //如果出现该错误,请执行以下操作:                                    # ln -s /data/mysql_data/mysql/mysql.sock /var/lib/mysq/mysql.sock

   7、执行完以上操作,数据库文件的迁移工作就已经做完了。


   8、如果进行zabbix报错或表显示不正常,查看下Mysql日志,看看是不是表在移动时坏掉了,如果是表坏了,进入mysql中使用以下语句修复下表,就OK了

    

#service zabbix_server stop        //关闭zabbix服务mysql> use zabbix;mysql> repair table 表名;            //修复表bye# service zabbix_server start# service zabbix_server status


本文出自 “Elephant” 博客,请务必保留此出处http://zlyang.blog.51cto.com/1196234/1726029

0 0
原创粉丝点击