我正在尝试从本地计算机远程连接到在线的MySQL服务器,但是我遇到了以下错误:
Warning: PDO::__construct(): The server requested authentication
method unknown to the client [mysql_old_password] in
C:\xampp\htdocs\ticket\terminal\sync.php
SQLSTATE[HY000] [2054] The server requested authentication method
umknown to the client
我的本地MySQL服务器版本是5.5.27,libmysql-mysqlnd版本为5.0.10。远程MySQL服务器的版本是5.5.23,但mysqlnd版本未暴露。
我猜这可能是由于密码哈希不兼容所导致的问题,但我不知道如何解决它。以下是我连接代码的一部分:
$dsn = 'mysql:host=184.173.209.193;dbname=my_db_name';
$options = array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
);
try {
$online_dbh = new PDO($dsn, 'myusername', 'mypassword', $options);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Congratulations!";
} catch (PDOException $e) {
echo $e->getMessage();
}