1
无法让它正常工作。这是我到目前为止已经完成:从远程服务器连接到Amazon EC2上的mysql - ERROR 2003
mysql> CREATE USER 'admin'@'localhost' IDENTIFIED BY 'xxxxxx';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
mysql> CREATE USER 'admin'@'%' IDENTIFIED BY 'xxxxxx';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
在AWS控制台
- > EC2 - >网络&安全 - >安全组 - >快速启动,1 - >入站选项卡 - >从选择 'MYSQL'下拉 - >添加规则 - >申请
编辑/etc/my.cnf
并添加bind-address
,然后
sudo /etc/init.d/mysqld restart
sudo /sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
sudo service iptables save
终于从我的电脑:
[[email protected] ~]$ mysql -h xxx.xxx.xxx.xxx -u admin -p
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.xxx' (113)
编辑: 运行netstat -lp | grep mysql
(我没有看到在输出端口号):
tcp 0 0 *:mysql *:* LISTEN -
unix 2 [ ACC ] STREAM LISTENING 16003 - /var/lib/mysql/mysql.sock
加入/etc/my.cnf
port=3306
现在netstat -lp | grep mysql
是
tcp 0 0 *:mysql *:* LISTEN -
unix 2 [ ACC ] STREAM LISTENING 37757 - /var/lib/mysql/mysql.sock
/etc/my.cnf
文件:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
port=3306
bind-address = 0.0.0.0
#skip-networking
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
再加上我试图通过其他计算机连接,我无法连接,所以我想连接电脑
它不是一个问题,我得到了拒绝访问我的telnet:
[[email protected] ~]$ telnet xxx.xxx.xxx.xxx 3306
Trying xxx.xxx.xxx.xxx...
telnet: connect to address xxx.xxx.xxx.xxx: No route to host
**我也试图解决它amazon ec2 forum
运行'netstat -lp'是mysql正确在3306上侦听? – datasage
你可以看到编辑 – Nir
在你的mysql配置中启用了“skip-networking”吗? – datasage