gpt4 book ai didi

PHP PDO MySQL - 不使用 DSN 上指定的主机

转载 作者:行者123 更新时间:2023-11-28 23:11:14 29 4
gpt4 key购买 nike

晚上好

我一直在尝试在我的配置文件中设置两个数据库连接,一个是内部的,另一个是外部的。

$DB_host = '127.0.0.1';
$DB_port = '3306';
$DB_name = 'users';
$DB_user = 'root';
$DB_pass = 'obliquous';

$DB2_host = '123.123.123.123';
$DB2_port = '3306';
$DB2_name = 'pancakeshop';
$DB2_user = 'potato_shop';
$DB2_pass = 'ambiguous';

try
{
$db = new PDO("mysql:host={$DB_host};dbname={$DB_name}",$DB_user,$DB_pass);
$db2 = new PDO("mysql:host={$DB2_host};dbname={$DB2_name}",$DB2_user,$DB2_pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db2->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
echo $e->getMessage();
die();
}

我用 127.0.0.1 完成的那个 - 意思是我为专用服务器指定的本地主机 - 它按预期工作,但是,带有 123.123.123.123 的那个它使用本地 IP 地址而不是外部 IP 地址。

185.113.141.125 是 PHP 服务器运行的专用服务器。

给我的错误如下:

SQLSTATE[HY000] [1045] Access denied for user 'potato_shop'@'185.113.141.125' (using password: YES)

代码语法有问题吗?

最佳答案

这是因为root accounts is only for the localhost host (至少,在 Windows 中)。

如果您只是创建一个对 pancakeshop 有特权的用户,那就更简单了

CREATE USER 'not_root'@'123.123.123.123' IDENTIFIED BY 'ambiguous';

GRANT ALL PRIVILEGES ON pancakeshop.* To 'not_root'@'123.123.123.123' IDENTIFIED BY 'ambiguous';
FLUSH PRIVILEGES;

关于PHP PDO MySQL - 不使用 DSN 上指定的主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45929269/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com