mysql pdo 用途_MySQL,MySQLi,PDO的各自不同介绍

最近做个小的域名状态监测系统,框架和数据库设计好之后,琢磨着之前都是胡乱写,没有个专业的框架啥的,所以此次就着重选了一些,结果发现,这种小系统用框架其实完全是不需要的……囧,好吧,不用大的框架,用一些常用的类也可以避免重复劳动不是么,找了下,数据库就定位到了medoo。在查看文档中发现其使用的pdo的方式连接数据库,由于之前有过一些缘分,对性能有些敏感,所以就想了解下这些常用的方式对性能都有神马差别,于是就有了下文。

在PHP的MySQL库之Pdo-Mysql与Mysqli性能对比(http://database.51cto.com/art/201108/281381.htm)文中,给出的结论如下:

1. Pdo-Mysql之所以比Mysqli快,是由于Pdo-Mysql对数据库的操作比Mysqli要少;

2. 在Pdo-Mysql使用了长连接的测试中,Web服务器内存持续上涨。

(简单查了一下,是Aapche服务的httpd进程内存上涨)

那么单纯从性能角度看,Pdo-Mysql长连接性能最佳,但有何弊端还有待查证。

此文写于2011年,所以单看他的话,不足说明什么,经过三年发展,其方式的内存优化等一定已经达到了另一个高度了。接着看,MySQL,MySQLi,PDO的各自不同介绍(http://www.jb51.net/article/31332.htm)。

以下几乎是全文转载:

普通的MySQL连接肯定是会被抛弃的 因为每次都要防止sql注入的问题 而且相对来说比较慢。

MySQLi是在普通MySQL的基础上做的一次优化 说实话 很成功 预处理方式完全解决了sql注入的问题,但是唯一的不足点 就是只支持MySQL数据库 当然 如果你要是不操作其他的数据库或者 当然这无疑是最好的选择PDO则是最新出来的一种 连接方式 兼容大部分数据库 也解决了sql注入 但是也有缺点 它只支持php5以上的版本 不过听说在未来的php6中 只支持这种连接。

PDO统一所有数据库抽象层对象接口,MySQLi只统一MySQL的。

简单说,PDO可以实现同样的代码对不同数据库的操作,例如你从MySQL迁移到mssql,程序基本不需要改动,而MySQLi简单理解未MySQL的封装就好。

在高负载的情况下.PDO开启长连接能够得到一个相对稳定的负载“值”。但是效率却不是最高的。

MySQL最快。MySQLi其次。只是MySQL和MySQLi在高并发、系统高负载的时候。其所承担的负载也是很可观的。PDO则不会。

看着,好像还是比较推荐PDO,又看了些相关的,有国外友人推荐使用PDO,因为它是个设计优良的API,需要的话,你能够非常容易得迁移到其他数据库(包括任何支持ODBC的数据库)上去。

恩,探究就暂时至此,使用PDO的方式看来会成为未来的一个方向。

如本文对您有用,您的捐赠和留言将是我最好的支持~

如您愿意,请向更多志同道合的朋友们推荐本站,谢谢。

a909dc4d3501b4cf46a6e8a71f097f70.png

请尊重他人劳动成果。

转载请务必附上原文链接,我将感激不尽。

有什么问题可以 留言或QQ联系我

与《MySQL,MySQLi,PDO的各自不同介绍》相关的博文:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值