【问题标题】:Can't connect to MySQL server with php but can through HeidiSQL无法使用 php 连接到 MySQL 服务器,但可以通过 HeidiSQL
【发布时间】:2014-06-19 18:38:19
【问题描述】:

当我尝试使用代码连接到网站数据库时:

$server = "domain";
$login = "username";
$password = "password";
$database = "databasename";
$port = 3307;
$con = mysqli_connect($server, $login, $password, $database, $port);

并启用所有警告和错误,我收到一条消息说

警告:mysqli_connect(): (HY000/2003): 无法连接到“路径”中“域”(111) 上的 MySQL 服务器

但是,当我将 $server 更改为 localhost 时,它工作正常。

如果它通过 php 阻止我,除非我使用 localhost 有没有人知道为什么 HeidiSQL 或 MySQL 管理员客户端可以使用域连接?

【问题讨论】:

标签: php mysql mysqli heidisql


【解决方案1】:

我从您的问题陈述中了解到,您无法使用域或 IP 地址连接到 MySQL 服务器。 要解决它,首先您需要向用户授予数据库访问权限。结帐下面的 sql 这将为您工作。

GRANT ALL PRIVILEGES ON `databasename`.* TO 'username'@'domain' IDENTIFIED BY 'password' WITH GRANT OPTION;

一旦授予用户权限,请检查您的 MySQL 配置设置。编辑您的 MySQL 配置文件 my.cnf 并设置以下提到的设置。

将绑定地址设置为 0.0.0.0 或将其注释掉:

bind-address            = 0.0.0.0
OR
# bind-address          = 127.0.0.1

【讨论】:

    猜你喜欢
    • 2015-07-05
    • 2018-01-20
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 2015-12-16
    • 1970-01-01
    • 2019-07-08
    • 1970-01-01
    相关资源
    最近更新 更多