介绍

场景:小张在巡检时发现公司一台数据库经常写不入数据,于是登录数据库所在的主机一看,原来是数据库对应的50G磁盘分区满了,而主机上还有另外一个500G的磁盘分区没在用,于是小张请示完领导后,准备将数据库的日志等占空间的文件位置更换到更大的那个分区。
(PS:本环境为单机环境,主备环境或主主环境操作会有所不同)
1、首先是解决掉磁盘分区空间用完的情况并备份数据库,小张删除了改磁盘分区下的几个安装包文件,再进入数据库清理下binlog日志:
登录数据库,执行:

reset master;
退出数据库
#mysqldump -u 用户 -p密码 --all-databases | gzip > /opt/backup.sql.gz
PS:在动数据库之前切记备份,以免发生意外事故

2、确定mysql具体安装路径,各个文件的位置。

# ps -ef | grep mysql


查看etc下的my.cnf文件,由于数据库是编译安装的,日志等文件位置都设置在/data下

# cat /etc/my.cnf | grep data/mysql
datadir=/data/mysql/data #mysql数据库文件所在目录
tmpdir=/data/mysql/data #mysql数据库临时文件目录
log-error=/data/mysql/log/error.log
general_log_file=/data/mysql/log/general_log.log
log_bin                 = /data/mysql/binlog/mysql-bin.log
relay_log               = /data/mysql/binlog/mysql-relay-bin.log
slow_query_log_file=/data/mysql/log/slow.log #慢查询日志
innodb_data_home_dir = /data/mysql/data #这是InnoDB表的目录共用设置。
innodb_log_group_home_dir = /data/mysql #InnoDB 日志文件的路径。

3、停用mysql,编辑my.cnf更改路径位置,这里更改为/opt下

#service mysqld stop

更改前文件指定位置如下:

# cat /etc/my.cnf | grep data/mysql
datadir=/data/mysql/data #mysql数据库文件所在目录
tmpdir=/data/mysql/data #mysql数据库临时文件目录
log-error=/data/mysql/log/error.log
general_log_file=/data/mysql/log/general_log.log
log_bin                 =/data/mysql/binlog/mysql-bin.log
relay_log               = /data/mysql/binlog/mysql-relay-bin.log
slow_query_log_file=/data/mysql/log/slow.log #慢查询日志
innodb_data_home_dir = /data/mysql/data #这是InnoDB表的目录共用设置。
innodb_log_group_home_dir = /data/mysql #InnoDB 日志文件的路径。

更改后文件指定位置如下:

# cat /etc/my.cnf | grep data/mysql
datadir=/opt/data/mysql/data #mysql数据库文件所在目录
tmpdir=/opt/data/mysql/data #mysql数据库临时文件目录
log-error=/opt/data/mysql/log/error.log
general_log_file=/opt/data/mysql/log/general_log.log
log_bin                 = /opt/data/mysql/binlog/mysql-bin.log
relay_log               = /opt/data/mysql/binlog/mysql-relay-bin.log
slow_query_log_file=/opt/data/mysql/log/slow.log #慢查询日志
innodb_data_home_dir = /opt/data/mysql/data #这是InnoDB表的目录共用设置。
innodb_log_group_home_dir = /opt/data/mysql #InnoDB 日志文件的路径。

还需要修改/etc/init.d/mysqld这个文件跟mysql-bin.index里的内容,将路径/data/mysql/data修改为/opt/data/mysql/data

#cat /etc/init.d/mysqld | grep data/mysql
datadir=/opt/data/mysql/data#vim /opt/data/mysql/binlog/mysql-bin.index
/opt/data/mysql/binlog/mysql-bin.000001


4、转移数据库文件路径

#cd /
#mv data/ /opt/

5、启动mysql,成功启动

这里warning只是个提示,不是数据库的报错,执行下面命令

#systemctl daemon-reload

即可解决

检查数据库日志看看有什么异常报错不

没异常报错,可以正常使用了。

参考链接 :
编译安装的mysql如何更改文件路径 : http://www.lwops.cn/thread-315-1-1.html

