mysql开启远程登陆(修改数据表和授权两种方法)
Posted victorlyw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql开启远程登陆(修改数据表和授权两种方法)相关的知识,希望对你有一定的参考价值。
一、确认防火墙没有阻止3306端口(一般服务器默认会屏蔽掉)
windows防火墙例外设置方法
控制面板(右上角选择查看方式为大图标)---防火墙---高级设置---高级设置---出站规则---最右边 新建规则“新建出站规则向导”,在向导的第一步,选择要创建的防火墙规则类型,选择第二个“端口”。
windows防火墙添加端口方法
windows的防火墙做了比较大升级 设置已经分为入站和出站。控制面板\所有控制面板项\Windows 防火墙 进入
入站规则设置
第一步 选择 入站规则 然后 新建规则,选择 端口,然后下一步
第二步 选择TCP 选择特定端口 然后输入端口,如有多个端口需要用逗号隔开了 例如:3306,8080
第三步,选择允许连接
第四步 选择应用规则的范围
第五步 输入规则名称
出站规则设置
第一步 选择 入站规则 然后 新建规则,选择 端口,然后下一步
第二步 选择TCP 选择特定端口 然后输入端口,如有多个端口需要用逗号隔开了 例如:3306,8080
第三步,选择允许连接
第四步 选择应用规则的范围
第五步 输入规则名称
至此,防火墙规则设置完毕,启用即可!
另外win7的 IIS7,只需启用 入站规则:BranchCache 内容检索(HTTP-In)
出站规则: BranchCache 内容检索(HTTP-Out) 即可。
二、设置MySql允许用户远程连接(具体操作有两种)
1.授权权限(推荐)
允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,具体操作如下:
在本机先使用root用户登录mysql: mysql -u root -p"youpassword" 进行授权操作:
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘youpassword‘ WITH GRANT OPTION;
重载授权表:mysql>FLUSH PRIVILEGES;
退出mysql数据库:mysql>exit
允许root用户在一个特定的IP进行远程登录,并具有所有库任何操作权限,具体操作如下:
在本机先使用root用户登录mysql: mysql -u root -p"youpassword"
进行授权操作: GRANT ALL PRIVILEGES ON *.* TO [email protected]"192.168.XX.XXX" IDENTIFIED BY "youpassword" WITH GRANT OPTION;
重载授权表: FLUSH PRIVILEGES;
退出mysql数据库: exit
删除用户授权,需要使用REVOKE命令,具体命令格式为: REVOKE privileges ON 数据库[.表名] FROM user-name; 具体实例,先在本机登录mysql: mysql -u root -p"youpassword" 进行授权操作: GRANT select,insert,update,delete ON TEST-DB TO [email protected]"192.168.XX.XXX IDENTIFIED BY "youpassword"; 再进行删除授权操作: REVOKE all on TEST-DB from test-user; ****注:该操作只是清除了用户对于TEST-DB的相关授权权限,但是这个“test-user”这个用户还是存在。 最后从用户表内清除用户: DELETE FROM user WHERE user="test-user"; 重载授权表: FLUSH PRIVILEGES; 退出mysql数据库: exit
2.修改数据表
本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"
#mysql -u root -proot
mysql>use mysql;
mysql>update user set host = ‘%‘ where user = ‘root‘;
mysql>select host, user from user;
在安装mysql的机器上运行:
1
2
3
4
5
6
7
8
|
进入MySQL服务器 d:\mysql\bin\>mysql -h localhost -u root 赋予任何主机访问数据的权限 mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root‘ @ ‘%‘ WITH GRANT OPTION 使修改生效 mysql>FLUSH PRIVILEGES 退出MySQL服务器 mysql>EXIT |
以上是关于mysql开启远程登陆(修改数据表和授权两种方法)的主要内容,如果未能解决你的问题,请参考以下文章
linux下mysql开启远程访问权限及防火墙开放3306端口
linux下mysql开启远程访问权限及防火墙开放3306端口