mysql 无需修改配置文件,即可改变表数据存储位置

由于Linux系统的mysql 默认数据存储在/var/lib/mysql路径下,而该路径装系统时默认大小仅50G,当我们的数据稍微大一点时就会把该空间占满,无法再插入数据。
针对该问题有两种解决办法:
1、修改/etc/my.cnf配置文件,重启系统(PS:网上有很多文章,略)
2、不需要修改配置,只需要在创建表时指定数据存储位置

分析

第一种情况,当我们已经把MySQL作为生产库时再修改配置,需要停止数据库服务,影响业务,修改配置会存在风险。
第二种情况,当需要把多字段的excel表导入前要手工创建表,指定存储位置,有点麻烦,但是不存在什么风险,而且当一个磁盘满后,还可以指定其他磁盘,利大于弊。

实现

接下来讲如何实现第二种办法
1、在home目录下创建data文件夹

mkdir /home/data

2、给data文件夹修改用户权限

chown -R mysql:mysql /home/data

3、创建表
在navicat的数据库mysql中创建表
建表1

create table t_extrnal_2 (id int,name varchar(64))   DATA DIRECTORY = '/home/data';

建表2

create table t_extrnal_2 (id int,name varchar(64)) ENGINE=INNODB DEFAULT CHARSET=utf8  DATA DIRECTORY = '/home/data';

再往表里插入数据。如果不指定DATA DIRECTORY ,该表还会存在默认/var/lib/mysql路径下。

4、查看建表结果
去shell终端查看发现/home/data/mysql/t_extrnal_2.ibd文件,说明该方法是成功的。

End!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值