编译安装的mysql如何更改文件路径相关推荐

  1. zz在Ubuntu中通过源码安装编译安装软件(MySQL篇)

    使用Ubuntu Server作为本地测试环境已经有一段时间了,一直都是使用apt-get方式来安装各种应用软件,通过源码编译安装应用软件是Linux和Unix环 境下最常用的方式.通过源码编译安装的 ...

  2. ftp服务器中更改文件路径,ftp服务器中更改文件路径

    ftp服务器中更改文件路径 内容精选 换一换 文件作用:可以关闭/打开监听端口.指定监听端口.指定监听IP等.文件路径:在运行环境上,在~/ide_daemon目录下查看ide_daemon.cfg配 ...

  3. CentOS 6.5编译安装Nginx+MySQL+PHP

    一.配置防火墙,开启80端口.3306端口,关闭SELINUX [root@Zabbix ~]# vim /etc/sysconfig/iptables -A INPUT -i lo -j ACCEP ...

  4. centos 6.5 编译php mysql5.6_CentOS 6.5编译安装Nginx+MySQL+PHP

    一.配置防火墙,开启80端口.3306端口,关闭SELINUX[root@Zabbix ~]# vim /etc/sysconfig/iptables -A INPUT -i lo -j ACCEPT ...

  5. linux mysql 数据文件,Linux下修改MySQL数据库数据文件路径的步骤

    使用rpm安装方式安装完MySQL数据库后,数据文件的默认路径为/var/lib/mysql,然而根目录并不适合用于存储数据文件. 原路径:/var/lib/mysql 目标路径:/home/mysq ...

  6. nginx 怎么重新编译安装mysql,centos 下 编译安装 nginx + mysql + php 服务

    centos 下编译安装nginx + mysql + php 服务 1.安装nginx 1.1.安装依赖包 yum install wget make gcc gcc-c++ pcre-devel ...

  7. java当中如何修改路径_Java 中 更改文件路径

    java 中更改文件路径可以用file.renameTo 方法 public static void moveDataFile2Reject() throws Exception { try { // ...

  8. CentOS 7.0编译安装Nginx+MySQL+PHP

    转自http://www.centoscn.com/CentosServer/www/2014/0904/3673.html 准备篇: CentOS 7.0系统安装配置图解教程 http://www. ...

  9. ubuntu编译安装php5 mysql nginx

    一.首先下载软件源码包 wget http://sysoev.ru/nginx/nginx-0.8.53.tar.gz wget http:/.s135.com/soft/linux/nginx_ph ...

最新文章

  1. LeetCode Combinations (组合)
  2. shiro登陆流程源码详解
  3. Sql server 2005系统表详细说明
  4. c++ 暂停功能_10月10日丨注意:东部华侨城茶溪谷暂停开放!深圳9月街道环卫榜出炉!前五街道盐田占其三!…今日盐田大小事...
  5. 大数据之路- Hadoop环境搭建(Linux)
  6. leetcode_two sum()
  7. 导演李大为婚礼全过程(二)
  8. knn 邻居数量k的选取_选择K个最近的邻居
  9. java jaxb注解xmlnull_java – 将空值表示为xml jaxb中的空元素
  10. OPNET网络仿真分析-1.3、基础概念
  11. LaTeX 消除字体错误 Size substitutions with differences (Font) up to 0.41063pt have occurred.
  12. 2017年日本光伏市场展望
  13. 计算机类sci中接受综述么,sci综述类期刊有哪些
  14. Mplay 常用命令及功能简介(ZT)
  15. 代码——几种常见的空格符号
  16. android studio 扣费白屏,详解一次Vue低版本安卓白屏问题的解决过程
  17. uniapp h5 微信打开双标题处理
  18. rk键盘快捷键快捷键不一致_使用键盘快捷键立即搜索您的终端历史记录
  19. MATLAB之——Kronecker积
  20. 论文阅读-WARP: Word-level Adversarial ReProgramming

热门文章

  1. torch.index_select与torch.gather
  2. java常见的gc回收器_一篇文章让你了解GC垃圾回收器
  3. 你应该关注的几个Eclipse超酷插件
  4. Ubuntu gitweb 安装配置
  5. glMatrixMode()函数
  6. python框架实例,从零构建一个简单的 Python 框架
  7. 2019年6月多校联训b层——搜索算法 Problem A 宽搜 营救
  8. 权限设计(资源权限和数据权限)
  9. 高并发处理【电商抢购】(转)
  10. Linux系统如何创建和挂载XFS文件系统