mysql5.7更改数据库存储位置_mysql 5.7更改数据库的数据存储位置的解决方法
随着mysql数据库存储的数据逐渐变大,已经将原来的存储数据的空间占满了,导致mysql已经链接不上了。因此,必须要给存放的数据换个地方了。下面是操作过程中的一些步骤。记下来,以后日后查看。
1.修改mysql数据存放的目录
要修改两个地方,其一是修改/etc/my.cnf文件中的datadir。默认情况下:
datadir=/var/lib/mysql
因为我的/data/目录比较大,所以将其改为:
datadir=/data/mysql/
还要修改/etc/init.d/mysqld文件,将datadir=”$result”改为:
datadir=”/data/mysql”
2.停止mysql服务
service mysql stop
3.创建新的数据存放目录
mkdir /data/mysql
4.将数据移动到新的数据库存放目录里面
mv /usr/local/mysql/data/* /data/mysql
这里补充一点儿知识,innodb引擎和myisam引擎的数据文件不一样。
针对myisam引擎, 数据文件以”*.frm”,”*.myd”,”*.myi”三个文件存储于”/var/lib/mysql”目录下的对应数据库文件夹中。直接将这些文件移动到新的数据存放目录里面,就可以。
针对innodb引擎,数据则存储在”$innodb_data_home_dir” 的ibdata1文件中(一般情况),结构文件存在于table_name.frm中。
5.修改mysql数据库目录权限以及配置文件
chown mysql:mysql -r /data/mysql/
6.修改socket
在两个地方修改socket,/etc/my.cnf
socket=/data/mysql/mysql.sock
创建一个连接文件到/var/lib/mysql/mysql.sock
ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock
7.重启mysql服务
执行
service mysql restart
开始对数据库进行读写操作,发现有这样的问题:
读写:
error 1146 (42s02): table ** doesn't exist
创建表:
error 1005 (hy000): can't create table ‘runoob_tbl' (errno: 13)
解决办法:
在/data/mysql目录下,删掉ib_logfile*文件,这样innodb引擎的表就正常了。
再执行
mysql> repair table ***;
对于数据量比较大表,这个过程可能会比较慢。执行完成后,myisam引擎的表也正常了。
mysql相关专题,需要的朋友可以参考下
以上所述是小编给大家介绍的mysql 5.7更改数据库的数据存储位置的解决方法,希望对大家有所帮助
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
mysql5.7更改数据库存储位置_mysql 5.7更改数据库的数据存储位置的解决方法相关推荐
- 拥抱时序数据库,构筑IoT时代下智慧康养数据存储底座
摘要:在HDZ城市行广州站中,来自华为云华为云数据库创新Lab向宇从时序数据库的技术角度,解读一下华为云时序数据库GaussDB(for Influx)如何应用在智慧健康养老行业. 本文分享自华为云社 ...
- mysql 闪回_MySQL数据误删除的快速解决方法(MySQL闪回工具)
概述 Binlog2sql是一个Python开发开源的MySQL Binlog解析工具,能够将Binlog解析为原始的SQL,也支持将Binlog解析为回滚的SQL,去除主键的INSERT SQL,是 ...
- 12 | 存储优化(上):常见的数据存储方法有哪些?
通过专栏前面我讲的 I/O 优化基础知识,相信你肯定了解了文件系统和磁盘的一些机制,以及不同 I/O 方式的使用场景以及优缺点,并且可以掌握如何在线上监控 I/O 操作. 万丈高楼平地起,在理解并掌握 ...
- MySQL5.7报错[ERROR] Unix socket lock file is empty /tmp/mysql.sock.lock的解决方法
MySQL5.7报错[ERROR] Unix socket lock file is empty /tmp/mysql.sock.lock的解决方法 参考文章: (1)MySQL5.7报错[ERROR ...
- mysql支持事务的存储引擎_MySQL基础(三)【MySQL事务与存储引擎】
3.1-数据库事务 什么是事务 一系列有序的数据库操作: 要么全部成功 要么全部回退到操作前的状态 中间状态对其他连接不可见 事务的基本操作: 基本操作 说明 start transaction 开始 ...
- 查看mysql数据库的主机_MySQL查看或显示数据库(SHOW DATABASES语句)
数据库可以看作是一个专门存储数据对象的容器,每一个数据库都有唯一的名称,并且数据库的名称都是有实际意义的,这样就可以清晰的看出每个数据库用来存放什么数据.在 MySQL 数据库中存在系统数据库和自定义 ...
- linux下mysql数据库目录迁移_mysql实现linux下数据库目录迁移
1.查看mysql安装目录 从目录etc/my.cnf中查看安装目录 2.进入mysql目录,停止mysql服务cd usr/local/mysql service mysql stop (相关文章教 ...
- linux启动sql server数据库,SQL Server数据库启动过程详解及启动不起来的问题分析及解决方法...
第五步.启动系统数据库model model系统数据库同样也是SQL Server启动过程中用到的一个非常关键的数据库,如果这个库损坏,SQL Server启动也会失败,关于model数据不能启动的原 ...
- 以下用于数据存储领域的python第三方库是-Python数据存储及表示
[http://naotu.baidu.com/file/15cbc506e3da5e640a40659058d5be24?token=873f2ab3461d8f9a](http://naotu.b ...
最新文章
- java注解详解_Java注解详解
- kubernetes (1)基本概念
- WebService它CXF注释错误(两)
- 捕获SocketConnection组件连接异常的几个好贴
- ubuntu之间传文件
- 数据湖探索DLI新功能:基于openLooKeng的交互式分析
- 计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接---个人整理
- 非标机械设计该怎么做,老机械工程师告诉你
- 第22节 软件工程知识
- 刷新了dns后无法访问到mysql_高效刷新DNS缓存 解决网页无法访问
- Pygame教程系列四:播放音频篇
- 线性系统理论(不断更新中)
- ps如何设置裁剪后的背景颜色
- erdas裁剪影像_ERDAS遥感图像的分幅裁剪
- linux mud 游戏,150919神奇的mud
- windows下qt程序报错“the inferior stopped because it triggered an exception”
- 使用VirtualBox创建虚拟机
- VB.NET获取dpi的方法
- 如何用C++ 写Python模块扩展(一)
- 高晓松的《晓说》很棒,这脑袋怎么长得?
热门文章
- MySql的like语句中的通配符:百分号、下划线和escape
- 除了富二代 据说这9种人最有富豪潜质
- LA3485二分+求解积分方程+辛普森算法计算积分
- C#之数据库编程:从入门到精通
- 引用和使用引用传递参数《一》
- Gstreamer之跨平台element(十六)
- pthread_join()函数理解实验
- 图像处理自学(五):CAMERA驱动软件硬件架构V4L2
- 开机时出现:reboot and select proper boot 、关于IDE与AHCI
- python小明爬楼梯_爬楼梯(Python and C++解法)