1.前要
本渣只有一台电脑,因为学习数据库光靠一台电脑不够用,故装了虚拟机。
实体机:win10系统,mysql5.6。
虚拟机:linux,mysql5.7
2.想模仿在其他主机上远程登录本机windows上mysql的过程
1.操作对象:实体机
mysql新建一个用户并授权,对应mysql.user系统表中新增一条数据,注意host字段上的值设为’%’,代表允许该用户在任意电脑上远程登录本机mysql。
然后在本机mysql执行如下代码刷新权限
flush privileges
2.操作对象:实体机
通过cmd,在命令行模式下输入ipconfig,查找本机ip地址。
因为装了虚拟机,所以会看到多个ip地址,不过虚拟机的虚拟地址会带有VMware的标志,不难辨认出实体机的ip地址,取ipv4后面的数字
接着找出本机mysql端口,默认是3306。
3.操作对象:实体机
此时在navicat客户端上面通过输入前两个步骤得到ip,端口,用户名,密码就可以连接到本机数据库了,代表远程连接基本没什么问题。
4.操作对象:虚拟机
mysql -h实体机ip -P3306 -u用户名 -p密码
发现连接不上实体机的mysql数据库,跟度娘老师一番诚挚请教之后,确定是防火墙阻止了虚拟机的访问,解决办法看5
5.操作对象:实体机
给3306这个端口添加出入站规则,win10打开控制面板,找到防火墙的高级设置。
入站规则设置
第一步 选择 入站规则 然后 新建规则,选择 端口,然后下一步
第二步 选择TCP 选择特定端口 然后输入端口,如有多个端口需要用逗号隔开了 例如: 3306
第三步 选择允许连接
第四步 选择配置文件
第五步 输入规则名称 mysqlport
出站规则设置
第一步 选择出站规则 然后 新建规则,选择 端口,然后下一步
第二步 选择TCP 选择特定端口 然后输入端口,如有多个端口需要用逗号隔开了 例如: 3306
第三步 选择允许连接
第四步 选择配置文件
第五步 输入规则名称 mysqlport
6.操作对象:虚拟机
重新输入
mysql -h实体机ip -P3306 -u用户名 -p密码
登录成功
到此实践成功
补
第二天发现又连不上了,搞了半天没搞定,灵机一动去看了ip才发现ip竟然跟昨天的不一样!!原谅我这个渣渣,了解之后才知道无线路由给我的电脑分配的ip不是固定的,汗!
本渣的路由器是水星,直接在路由器设置页绑定电脑mac地址和ip,搞定。