PHP / 连接到 Sphinx 需要用户名/密码
PHP / connection to Sphinx requires username / password
我目前正在尝试通过 PDO 或 MySqli 连接器连接到 Sphinx 以使用 SphinxQL,但是,尽管 Sphinx 没有 username/password 设置并且我应该能够在不使用此类设置的情况下进行连接,但我收到 user/pass 错误:
Warning: mysqli_connect(): (HY000/1045): Access denied for user ''@'localhost' (using password: NO)
我的连接尝试如下(本例为mysqli:)
$con = mysqli_connect('localhost', '', '', '', '9306');
上面的本地主机与 Mysql 一起使用,我也尝试了 127.0.0.1 但没有成功(这给了我一个连接被拒绝的错误)。
我的 sphinx conf 如下所示:
listen = 9306:mysql41
searchd 是 运行,通过 shell 的连接正常工作:
[root@localhost vagrant]# mysql -h0 -P 9306
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 Server version: 2.2.11-id64-release (95ae9a6)
正如你在上面看到的,我使用的是 Sphinx v.2.2.11
为了以防万一,我也重新检查了端口分配:
[root@localhost vagrant]# netstat -tulpn | grep LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1475/master
tcp 0 0 127.0.0.1:9306 0.0.0.0:* LISTEN 21599/searchd
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 4013/mysqld
感谢任何帮助。
有时会发生奇怪的事情,没有合理的解释。如前所述,我在 windows 10 主机上使用 vagrant (Centos 7.5)。无论如何,连接都不起作用。让它休息一天后,我的电脑进入 "sleep" 模式。第二天,撤销系统后一切正常。我能说什么¯_(ツ)_/¯。问题解决了。
我可能会迟到,但我遇到了同样的问题并且我有解决方案:)
而不是
$con = mysqli_connect('localhost', '', '', '', '9306');
这样用
$con = mysqli_connect('localhost:9306', '', '', '');
它很可能会起作用:)
我在 Sphinx Search 3.3.1 和 mysql 8.0 上遇到了同样的问题。
以上解决了我的问题。
我目前正在尝试通过 PDO 或 MySqli 连接器连接到 Sphinx 以使用 SphinxQL,但是,尽管 Sphinx 没有 username/password 设置并且我应该能够在不使用此类设置的情况下进行连接,但我收到 user/pass 错误:
Warning: mysqli_connect(): (HY000/1045): Access denied for user ''@'localhost' (using password: NO)
我的连接尝试如下(本例为mysqli:)
$con = mysqli_connect('localhost', '', '', '', '9306');
上面的本地主机与 Mysql 一起使用,我也尝试了 127.0.0.1 但没有成功(这给了我一个连接被拒绝的错误)。
我的 sphinx conf 如下所示:
listen = 9306:mysql41
searchd 是 运行,通过 shell 的连接正常工作:
[root@localhost vagrant]# mysql -h0 -P 9306
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 Server version: 2.2.11-id64-release (95ae9a6)
正如你在上面看到的,我使用的是 Sphinx v.2.2.11
为了以防万一,我也重新检查了端口分配:
[root@localhost vagrant]# netstat -tulpn | grep LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1475/master
tcp 0 0 127.0.0.1:9306 0.0.0.0:* LISTEN 21599/searchd
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 4013/mysqld
感谢任何帮助。
有时会发生奇怪的事情,没有合理的解释。如前所述,我在 windows 10 主机上使用 vagrant (Centos 7.5)。无论如何,连接都不起作用。让它休息一天后,我的电脑进入 "sleep" 模式。第二天,撤销系统后一切正常。我能说什么¯_(ツ)_/¯。问题解决了。
我可能会迟到,但我遇到了同样的问题并且我有解决方案:)
而不是
$con = mysqli_connect('localhost', '', '', '', '9306');
这样用
$con = mysqli_connect('localhost:9306', '', '', '');
它很可能会起作用:)
我在 Sphinx Search 3.3.1 和 mysql 8.0 上遇到了同样的问题。 以上解决了我的问题。