MySQL开启远程连接
Posted StudyBlog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL开启远程连接相关的知识,希望对你有一定的参考价值。
开启mysql的基本语法是grant授权,这个一般都没有什么问题,主要是开启之后可能还是连接不上
GRANT ALL PRIVILEGES ON 库名.表名 TO 用户名@\'IP地址\' IDENTIFIED BY \'密码\' WITH GRANT OPTION; FLUSH RIVILEGES; 例: GRANT ALL PRIVILEGES ON *.* TO temp@\'%\' IDENTIFIED BY \'temp123\' WITH GRANT OPTION; 授权所有的服务器使用用户名temp密码temp123来连接所有库的所有表执行增产查改的所有操作
可能会出现如下的错误提示
确认成功授权之后(具体查看方法在文底),出现如下的问题可能有两种原因,一种是防火墙问题,一种是MySQL配置绑定了本地127.0.0.1。
一、防火墙问题
防火墙没有开启3306端口导致连接远程连接不上
1 开放防火墙端口 2 添加需要监听的端口 3 /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 4 5 保存设置 6 /etc/init.d/iptables save 7 8 查看状态 9 /etc/init.d/iptables status 10 11 临时关闭防火墙服务 12 service iptables stop 13 14 开启防火墙服务 15 service iptables start 16 17 开机不再启动防火墙服务 18 chkconfig iptables off
二、绑定本地IP问题
MySQL绑定了本地127.0.0.1的IP
这个可以使用命令查看,如下图
修改my.cnf配置文件在line:43添加#将语句进行注释
重启MySQL生效
查看授权用户是否创建成功
授权成功的用户保存在MySQL的mysql库的user表,查看表的数据
use mysql; select Host,User from user\\G;
Host % 表示是所有服务器
127.0.0.1,localhost是本地服务器。
还可以通过 select * 查看其它具体的权限包括增删改查等权限。
以上是关于MySQL开启远程连接的主要内容,如果未能解决你的问题,请参考以下文章