为了使这些函数可用,您必须使用对 mysqli 扩展的支持编译 PHP。
MySQL 8
在运行 7.1.16 之前的 PHP 版本或 7.2.4 之前的 PHP 7.2 时,将 MySQL 8 Server 的默认密码插件设置为 *mysql_native_password*,否则您会看到类似 *The server requested authentication method unknown to the client [caching_sha2_password]* 的错误,即使 *caching_sha2_password* 未使用。
这是因为 MySQL 8 默认使用 caching_sha2_password,这是一个旧版 PHP (mysqlnd) 版本无法识别的插件。相反,通过在 *my.cnf* 中设置 default_authentication_plugin=mysql_native_password
来更改它。*caching_sha2_password* 插件从 PHP 7.4.4 开始得到完全支持。对于旧版本,mysql_xdevapi 扩展确实支持它。