我无法远程访问我的数据库,我发现的唯一问题是端口 3306 对 127.0.0.1 开放,我希望它全局开放。我在访问数据库时收到的错误是无法建立连接,因为目标计算机主动拒绝它。
我已经ubuntu 16.04
安装mariaDB
了bind-address = 0.0.0.0
。
当我点击sudo netstat -plnt
它时返回:
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 21013/mysqld
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1172/sshd
tcp6 0 0 :::8080 :::* LISTEN 13710/apache2
tcp6 0 0 :::80 :::* LISTEN 13710/apache2
tcp6 0 0 :::22 :::* LISTEN 1172/sshd
tcp6 0 0 :::443 :::* LISTEN 13710/apache2
没有0 0.0.0.0:3306
。
我如何可以允许0 0.0.0.0:3306
。
sudo ufw status
返回:
Apache Full ALLOW Anywhere
22 ALLOW Anywhere
3306 ALLOW 161.202.20.0/24
3306 on eth1 ALLOW Anywhere
3306 ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
22 (v6) ALLOW Anywhere (v6)
3306 (v6) on eth1 ALLOW Anywhere (v6)
3306 (v6) ALLOW Anywhere (v6)
当远程访问数据库时,我收到No connection could be made because the target machine actively refused it.
。
答案1
允许端口
sudo ufw allow 3306
如果未安装 ufw,则可能是 iptables
sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT