【问题标题】:mysqli on hosted servers托管服务器上的 mysqli
【发布时间】:2015-12-29 15:06:48
【问题描述】:

我在托管服务器上。我使用 mysql 命令来访问数据库。但是,当我尝试使用被认为更安全的 mysqli 命令时,我得到以下响应: 服务器请求客户端未知的身份验证方法。 我去了另一个主人,现在我得到了: 致命错误:调用未定义函数:mysqli_connect()。 我做错了什么?

【问题讨论】:

  • 首先,您应该创建一个包含<?php phpinfo() ?> 的php 测试文件(test.php)。在浏览器中打开此页面,并确保您的 php.ini 文件中加载了 mysql/mysqli 扩展。 mysqli_connect 函数需要安装 php5-mysql 包,例如在 ubuntu 上,根据documentation
  • 我按照你说的做了,mysqli似乎在运行。但是,每次我尝试使用它时,我仍然收到以下错误:服务器请求客户端未知的身份验证方法。 mysql完美运行,但是mysqli有这个认证错误。
  • 也许这个链接会对你有所帮助:1.DBA Stackexchange 2.MySQL Remote Connection

标签: php mysql mysqli


【解决方案1】:

您应该升级您的 PHP,它在最新版本中默认启用。

如果您无法执行此操作,则需要进入 php.ini 文件并取消注释该扩展名。

【讨论】:

  • 同样,这是在托管服务器上。这不是我的个人服务器,所以我无法调整 php.ini 文件。
  • 我有 2 个选项升级 php 你可以在共​​享服务器上完成
  • 共享服务器上的php版本为PHP 5.5.22。没有进一步升级的选项。我无权访问 php.ini 文件。同样的错误不断弹出。
  • 我建议您联系您的托管服务,或者您可以尝试 PDO,反正更好
【解决方案2】:

确保你的 php 中加载了 mysql/mysqli 扩展

php -m | grep -i mysql

你会得到结果:

[root@yourserver ~]# php -m | grep -i mysql
mysql
mysqli
pdo_mysql

【讨论】:

  • 这不是我的服务器。这是在托管服务器上,所以我无权调整 php 文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-13
  • 1970-01-01
  • 2010-09-12
  • 2011-08-27
  • 2013-09-25
  • 1970-01-01
  • 2013-02-01
相关资源
最近更新 更多