测试用的存储过程脚本(连续插入1000条数据):begin
set v = 1000;
truncate table t_user;
while v > 0 do
insert into t_user(uname) values('zhangsan');
set v = v-1;
end while;
end
测试环境:
两台配置完全一样的主机(i5 cpu,8G内存,500G硬盘)。
其中主机A直接安装CentOS 6.3系统+MySQL 5.6.12。
而主机B安装了VSphere,然后部署了一个虚拟机B1,该虚拟机配置(四核cpu,4G内存,100G硬盘),同样安装CentOS 6.3系统+MySQL 5.6.12。而测试是在物理机A和虚拟机B1上分别跑上面的存储过程脚本。预测:由于两台主机配置一致,理论上应该A的执行速度要高于B1的。但是!我测出的结论!居然是:
A:9.179ms
B1:0.856ms为什么为什么为什么!虚拟机居然比物理机快10多倍!完全无法理解啊,求大神指教!
MySQL性能优化虚拟机测试存储
set v = 1000;
truncate table t_user;
while v > 0 do
insert into t_user(uname) values('zhangsan');
set v = v-1;
end while;
end
测试环境:
两台配置完全一样的主机(i5 cpu,8G内存,500G硬盘)。
其中主机A直接安装CentOS 6.3系统+MySQL 5.6.12。
而主机B安装了VSphere,然后部署了一个虚拟机B1,该虚拟机配置(四核cpu,4G内存,100G硬盘),同样安装CentOS 6.3系统+MySQL 5.6.12。而测试是在物理机A和虚拟机B1上分别跑上面的存储过程脚本。预测:由于两台主机配置一致,理论上应该A的执行速度要高于B1的。但是!我测出的结论!居然是:
A:9.179ms
B1:0.856ms为什么为什么为什么!虚拟机居然比物理机快10多倍!完全无法理解啊,求大神指教!
MySQL性能优化虚拟机测试存储
WWWWA,你咋知道的?你也遇到过?能解释不?
show create table t_user;
show index from t_user;
物理机A:
CREATE TABLE `t_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uname` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1001 DEFAULT CHARSET=utf8虚拟机B1:
CREATE TABLE `t_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uname` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1001 DEFAULT CHARSET=utf8show index from t_user;
物理机A:
t_user 0 PRIMARY 1 id A 1000 BTREE 虚拟机B1:
t_user 0 PRIMARY 1 id A 1000 BTREE