不允许主机连接到 MySQL (00webhost)

Host is not allowed to connect to MySQL (00webhost)

我无法连接到我的数据库。有这个错误

Warning: mysqli_connect() [function.mysqli-connect]: (HY000/1130): Host '31.170.160.93' is not allowed to connect to this MySQL server in /home/a7422059/public_html/includes/database.php on line 12

在 php 中看起来像

config.php

defined('DB_SERVER') ? null : define("DB_SERVER", "31.170.160.93");// or server29.000webhost.com
defined('DB_USER')   ? null : define("DB_USER", "*****");
defined('DB_PASS')   ? null : define("DB_PASS", "*****");
defined('DB_NAME')   ? null : define("DB_NAME", "a7422059_photo");

和连接

database.php

public function open_connection(){
        $this->connection = mysqli_connect(DB_SERVER , DB_USER , DB_PASS , DB_NAME);
        if(!$this->connection){
            die("Database connection failed:" . mysqli_error($this->connection));
        }
    }

我做错了什么?

如果您的数据库服务器不同于 HTTP 服务器(PHP 执行的服务器),您必须允许用户从该主机连接,并在 [=16= 中指定主机或“%” ] 的用户 table 列 "host" :

CREATE USER 'toto'@'%' IDENTIFIED BY '***';
GRANT USAGE ON * . * TO 'toto'@'%' IDENTIFIED BY '***'
WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 
MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

这是在您创建用户并将主机指定为“%”时由 phpMyAdmin 执行的示例查询