我最近在运行Ubuntu Linux的ec2实例上安装了LAMP堆栈。我按照here找到的说明进行操作。我还安装了phpmyadmin
。据我所知,在我安装MySQL的过程中,当提示回答no
时,我回答Disallow root login remotely?
我可能会弄错。我在其他地方读到,为了允许远程登录,我需要编辑mysql .conf
文件夹中找到的/etc
文件并编辑bridge
设置。
我通过以下方式尝试连接:
$con = mysqli_connect('ec-2 ip address', 'root', 'root', 'db_name');
if(mysqli_connect_errno($con)) {
echo mysqli_connect_error($con);
die;
}
这是我连接时收到的错误消息:
Can't connect to MySQL server on '54.201.165.105' (61)
答案 0 :(得分:3)
我在做了一些研究后最终自己回答了这个问题。事实证明,AWS的安全组与此问题无关。我必须转到/etc/mysql/my.cnf
的文件并注释掉bind_address = 127.0.0.1
的行。然后我不得不在phpmyadmin中执行一个像这样的
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
感谢所有帮助,伙计们。我很感激。
答案 1 :(得分:0)
您需要修改实例的AWS安全组,并设置防火墙规则以允许3306入站流量,并修改操作系统防火墙规则以允许相同的流量。