php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。

<?php
/**
 * 测试pdo和mysqli的执行效率
 */
header("Content-type:text/html;charset=utf-8");

//通过pdo链接数据库
$pdo_startTime = microtime(true);
$pdo = new PDO("mysql:host=localhost;dbname=test","root","1234",array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES‘utf8‘;"));
for($i=1;$i<=100;$i++){
	$title = "pdo标题".$i;
	$content = "pdo内容".$i;
	$addtime = time();
	$user_id = $i;
	$pdo_sql = "INSERT INTO `article`(`title`,`content`,`addtime`,`user_id`) VALUES(:title,:content,:addtime,:user_id)";
	$sth = $pdo->prepare($pdo_sql);
	$sth->bindParam(‘:title‘,$title);
	$sth->bindParam(‘:content‘,$content);
	$sth->bindParam(‘:addtime‘,$addtime);
	$sth->bindParam(‘:user_id‘,$user_id);
	$sth->execute();
}

$pdo_endTime = microtime(true);

$pdo_time = $pdo_endTime - $pdo_startTime;
echo $pdo_time;
echo "<hr/>";

//通过mysql链接数据库
$mysqli_startTime = microtime(true);
$mysqli = mysqli_connect("localhost","root","1234","test") or die("数据连接失败");
mysqli_query($mysqli,"set names utf8");
for($i=1;$i<=100;$i++){
	$title = "mysqli标题".$i;
	$content = "mysqli内容".$i;
	$addtime = time();
	$user_id = $i;
	$sql = "INSERT INTO `article`(`title`,`content`,`addtime`,`user_id`) VALUES(‘".$title."‘,‘".$content."‘,".$addtime.",".$user_id.")";
	mysqli_query($mysqli,$sql);
}

$mysqli_endTime = microtime(true);

$mysqli_time = $mysqli_endTime - $mysqli_startTime;
echo $mysqli_time;

echo "<hr/>";

if($pdo_time > $mysqli_time){
	echo "pdo的执行时间是mysqli的".round($pdo_time/$mysqli_time)."倍";
}else{
	echo "mysqli的执行时间是pdo的".round($mysqli_time/$pdo_time)."倍";
}

测试结果:其实经过多次测试,pdo和mysqli的执行效率差不多。

时间: 2024-11-09 02:13:18

php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。的相关文章

php中使用mysqli和pdo扩展,测试连接mysql数据库的效率。

<?php /** * 测试pdo和mysqli的连接效率,各连接100次mysql数据库 */ header("Content-type:text/html;charset=utf8"); //通过pdo链接数据库 $pdo_startTime = microtime(true); for($i=1;$i<=100;$i++){ $pdo = new PDO("mysql:host=localhost;dbname=test","root&q

[日常] ubuntu下安装php pdo扩展和导入数据库

默认安装的php不存在pdo扩展,因此在使用到的时候会报错,直接使用这个命令 apt-get install php-mysql 就可以成功安装pdo扩展 安装完数据库后需要导入sql语句,先进入数据库中提前创建数据库名,比如laykefu的数据库,-u  -p  数据库名 ,后面跟上sql文件的地址就可以导入了 mysql -uroot -proot laykefu < /mnt/f/ubuntu/phpProject/laykefu/l aykefu.sql 原文地址:https://www

PHP使用mysqli扩展连接MySQL数据库

这篇文章主要介绍了PHP使用mysqli扩展连接MySQL数据库,需要的朋友可以参考下 1.面向对象的使用方式 $db = new mysqli('localhost', 'root', '123456', 'dbname'); 如果建立连接时未指定数据库则选择使用的数据库,切换使用的数据库 $db->select_db('dbname'); $query = "SELECT * FROM user WHERE uid=4"; $result = $db->query($q

sqoop测试Mysql数据库的使用

测试Mysql数据库的使用 前提:导入mysql jdbc的jar包 ①  测试数据库连接 sqoop list-databases–connect jdbc:mysql://192.168.10.63 –username root–password 123456 ②Sqoop的使用 以下所有的命令每行之后都存在一个空格,不要忘记 (以下6中命令都没有进行过成功测试) <1>mysql–>hdfs sqoop export –connect jdbc:mysql://192.168.10

运用Loadrunner测试Mysql数据库性能 TRON?极客

1.前言 针对数据库的性能测试,loadrunner本身支持sql server和oracle数据库,这两种数据库可以用loadrunner直接录制进行测试.而我们项目中使用的是mysql数据库,针对用 loadrunner测试mysql数据库的方法网上也有很多介绍文章,主要有两种方案.一种是利用ODBC连接测试mysql,但是这种方法配置比较麻 烦,如果要录制的话需要安装支持ODBC连接的查询分析器,这工具不好找,能找到的也只能算凑合能用.如果大家有兴趣试试这种方法,可以上网搜搜,学习配 置一

jmeter JDBC请求连接测试mysql数据库

所有jmeter基本组件功能本文不做介绍.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要与你数据库的版本匹配,驱动版本低于mysql版本有可能会导致连接失败报错)我这里下载的是mysql-connector-java-5.1.7-bin.jar 1.准备好驱动包后,需要把jdbc驱动jar包引入测试计划.操作步骤如下图: 点击测试计划-->点击浏览-->选中mysql驱动jar包-->打开 2 OK,这样驱动就引入进来了.接下来新建一个线

Jmeter测试mysql数据库中间件mycat

背景 因为博主所负责测试的项目需要数据库有较大的吞吐量,在最近进行了升级,更新了一个数据库中间件 - - mycat.查询了一些资料,了解到这是阿里的一个开源项目,基于mysql,是针对磁盘的读与写,理论上读写速度上会略小于mysql. 与组长沟通后,决定在功能测试完成后,对升级后的mycat进行性能压测. 环境准备 1.下载Jmeter 可以访问下面的地址进行下载,建议下载zip版本的,因为zip是一个绿色版本,无需安装,解压后即可使用, Jmeter下载地址 2.下载mysql数据库的驱动包

jmeter测试MySQL数据库

前提:安装好MySQL数据库,并且下载了jmeter安装包 1.打开jmeter 2.下载mysql-connector-java.jar,将jar包默认复制到jmeter的bin目录下面,因为默认打开bin目录 3.将jar包添加到jmeter的测试计划中 4.右键测试计划,添加,配置元件.JDBC Connection Configuration 5.配置JDBC Connection Configuration中的内容 database URL:jdbc:mysql://localhost

jmeter 测试Mysql数据库

本次使用jmeter连接本机上的mysql数据库,查询user_info表中内容: 2.打开jmeter后,在测试计划中导入,连接mysql的mysql-connector-java-5.1.30-bin.JAR的包,入下图,没有jar包的可以百度下载 3.线程组中创建连接,JDBC Connection Configuration放在请求前:第一个红圈Variable Name为连接名称:第二个为连接数据ku的相关配置,大家可以参照下 4.创建请求JDBC Request:Valiable N