共計 2239 個字符,預計需要花費 6 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
本篇內容主要講解“用 PHP 連 mysql 和 oracle 數據庫性能比較”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“用 PHP 連 mysql 和 oracle 數據庫性能比較”吧!
測試硬件說明:
測試使用的是我的愛機,配置如下:
CPU:C433
內存:128M
硬盤:酷魚 2 代 20G
測試軟件說明:
WIN32 下用的是 windows nt server4,sp5,apache 1.3.12,php3.0.15 和 php4rc1,mysql 3.22.29,oracle 8.0.5
linux 下用的是 bluepoint linux1.0, apache 1.3.12, php4rc1,mysql 3.22.32
測試代碼說明:
使用一個很簡單的表,mysql 和 oracle 使用的表結構是一樣的,都只有三個字段,結構如下:
mysql 的表結構:
CREATE TABLE board (
board_id smallint(6) NOT NULL auto_increment,
board_name char(16) NOT NULL,
board_manager char(20),
PRIMARY KEY (board_id)
);
oracle 的結構:
CREATE TABLE PHP_ORACLE. BOARD
(BOARD_ID FLOAT,
BOARD_NAME CHAR(16) NOT NULL,
BOARD_MANAGER CHAR(20)) ;
我們只測試了 INSERT 操作花的時間,對于 select,并未作測試。
因為 win32 下只有 PHP3 才能連接 oracle 數據庫,所以只測試了用 PHP3 連接 oracle 的性能。相
信在 PHP4 的正式版本出來后,用 PHP4 連接 oracle 的速度應該有所提升。
而在 LINUX 下,因為我沒有裝 oracle,所以只測試了 mysql 的性能。據說在 LINUX 下,oracle
的性能不錯,只是無法測試。
并且我們將所有的用于數據庫連接和 oracle 用來分析 sql 語句的代碼都放在了統計代碼之外
,所以測試得出的時間只是用于執行 SQL 操作所花費的時間。
用來測試 mysql 的程序:
$dblink=mysql_connect(localhost , root , shh223
mysql_select_db(bbs
$counter=1;
set_time_limit(300);
$query= insert into board (board_name,board_manager) values (test , test)
$begin_time=time();
for ($i=1;$i =10000;$i++){
mysql_db_query(bbs ,$query);
$counter++;
}
$end_time=time();
mysql_close($dblink);
echo test db speed…br
echo begin time: .$begin_time. BR
echo BRend time: .$end_time. BR
$total=$end_time-$begin_time;
echo total spent time: .$total;
?
用來測試 oracle 的程序:
$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 BRend 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 秒。
所以,如果你不需要存儲過程的支持
到此,相信大家對“用 PHP 連 mysql 和 oracle 數據庫性能比較”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
向 AI 問一下細節