【发布时间】:2020-10-03 23:25:19
【问题描述】:
所以,当我尝试创建没有标志的连接时,它工作得很好。
$db_init_conn = mysqli_init();
$db_conn = mysqli_real_connect($db_init_conn, HOSTNAME, DBUSERNAME, DBPASSWORD,DATABASE);
但是当我像这样使用标志时。
$db_init_conn = mysqli_init();
$db_conn = mysqli_real_connect($db_init_conn, HOSTNAME, DBUSERNAME, DBPASSWORD,DATABASE,$flags=MYSQLI_CLIENT_INTERACTIVE);
我知道了
警告:mysqli_real_connect(): (HY000/2002): 由于目标机器主动拒绝,无法建立连接。
我做错了什么?
更新
当我使用其他标志时也会发生这种情况
$mysqli = mysqli_init();DBPASSWORD,DATABASE);
$db_conn = mysqli_real_connect($mysqli, HOSTNAME, DBUSERNAME, DBPASSWORD,DATABASE, $flags=MYSQLI_CLIENT_COMPRESS);
【问题讨论】:
-
MySQL 是否在 HOSTNAME 上运行?
-
当然是。这就是为什么当我不使用标志时它正在工作。
-
我自己不是 mysqli 用户,仍然:你确定你需要
$flags=foo分配吗?在我看来,api 不是 'key-value-paired' ,所以会收到 FLAG_AS_INT 的下一个参数,即端口。 -
我确定我需要旗帜。我该如何使用它?
-
是的,我做到了。我的连接也被拒绝了
标签: php mysql mysqli database-connection mysqlconnection