Ubuntu中更改MySQL数据库文件目录的方法

 更新时间:2018年11月03日 09:41:14   投稿:daisy  
这篇文章主要给大家介绍了关于在Ubuntu中更改MySQL数据库文件目录的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言

公司的Ubuntu服务器对于各个系统的目录是放在不同的逻辑分区上的,比如存放mysql数据库文件的默认目录/var/lib/mysql所在的系统目录/var/单独在一个分区上,但是这个分区的大小是固定的,不足以存放整个数据库文件。但是另一个系统目录/data大小却达到T级,大大满足了需求,因此有了更改数据库文件目录的需求。

以下是我参考网络上一些文章进行尝试的过程:

1.停止数据库服务:

使用/etc/init.d/mysql stop 或者 stop mysql

2. 在目标位置(/data)创建数据库文件的目录(如/mysqldb),并复制(如果不再使用默认的位置,则可以直接mv原先数据库文件到新目录下)原先的数据库文件目录到该目录下:

cd /data

mkdir mysqldb

cp -r /var/lib/mysql /data/mysqldb/

经过一段时间的等待后,在/data/mysqldb/下面就有了原先默认的mysql数据库文件目录的拷贝“/mysql”

3.修改my.cnf文件

# vim /etc/mysql/my.cnf

datadir = /var/lib/mysql 改为 datadir = /data/mysqldb/mysql

另外由于当前my.cnf 中的socket = /var/run/mysqld/mysqld.sock(而并非像网上所说的sock = /var/lib/mysql/mysql.sock),即socket的位置并不在数据库文件所在的位置,因此可以不做类似网上其他网页所说的,要使用以下的命令做一个mysql.sock 链接:

ln -s /data/mysqldb/mysql/mysql.sock /var/lib/mysql/mysql.sock (需要从/home/data/mysql下复制一份过来)

4. 修改数据库的权限:

# chown -R mysql:mysql /data/mysqldb/mysql/  ← 改变数据库文件目录的归属为mysql

# chmod 700 /data/mysqldb/mysql/whois/  ← 改变数据库目录whois的属性为700

# chmod 660 /data/mysqldb/mysql/whois/*  ← 改变数据库中数据表的属性为660

5. 修改文件usr.sbin.mysqld

# vim /etc/apparmor.d/usr.sbin.mysqld

/var/lib/mysql r,

/var/lib/mysql/** rwk,

改成

/data/mysqldb/mysql/ r,

/data/mysqldb/mysql/** rwk,

注意:没有该步骤的话,将导致数据库服务无法重启,好像在重启,但是一直卡住无反应。

6.启动mysql服务器

/etc/init.d/apparmor restart

/etc/init.d/mysql restart (或者使用 restart mysql)

搞定!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • mysql死锁和分库分表问题详解

    mysql死锁和分库分表问题详解

    这篇文章主要给大家介绍了关于mysql死锁和分库分表问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • mysql 5.7.18 安装配置方法图文教程(CentOS7)

    mysql 5.7.18 安装配置方法图文教程(CentOS7)

    这篇文章主要为大家详细介绍了CentOS 7下mysql 5.7.18 安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • MySQL全局锁和表锁的深入理解

    MySQL全局锁和表锁的深入理解

    这篇文章主要给大家介绍了关于MySQL全局锁和表锁的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-06-06
  • 快速增加MYSQL数据库连接数负载能力的方法分享

    快速增加MYSQL数据库连接数负载能力的方法分享

    mysql数据库的负载能力除了和你机器硬件有关,还有一个重要参数就是你系统的配置有关,下面我来给大家介绍几种提高MYSQL数据库连接数负载能力方法总结,有需要的朋友可以参考一下
    2013-08-08
  • MySQL配置文件my.cnf中文详解附mysql性能优化方法分享

    MySQL配置文件my.cnf中文详解附mysql性能优化方法分享

    Mysql参数优化对于新手来讲,是比较难懂的东西,其实这个参数优化,是个很复杂的东西,对于不同的网站,及其在线量,访问量,帖子数量,网络情况,以及机器硬件配置都有关系,优化不可能一次性完成,需要不断的观察以及调试,才有可能得到最佳效果。
    2011-09-09
  • MySQL中LIKE BINARY和LIKE模糊查询实例代码

    MySQL中LIKE BINARY和LIKE模糊查询实例代码

    通常在实际应用中,会涉及到模糊查询的需求,下面这篇文章主要给大家介绍了关于MySQL中LIKE BINARY和LIKE模糊查询的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • Mysql应用安装后找不到my.ini文件的解决过程

    Mysql应用安装后找不到my.ini文件的解决过程

    刚刚在修改mysql默认配置的时候,发现找不到my.ini文件,下面这篇文章主要给大家介绍了关于Mysql应用安装后找不到my.ini文件的解决过程,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • 解决seata不能使用mysql8版本的问题方法

    解决seata不能使用mysql8版本的问题方法

    这篇文章主要介绍了解决seata不能使用mysql8版本的问题方法,文中通过示例和图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • sql脚本函数编写postgresql数据库实现解析

    sql脚本函数编写postgresql数据库实现解析

    这篇文章主要介绍了sql脚本函数编写postgresql数据库实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • MySQL与PHP的基础与应用专题之索引

    MySQL与PHP的基础与应用专题之索引

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,本系列将带你掌握php与mysql的基础应用,本篇从索引开始
    2022-02-02

最新评论