共享表空间
属于数据库服务5.5版本时默认的表空间应用,具体数据存储数据方式为:ibdata1~ibdataN
ibdata共享表空间在各个版本之间的作用区别:
共享表空间管理:
- 扩容共享表空间操作:
扩容前共享表空间信息查看:
select @@innodb_data_file_path;
-- 可以在初始安装好数据库服务后,进行修改配置为两个ibdate文件,每个共享表空间文件占用2G,总共占用4个G空间
select @@innodb_autoextend_increment;
-- 查看参数信息说明:ibdata1文件,默认初始大小12M,不够用会自动扩展,默认每次扩展64M
共享表空间的扩容操作方法:
# 编写数据库配置文件信息
vim /etc/my.cnf
[mysqld]
innodb_data_file_path=ibdata1:12M;ibdata2:100M;ibdata3:100M:autoextend
-- 需要注意的是ibdata1文件大小必须和实际数据库要存储的数据相匹配,否则会出现如下报错信息
[ERROR] [MY-012264] [InnoDB] The innodb_system data file './ibdata1' is of a different size 768 pages (rounded down to MB) than the 4864 pages specified in the .cnf file!
-- 表示ibdate1指定大小超过了原有ibdata1实际的大小尺寸
# 查看配置信息是否生效
mysql> select @@innodb_data_file_path;
+---------------------------------------------------------------------+
| @@innodb_data_file_path |
+---------------------------------------------------------------------+
| ibdata1:12M;ibdata2:100M;ibdata3:100M:autoextend |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)
数据库初始化时设置共享表空间容量建议:
序号 | 版本信息 | 建议说明 |
---|---|---|
01 | MySQL 5.7 | 设置共享表空间2~3个,大小建议512M或1G,最后一个定制为自动扩展 |
02 | MySQL 8.0 | 设置共享表空间1个即可,大小建议512M或1G |
共享表空间的初始设置方法:
模拟初始化清理数据
[root@xiaoQ-01 ~]# /etc/init.d/mysqld stop
[root@xiaoQ-01 ~]# rm -rf /data/3306/data/*
# 模拟初始化配置文件
[root@xiaoQ-01 ~]# vim /etc/my.cnf
[mysqld]
innodb_data_file_path=ibdata1:100M;ibdata2:100M;ibdata3:100M:autoextend
# 模拟初始化操作命令
[root@xiaoQ-01 ~]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306/data
# 模拟初始化重启服务
[root@xiaoQ-01 ~]# /etc/init.d/mysqld start
欢迎来撩 : 汇总all