加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL innodb共享表空间新增表空间数据文件方法是啥样的

发布时间:2022-01-12 13:03:29 所属栏目:MySql教程 来源:互联网
导读:本篇文章给大家分享的是有关MySQL innodb共享表空间新增表空间数据文件方法是怎么样的 ,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 当innodb使用共享管理表空间(innodb_file_per_t
      本篇文章给大家分享的是有关MySQL innodb共享表空间新增表空间数据文件方法是怎么样的 ,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
 
      当innodb使用共享管理表空间(innodb_file_per_table=off),只有一个数据文件ibdata1而且表空间快满了。在这种情况下,需要添加额外的表空间来扩展容量。方法如下:
1. 停止mysql服务
2. 备份配置文件
3. 编辑my.cnf里innodb_data_file_path的值
     根据innodb_data_file_path更改ibdata1:$size;ibdataN:$size;…ibdataN:$size; 当前定义的表空间或默认表空间是不能改变的,否则启动失败,但是可以添加额外的表空间,ibdataN序列根据当前的数量递增,
$size自定义。
4. 启动mysql服务
 
举例如下:
 
MySQL [test]> show variables like 'innodb_file_per_table';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF   |
+-----------------------+-------+
1 row in set (0.00 sec)
 
 
查看innodb数据文件路径:
 
MySQL [test]> show variables like 'innodb_data%';
+-----------------------+------------------------+
| Variable_name         | Value                  |
+-----------------------+------------------------+
| innodb_data_file_path | ibdata1:12M:autoextend |
| innodb_data_home_dir  |                        |
+-----------------------+------------------------+
2 rows in set (0.00 sec)
 
数据文件路径:
MySQL [test]> show variables like 'datadir';
+---------------+--------------+
| Variable_name | Value        |
+---------------+--------------+
| datadir       | /data/mysql/ |
+---------------+--------------+
1 row in set (0.00 sec)
 
 
停止mysql服务:
[root@chenfeng mysql]# service mysql stop
Shutting down MySQL. SUCCESS!
 
 
修改/usr/local/mysql/my.cnf,更改innodb_file_per_table为共享管理表空间并新增两个数据文件ibdata2和ibdata3,设置成自动扩展:
innodb_file_per_table=off
innodb_data_file_path = ibdata1:12M;ibdata2:100M;ibdata3:300M:autoextend
 
 
启动mysql数据库:
[root@chenfeng mysql]# service mysql start
Starting MySQL... SUCCESS!
 
 
查看数据目录,发现新增数据文件成功:
 
-bash-4.2$ cd /data/mysql
-bash-4.2$ ll ibdata*
-rw-rw----. 1 mysql mysql  12582912 8月  25 16:02 ibdata1
-rw-rw----. 1 mysql mysql 104857600 8月  25 16:02 ibdata2
-rw-rw----. 1 mysql mysql 314572800 8月  25 16:02 ibdata3
 
MySQL [test]> show variables like 'innodb_data%';
+-----------------------+--------------------------------------------------+
| Variable_name         | Value                                            |
+-----------------------+--------------------------------------------------+
| innodb_data_file_path | ibdata1:12M;ibdata2:100M;ibdata3:300M:autoextend |
| innodb_data_home_dir  |                                                  |
+-----------------------+--------------------------------------------------+
2 rows in set (0.00 sec)
 
以上就是MySQL innodb共享表空间新增表空间数据文件方法是怎么样的 ,小编相信有部分知识点可能是我们日常工作会见到或用到的。

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!