CentOS Linux更改MySQL数据库目录位置具体操作

 更新时间:2013年01月25日 16:05:11   作者:  
由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录,本文整理了一些MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作,感兴趣的你可不要走开啊
引言
由于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
如果能正常启动,说明修改成功。

相关文章

  • 解决阿里云ECS服务器下安装MySQL无法远程连接的问题

    解决阿里云ECS服务器下安装MySQL无法远程连接的问题

    这篇文章介绍了解决阿里云ECS服务器安装MySQL无法远程连接的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • MySQL 数据持久化过程讲解

    MySQL 数据持久化过程讲解

    这篇文章主要介绍了MySQL 数据持久化过程讲解,文章围绕主题展开详细的内容介绍,具有一定的参考价值, 需要的朋友可以参考一下,希望对你的学习有所帮助
    2022-07-07
  • Ubuntu Server下MySql数据库备份脚本代码

    Ubuntu Server下MySql数据库备份脚本代码

    为了mysql数据库的安全,我们需要定时备份mysql数据库,这里提供下脚本代码,需要的朋友可以参考下
    2013-06-06
  • mysql主从同步原理及应用场景示例详解

    mysql主从同步原理及应用场景示例详解

    这篇文章主要为大家介绍了mysql主从同步原理及应用场景示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解决方法

    MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errc

    File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22) Character set ‘#33′ is not a compiled character set and is not specified in the ‘c:\mysql\share\charsets\Index’ file
    2013-08-08
  • MySQL本地版本升级超详细教程(从5.5.20升到8.0.21)

    MySQL本地版本升级超详细教程(从5.5.20升到8.0.21)

    MySQL是一款广泛使用的关系型数据库管理系统,但是旧版本的客户端可能会受到一些限制,下面这篇文章主要给大家介绍了关于MySQL本地版本升级超详细教程,本文是从5.5.20升到8.0.21的相关资料,需要的朋友可以参考下
    2023-04-04
  • MySQL中SQL命令语句条件查询实例详解

    MySQL中SQL命令语句条件查询实例详解

    SELECT语句可以通过WHERE条件来设定查询条件,查询结果是满足查询条件的记录,下面这篇文章主要给大家介绍了关于MySQL中SQL命令语句条件查询的相关资料,需要的朋友可以参考下
    2022-11-11
  • MySQL数据库索引的弊端及合理使用

    MySQL数据库索引的弊端及合理使用

    索引可以说是数据库中的一个大心脏了,如果说一个数据库少了索引,那么数据库本身存在的意义就不大了,和普通的文件没什么两样,本文从细节和实际业务的角度看看在MySQL中B+树索引好处
    2021-11-11
  • MySQL视图(view)的基本用法及说明

    MySQL视图(view)的基本用法及说明

    这篇文章主要介绍了MySQL视图(view)的基本用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • MySQL锁等待超时问题的原因和解决方案(Lock wait timeout exceeded; try restarting transaction)

    MySQL锁等待超时问题的原因和解决方案(Lock wait timeout exceed

    在数据库开发和管理中,锁等待超时是一个常见而棘手的问题,对于使用 MySQL 的应用程序,尤其是采用 InnoDB 存储引擎的场景,这一问题更是屡见不鲜,本文给大家介绍了MySQL锁等待超时问题的原因和解决方案,需要的朋友可以参考下
    2024-11-11

最新评论