innodb_file_per_table是否打开对创建或删除表的影响
来源:互联网 发布:工资管理系统 数据库 编辑:程序博客网 时间:2024/06/07 18:31
本文将测试innodb_file_per_table打开或者关闭后对创建或删除表所耗用时间的影响。
测试环境搭建:
在MySQL数据库中创建16个库并且每个库中创建100张InnoDB存储引擎的表(空表):
[root@mysqlmaster data]# time $(for db in {1..16};
do mysql -e "create database bench$db";
$(for tb in {1..100}; do $(mysql bench$db -e "create table tab${tb} (i int) engine=innodb"); done) & done)
另外打开一个MySQL客户端终端,可以看到如下的内容:
表都创建好后,并行执行删除schema的操作。
下面将比较innodb_file_per_table的值为ON和OFF的情况:
1) innodb_file_per_table = ON的情况:
创建表
[root@mysqlmaster data]# time $(for db in {1..16};
> do mysql -e "create database bench$db";
> $(for tb in {1..100}; do $(mysql bench$db -e "create table tab${tb} (i int) engine=innodb"); done) & done)
real 2m12.117s
user 0m0.120s
sys 0m0.774s
删除表
[root@mysqlmaster data]# time $(for db in {1..16};
> do mysql -e "drop database bench${db}" & done)
real 0m10.654s
user 0m0.012s
sys 0m0.080s
2) innodb_file_per_table = OFF的情况:
创建表
[root@mysqlmaster ~]# time $(for db in {1..16};
> do mysql -e "create database bench$db";
> $(for tb in {1..100}; do $(mysql bench$db -e "create table tab${tb} (i int) engine=innodb"); done) & done)
real 1m15.462s
user 0m0.147s
sys 0m0.367s
删除表
[root@mysqlmaster ~]# time $(for db in {1..16};
> do mysql -e "drop database bench${db}" & done)
real 0m6.990s
user 0m0.000s
sys 0m0.018s
innodb_file_per_table ON vs OFF结果:
- With innodb_file_per_table=ON
- Schema and table creation = 2m12.117s
- Schema drops = 0m10.654s
- With innodb_file_per_table=OFF
- Schema and table creation = 1m15.462s
- Schema drops = 0m6.990s
从上面看innodb_file_per_table=OFF情况下,创建和删除表的确节省一点时间。
- innodb_file_per_table是否打开对创建或删除表的影响
- 网站打开速度对网站的影响!
- Delete删除表数据时对性能的影响分析
- 易飞:删除离职员工权限表对单据的影响
- 频繁打开数据库连接是否影响性能的疑惑
- 删除或重命名正在打开的文件
- File对文件的操作,创建、复制、删除、移动和打开文件的静态方法
- SQL判断表或存储过程是否存在,若存在则删除然后重新创建
- 创建,删除文件或文件夹及判断其是否存在
- innodb_file_per_table
- 验证分区表中添加或删除空分区对全局索引没影响
- 使用 CASCADE CONSTRAINTS选项删除表空间时对数据库对象影响的探查
- 删除大日志文件对系统负载的影响
- 视图创建语句对视图操作的影响
- 创建或删除文件夹
- 不允许保存更改。您所做的更改要求删除并重新创建一下表。您对无法重新创建的表进行了更改或启用了“阻止保存要求重新创建表的更改”选项
- sql Server中不允许保存更改您所做的更改要求删除并重新创建以下表。您对无法重新创建的表进行了更改或启用了“阻止保存要求重新创建表的更改”选项
- 当没有创建表或创建索引权限的时候,删除相同的数据
- Ubuntu Navicat for MySQL安装以及破解方案
- adb shell进程管理命令
- 重新开始开发生活所感
- 数据结构之线性表-剖析自己小问题
- Codeforces Round #293 (Div. 2) ABC
- innodb_file_per_table是否打开对创建或删除表的影响
- oracle 常用函数
- Nginx支持http文件上传的配置
- 1103 - Ancient Messages.
- PCAP研究
- Mac下安装MySQLdb报错解决
- 算法效率的度量
- poj 3468
- 【hibernate框架】性能优化之session.clear()的运用和Java内存泄露问题