引言:
由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录。
下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作:
1、首先我们需要关闭MySQL,命令如下:
service mysqld stop
2、然后是转移数据,为了安全期间,我们采用复制命令cp,先找到mysql的原目录
cd /var/lib
ls
运行这个命令之后就会看到mysql的目录了,然后执行cp命令
cp -a mysql /home/mysql_data/ #这样就把数据库复制到/home/mysql_data下面去了
注意:(-a这个参数一定要带着,否则复制过去的权限就不对了。)
如果数据库比较大的话,时间会比较长,可能会超时,具体怎么设置ssh不超时的办法,请大家自己找相关资料。
3、然后我们修改配置文件,一共有三个,下面我一一说明:
修改第一个文件:修改之前先备份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
==================================================================================
4、下面需要建立一个mysql.sock的链接:
ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock
系统运维 温馨提醒:qihang01原创内容版权所有,转载请注明出处及原文链接
至此所有的修改都完成了,下面启动mysql
service mysqld start
或者重启linux
reboot
如果能正常启动,说明修改成功。
CentOS Linux更改MySQL数据库目录位置具体操作
2019-12-16 15:07MYSQL教程网 Mysql
由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录,本文整理了一些MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作,感兴趣的你可不要走开啊
延伸 · 阅读
- 2019-12-16MYSQL删除表中的指定ID数据
- 2019-12-16查看修改mysql编码方式让它支持中文(gbk或者utf8
- 2019-12-16MySQL表字段设置默认值(图文教程及注意细节)
- 2019-12-16修改mysql5.5默认编码(图文步骤修改为utf-8编码)
- 2019-12-16MySQL性能优化的一些技巧帮助你的数据库
- 2019-12-16mysql中Table is read only的解决方法小结
- Mysql
MySQL/MariaDB的Root密码重置教程
这篇文章主要给大家介绍了关于MySQL/MariaDB的Root密码重置的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值...
- Mysql
关于SQL嵌套的误解分析
之前我曾一直以为:就是在sql语句嵌套时,嵌套查询的约束和外层的约束是没有关系的。 ...
- Mysql
mysql unsigned 用法及相减出现补数溢出解决方法
unsigned表示无符号的意思,也就是非负数,只用于整型并且unsigned 是MYSQL自定义的类型,非标准SQL。用途1是红苕说的起到约束数值的作用,2是可以增加数值...
- Mysql
mysql合并多条记录的单个字段去一条记录编辑
mysql怎么合并多条记录的单个字段去一条记录,今天在网上找了一下,方法如下 ...
- Mysql
Centos7.5安装mysql5.7.24二进制包方式部署
这篇文章主要介绍了Centos7.5安装mysql5.7.24二进制包方式部署,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...
- Mysql
mysql如何按照中文排序解决方案
本文将详细介绍mysql如何按照中文排序解决方案,需要的朋友可以参考下 ...
- Mysql
win2003 安装2个mysql实例做主从同步服务配置
注意的就是路径的正确书写。然后在my.ini的配置中,server_id必须保持唯一性。port避免使用3306,服务名称和mysql5.1不一样即可。 ...
- Mysql
mysql中索引使用不当速度比没加索引还慢的测试
mysql的索引使用不当速度比没加索引还慢,我们举个例子来解释一下。 ...