Home >Operation and Maintenance >CentOS >centos cannot connect to mysql remotely

centos cannot connect to mysql remotely

王林
王林Original
2020-03-18 14:12:511998browse

centos cannot connect to mysql remotely

Cause:

1. The database is not authorized;

2. The server firewall does not open port 3306.

Solution:

1. The database is not authorized

There is no authorization for the mysql database, just use one command.

(Recommended tutorial: centos usage tutorial)

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

//远程连接数据库的时候需要输入用户名和密码
用户名:root
密码:123456
指点ip:%代表所有Ip,此处也可以输入Ip来指定Ip

输入后使修改生效还需要下面的语句
mysql>FLUSH PRIVILEGES;

2. The server firewall does not open port 3306

centos has two FirewallD and iptables firewall

centos7 uses FirewallD firewall.

FirewallD is a front-end controller for iptables, used to implement persistent network traffic rules. It provides command line and graphical interfaces and is available in the repositories of most Linux distributions. Compared with directly controlling iptables, there are two main differences in using FirewallD:

1. FirewallD uses zones and services instead of chain rules.

2. It dynamically manages rule sets, allowing rules to be updated without destroying existing sessions and connections.

FirewallD is a wrapper around iptables that allows you to manage iptables rules more easily - it is not a replacement for iptables. Although iptables commands can still be used with FirewallD, it is recommended that only FirewallD commands be used when using FirewallD.

1. FirewallD firewall opens port 3306

 firewall-cmd --zone=public --add-port=3306/tcp --permanent

Command meaning:

--zone #作用域

--add-port=3306/tcp #添加端口,格式为:端口/通讯协议

--permanent  #永久生效,没有此参数重启后失效

Restart the firewall

systemctl restart firewalld.service

2. iptables develops port 3306

/sbin/iptables -I INPUT -p tcp -dport 3306 -j ACCEPT

/etc/rc.d/init.d/iptables save

Related video tutorial recommendations: linux video tutorial

The above is the detailed content of centos cannot connect to mysql remotely. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn