用来测试oracle的程序:;
<?php;
$handle=OCILogon("php_oracle","php_oracle");;
$counter=1;;
set_time_limit(300);;
$query="insert;into;board;(board_id,board_name,board_manager);values;(:board_id,'test','test')";;
$state=OCIParse($handle,;$query);;
OCIBindByName($state,;":board_id",;&$i,32);;
$begin_time=time();;
for;($i=1;$i<=10000;$i++){;
ociexecute($state);;
};
$end_time=time();;
OCIFreeStatement($state);;
ocilogoff($handle);;
echo;"test;db;speed...<br>";;
echo;"begin;time:".$begin_time."<BR>";;
echo;"<BR>end;time:".$end_time."<BR>";;
$total=$end_time-$begin_time;;
echo;"total;spent;time:".$total;;
?>;
测试结果:
环境:win32+apache+php4+mysql;
结果:28秒;
环境:win32+apache+php3+mysql;
结果:34秒;
环境:win32+apache+php3+oracle8.0.5(oci函数);
结果:46秒;
环境:linux+apache+php4+mysql;
结果:10秒;
结论:
在WIN32下,mysql的性能虽然不是很好,但和oracle8比起来,还是要快很多,尤其是我在测试程序中,并没有将数据库连接的语句包括进来,所以这个测试结果只是插入数据所花费的时间,而oracle的连接,天,太慢了!在我的机器上,连接一次,至少1-2秒钟。而在LINUX下,mysql的性能相对于在WIN32下,又有了一个很大的飞跃。由28秒骤减到10秒。所以,如果你不需要存储过程的支持,并且数据库量不是大的那么惊人的话,还是在LINUX下使用mysql作为你的数据库吧!这个轻量级的数据库可以给你最佳的性能、可管理性和相当不错的安全性。
};
$end_time=time();;
mysql_close($dblink);;
echo;"test;db;speed...<br>";;
echo;"begin