我正在使用 PHP 和 MySQL 建立数据库连接,问题是:
当我尝试连接到数据库远程服务器时,我本地计算机中的 Web 应用程序项目一切正常
mysql_connect("x.xx.xx.x","username","password") or die(mysql_error());
当我在具有 mysql 数据库的远程服务器中部署 Web 应用程序并尝试使用该 Web 应用程序时,我没有得到任何数据库错误连接!!如果我将数据库连接更改为:
mysql_connect("localhost","username","password") or die(mysql_error());
使用本地主机 (127.0.0.1) 而不是使用 ip 地址一切正常,我已经尝试检查/etc/my.conf 文件并添加 bind-address=192.168.15.15 并重新启动 mysql 服务器
仍然无法连接到数据库
任何想法!!!
最佳答案
您需要检查两件事。首先,确保端口 3306
对连接开放。其次,如果您是远程连接,则需要创建一个通配符用户(主机将是一个百分号 %
)。查看 mysql.user
表。如果您尝试连接的用户的 Host
为 localhost
,您将无法远程连接。
创建新用户:
创建用户 'newuser'@'%' IDENTIFIED BY 'password';
授予该用户权限,我建议只授予有问题的数据库:
GRANT ALL PRIVILEGES ON your_database.* TO 'newuser'@'%';
最后,重新加载权限:
FLUSH PRIVILEGES;
关于php - 无法使用IP地址连接数据库服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13465835/