引言:
因为MySQL的数据库太大,默认安装的/var盘已经再也没法容纳新增长的数据,没有办法,只能想办法转移数据的目录。
下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操做:
系统运维 www.osyunwei.com 舒适提醒:qihang01原创内容©版权全部,转载请注明出处及原文连接
一、首先咱们须要关闭MySQL,命令以下:
service mysqld stop
二、而后是转移数据,为了安全期间,咱们采用复制命令cp,先找到mysql的原目录
cd /var/lib
ls
运行这个命令以后就会看到mysql的目录了,而后执行cp命令
cp -a mysql /home/mysql_data/ #这样就把数据库复制到/home/mysql_data下面去了mysql
注意:(-a这个参数必定要带着,不然复制过去的权限就不对了。)
若是数据库比较大的话,时间会比较长,可能会超时,具体怎么设置ssh不超时的办法,请你们本身找相关资料。
三、而后咱们修改配置文件,一共有三个,下面我一一说明:
修改第一个文件:修改以前先备份cp /etc/my.cnf /etc/my.cnfbak
vi /etc/my.cnf
打开以后修改datadir的目录为/home/mysql_data/mysql
把socket改为/home/mysql_data/mysql/mysql.sock #为了安全起见,你能够把原来的注释掉,而后从新加入一行,改为如今的目录。
==================================================================================
修改第二个文件:修改以前先备份 cp /etc/init.d/mysqld /etc/init.d/mysqldbak
vi /etc/init.d/mysqld
注意:准确的位置是/etc/rc.d/init.d/mysqld,因为这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射,
因此用上面的命令便可,也简单。
把其中datadir=/var/lib/mysql一行中,等号右边的路径改为你如今的实际存放路径:/home/mysql_data/mysql
=================================================================================
修改第三个文件:修改以前先备份 cp /usr/bin/mysqld_safe /usr/bin/mysqld_safebak
vi /usr/bin/mysqld_safe
这里也是修改datadir的目录为/home/mysql_data/mysql
==================================================================================
四、下面须要创建一个mysql.sock的连接:
ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock
系统运维 www.osyunwei.com 舒适提醒:qihang01原创内容©版权全部,转载请注明出处及原文连接
linux
至此全部的修改都完成了,下面启动mysql
service mysqld start
或者重启linux
reboot
若是能正常启动,说明修改为功。sql