Home >Database >Mysql Tutorial >mysql怎么开启远程登陆?

mysql怎么开启远程登陆?

零下一度
零下一度Original
2017-07-20 15:17:211281browse

一、确认防火墙没有阻止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 root@"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 test-user@"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

The above is the detailed content of mysql怎么开启远程登陆?. 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