好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Linux开启mysql远程连接方法与问题解决办法

下面我们来看看Linux开启mysql远程连接方法与问题解决办法,希望下文可以帮助到各位朋友.

Linux开启mysql远程连接方法

1、GRANT命令创建远程连接mysql授权用户root

  • mysql -u root -p 
  • mysql>GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY '123456' WITH GRANT OPTION; 

    增加root用户授权通过本地机(localhost)访问,密码 "123456":

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

    授与root用户从任何其它主机发起的访问(通配符%).

    2、设置防火墙允许3306端口

    vi /etc/sysconfig/iptables

    添加:

    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

    注意添加在-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited之前,否则可能导致规则不生效.

    重启防火墙: service iptables restart

    解决Mysql无法远程连接的问题:

    1、Mysql的端口是否正确

    通过netstat -ntlp查看端口占用情况,一般情况下端口是3306,在用工具连接MySQl是要用到端口,例如My AdminMy Query BrowserMySQl Front等.

    2、检查用户权限是否正确

    mysql库的user表里有两条记录:host分别为localhost和%(为了安全,%可以换成你需要外部连接的IP).

    3、查看/etc/mysql/my.cnf中,skip-networking 是否已被注掉

    需要注掉,报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (111).

  • sudo gedit /etc/mysql/my.cnf  
  • #skip-external-locking 
  • #bind-address        = 127.0.0.1 
  • skip-name-resolve 

    4、查看iptables是否停掉,没关的情况下,无法连接

    通过:service iptables stop临时关闭.

    报错:ERROR 2003(HY000):Can't connect to MySQL server on '192.168.51.112' (113).

    查看更多关于Linux开启mysql远程连接方法与问题解决办法的详细内容...

  •   阅读:68次