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

Rob*_*ert 7 mysql mysqli mysqlnd

我想知道MySQL Native Driver和MySQL Client Library之间的区别
以及何时使用它们

小智 9

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

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

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


Grz*_*ski 6

mysql :

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

mysqlnd :

mysqlnd通过插件:

不兼容MySQL和mysqlnd之间:

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

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