技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> MySQL --> Linux(CentOS)下更改/转移MySQL数据库目录

Linux(CentOS)下更改/转移MySQL数据库目录

浏览:2146次  出处信息

    由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录。网上有很多相关的文章写到转移数据库目录的文章,不过大部分都是相互之间转载的,而且转载的过程中还会有一些错误,因为大部分人根本就没测试过,所以错误也就顺便一块转载过来了,下面我简单整理一下这几天把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql下面具体操作。

    首先我们需要关闭MySQL,命令如下:

    #service mysqld stop

    网上有很多人都是用的mysqladmin -u root -p shutdown,不过我这个是系统安装的是kloxo面板,root密码并不知道,虽然可以重置,但是比较麻烦。

    然后是转移数据,为了安全期间,我们采用复制的命令cp,先找到mysql的原目录

    #cd /var/lib

    #ls

    运行这个命令之后就会看到mysql的目录了,然后执行cp命令

    #cp -a mysql /home/mysql_data/

    这样就把数据库复制到/home/mysql_data下面去了,注意-a这个参数一定要带着,否则复制过去的权限就不对了。如果数据库比较大的话,时间会比较长,可能会超时,具体怎么设置ssh不超时的办法,请看我的上一篇文档。

    然后我们修改配置文件,一共有三个,下面我一一说明:

    #vi /etc/my.cnf

    打开之后修改datadir的目录为/home/mysql_data/mysql,把socket改成/home/mysql_data/mysql/mysql.sock,为了安全起见,你可以把原来的注释掉,然后重新加入一行,改成现在的目录。

    #vi /etc/init.d/mysqld

    准确的位置是/etc/rc.d/init.d/mysqld,由于这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射,所以用上面的命令即可,也简单。这里主要也是修改datadir的目录为/home/mysql_data/mysql

    #vi /usr/bin/mysqld_safe

    这里也是修改datadir的目录

    下面需要建立一个mysql.sock的链接:

    #ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock

    至此所有的修改都完成了,下面启动mysql

    #service mysqld start

    或者重启linux

    #reboot

    如果能正常启动,那基本上就没什么问题了。

建议继续学习:

  1. Bash 小技巧:给目录加上书签,快速切换目录    (阅读:6274)
  2. php 返回目录下的所有文件名/文件夹类    (阅读:3212)
  3. 查找当前目录的重复文件    (阅读:2951)
  4. bash遍历目录    (阅读:2620)
  5. linux文件目录操作总结    (阅读:2612)
  6. MySql重启命令与数据库安装目录    (阅读:2398)
  7. apache配置(如何禁止列出目录内容)    (阅读:2361)
  8. FREEBSD 建目录上限    (阅读:2284)
  9. 记一个php函数dirname    (阅读:2116)
  10. 递归创建目录的一个函数    (阅读:2041)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1