mysql只允许本机和某些ip可以连接 mysql允许局域网连接 |
您所在的位置:网站首页 › windows防火墙只允许特定ip访问 › mysql只允许本机和某些ip可以连接 mysql允许局域网连接 |
内容: 为了大家在一起协同开发的方便可以在一个局域网里面配置一台mysql服务器提供协同这访问。 情景: 安装好Mysql, 本地访问正常,很奇怪局域的机器都无法访问该服务器上的MYSQL数据库.提示不能进行连接。Mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问 。 ps:现在的文章都是一大抄,到处文章都是一样,可恶的是自己连验证过都没有,都是错误的方案。。。实在不敢恭维!! 以下是实现过程:
1、在MySQL Server端: 登陆MYSQL,键入mysql -h localhost -u root -p 提示你输入密码,输入密码后进入
2、在mysql 命令模式,键入以下命令: mysql> usemysql; mysql> GRANT ALLON *.* TO admin@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION; 说明: 这句话的意思 ,允许任何IP地址(上面的 % 就是这个意思,%可以以指定IP代替)的电脑 用admin帐户 和密码(admin)来访问这个MySQL Server 必须加类似这样的帐户,才可以远程登陆。 root帐户是无法远程登陆的,只可以本地登陆 。如输入:grant all on *.* to long@'192.168.1.199' identified by'123' with Grant option;
在服务器上,使用IP地址和新的用户,确实可以访问服务器,但是远程机器还是无法访问到该MYSQL.
3、关闭服务器的防火墙:只关闭mysql访问的端口如下: 在开始中打开控制面板;点击“windows 防火墙”(找不到时在查看方式中以大图标显示);点选左边列表中的“高级设置”;点击左边的“入站规则”;选择右边的“新建规则”;选择“端口”,点击“下一步”;选择协议规则(TCP/UDP),选择“TCP”即可,选择特殊本地端口,输入80、3306两个端口,然后单击“下一步”;选择“允许连接”,单击“下一步”;选择所有的准则应用,“域”“私有”“公共”三个全够,点击“下一步”输入一个规则的名字和描述,任意即可,如名字为“HTTP”;点击“完成”。第一:更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。 或者新加条记录,“host” 项为要访问的ip地址,并授权。重启mysql服务。 第二:在系统防火墙添加例外端口:3306,并允许例外。 错误提示: ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server 的解决方法: 1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
1. mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 3.在window自带的防火墙里的例外添加3306端口 总结: mysql -u root -p mysql>use mysql; mysql>select 'host' from user where user='root'; mysql>update user set host = '%' where user ='root'; mysql>flush privileges; mysql>select 'host' from user where user='root';
第一句是以权限用户root登录 第二句:选择mysql库 第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称) 第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址 第五句:刷新MySQL的系统权限相关表 第六句:再重新查看user表时,有修改。。 重起mysql服务即可完成。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |