今天重做了一下系统,不想MySQL直接安装在本地,然后装了个虚拟机用来按章mysql。安装好mysql后发现从机器连虚拟机上的mysql会报错1130(原因是因为mysql那里没有设置所有ip可以通过密码链接)
解决步骤:
1.找到mysql的安装根目录
默认根目录:C:\Program Files\MySQL\MySQL Server 8.0\bin。在这里输入cmd打开命令提示窗
2.输入命令:mysql -uroot -p 用账号密码登录mysql(这里需要myq’l是启动状态啊,启动有问题的先看第4步,如果忘记了密码有点悲哀了,需要重置下密码。如果你是网上看的教程你的密码很可能是“没有”直接回车的,或者设置成了root),我的密码就是root,进来这样子。
3 设置所有的ip都可以通过密码访问就行了,命令以此如下:
update user set host = '%' where user ='root'; // %的意思是所有IP可访问,也可以写个固定IP,就是固定ip可以访问了. “root”就是刚才忘记的密码辣,哈哈哈
flush privileges; //刷新一下用户权限表
exit; //关闭推出,完成
4.重启mysql
这里可能会遇到点问题吧,以前我的mysql都是在Ubuntu上的,对于win下的命令有点懵,记录下。
问题1:emm。。。 直接win+R打开命令提示符可能会权限不够,启动不了mysql。搜索命令提示符,右键用管理员身份打开。
对比下,1(上)是管理员打开,2(下)是普通用户打开
管理员身份打开后数据mysql的启动命令啥的因该就没有问题了
net start mysql //启动
net stop mysql //关闭
问题2:启动关闭命令不管用
服务名错了,net start mysql 这里的mysql是服务名大家的应该不一样,虽然以前我用的都是mysql,然后忽略这这里就错了。
win+R输入 “ Services.msc ” 打开服务,看一下自己的MySQL的服务名叫啥(这里仔细找一下)。
我的叫MySQL80,找到了将命令中的mysql换成这个就好了。
其实做到这里,双击服务选择停止、启动也就可以重启了。