在 Magento 数据迁移过程中,主机不允许连接到该 MySQL 服务器。
我使用普通 PHP 文件检查 Mysql 连接,并且能够连接 Mysql 服务。
我也在 phpmyadmin 中创建了一个远程用户,但它也不起作用并给出错误:
SQLSTATE[HY000] [1130] 不允许主机连接到此 MySQL 服务器
有什麼解決方案嗎?
答案1
看来您不具备该数据库用户名的数据库/表权限。
默认情况下:如果您在同一层有 LAMP 堆栈,它将指向本地主机的 MySQL。
确保您已连接到 Magento DB。
默认 Magento 安装(如果您的数据库用户名是 magento),它归 magento 用户所有:
mysql> CREATE USER 'magento'@'localhost' IDENTIFIED BY 'your_password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'magento'@'localhost'
-> WITH GRANT OPTION;
通过创建另一个用户,该用户可以使用指定的 IP 或通配符范围来访问数据库及其表,以便远程计算机进行连接
允许指定 IP,例如 1.2.3.4:
mysql> CREATE USER 'magento'@'1.2.3.4' IDENTIFIED BY 'your_password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'magento'@'1.2.3.4'
-> WITH GRANT OPTION;
允许所有 IP 作为通配符范围(不推荐):
mysql> CREATE USER 'magento'@'%' IDENTIFIED BY 'your_password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'magento'@'%'
-> WITH GRANT OPTION;