MySQL Native Driver和MySQL Client Library之间有什么不同

时间:2014-02-03 18:08:54

标签: mysql mysqli mysqlnd

我想知道MySQL Native Driver和MySQL Client Library之间的区别
什么时候使用它们

2 个答案:

答案 0 :(得分:8)

PHP语言级别没有太大区别。

  • 由MySQL发布的libmysqlclient,由PHP发布的mysqlnd。
  • libmysqlclient是MySQL的一部分,需要安装MySQL库。
  • 他们的执照不同。
  • mysqlnd支持很多插件(mysqlnd_ms& mysqlnd_qc& ...)。
  • 因为mysqlnd是PHP的一部分,所以它的内存可能受到PHP配置的限制。
  • mysqlnd是5.4
  • 之后的默认值

http://php.net/manual/en/mysqlinfo.library.choosing.php

答案 1 :(得分:2)

mysql

  • 双重许可
  • 可选的自动重新连接
  • 所有内存分配和释放都是使用操作系统内存管理完成的

mysqlnd

通过插件

mysqlnd

mysql和mysqlnd之间的

不兼容性

  • 位数据类型的值在mysql.so中以二进制字符串形式返回,在mysqlnd.so(source中以十进制字符串形式返回。

基于此文档和其他文档:http://php.net/manual/en/mysqlinfo.library.choosing.php