一、确认MySQL服务能在专用 络和公用 络上同时能通过防火墙进行通信
重要的事情说三遍:一定要看防火墙,防火墙,防火墙!!这一步如果没有通过,MySQL的3306端口直接无法被访问。
Ps.以下以Win10系统为例,不同版本系统核心步骤相同。
通过控制面板->Windows防火墙->允许应用或功能通过Windows防火墙
二、设置远程异地可登录账
方法一:命令行改表&&授权
1.在通过命令行进入MySQL之前应先查看其环境变量是否配置。
如果没有配置则按如下步骤在Path里添加MySQL中的bin文件路径。
-u后面是用户名(user),-p后面是密码(password)
法一:修改user表
以下为更好的说明,我们修改一下提示符(第一行命令可以不做)
修改之后如欲收回权限或禁止远程访问则使用如下命令:
此时其他主机已无法访问此数据库。
法二:授权
在法一基础上修改最后一条命令为,也可通过此授权语句修改登录密码。
命令中*.*左边星 代表数据库名,右边星 代表表名。两边都是星 表示所有数据库和所有表。
命令中'root'@'%'左边表示用户名,右边表示服务器名称。
此命令表示给root用户在通过密码为123456下允许在任何主机对此数据库中所有数据库和表进行操作的权限。
如此即可从任何一台连 &&有MySQL数据库的主机上远程登录(输入用户名为root,密码为123456,IP为你设置可远程访问账 主机的IP地址)当前数据库。
命令行中输入ipconfig命令即可查看本机IP,如图所示。
补充:flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在”不重启MySQL服务”的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐 的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。
最简单:
update mysql.user set Host=’%’ where HOST=’localhost’ and User=’root’;
flush privileges;
文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树使用数据库 创建和删除数据库31276 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!