win10系统升级后mysql找不到服务及数据消失问题
win10系统大的版本更新后会导致mysql数据库出问题,我遇到了两次这种问题,第一次没多想,直接重装数据库,重新导数据。没想到没过多久又出现了一次这种情况,统自动更新后mysql又出问题,不能每次出现这种问题都重新安装数据库吧,而且即使可以忍受得了漫长的导数据时间,万一原来数据没备份,呵呵,然后,你懂得!
聪明如我,必须解决这个问题啊!一步一步开始找原因:
首先,cmd——services.msc查看服务,果然,mysql服务都找不到了,那数据库肯定连不上啊,不过这点问题能难倒我吗?不能!!!机智如我,安装mysql服务不就OK了吗!cmd,进入mysql bin目录,mysqld.exe -install,然后
mysql Install/Remove of the Service Denied!
我去,几个意思,拒绝我。没关系,管理员运行cmd,重新安装服务,安装成功。到服务里一看,果然有了,于是启动服务,这么简单就解决了。于是开心的登录,但是
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
什么鬼,又拒绝我。非和你战斗到底,据说在my.ini里加
可以免密码登录,于是找到my.ini加上代码,启动,不输密码登录,果然登进去了,开心!不过进去一看悲剧了,我去,数据库全没了,只有几个系统数据库,什么鬼,这不坑爹吗!不行,继续战斗,于是到看安装文件,在
C:\ProgramData\MySQL\MySQL Server 5.6\data
目录里找到了原来的数据,没丢啊!那为什么登录mysql看不到了呢?机智如我,想到了是不是加载的数据文件目录不对,于是登录mysql查看数据存放目录
show global variables like "%datadir%";
果然,目录是
C:\Program Files\MySQL\MySQL Server 5.6\data
原来如此,肯定配置文件出毛病了,查看安装目录:
只有my-default.ini,果然基本没有什么配置。等等,貌似有哪不对啊,刚不是修改了my.ini吗,而且还登录进去了,什么情况,想了一下,真相只有一个,刚刚是假象,刚是在ProgramData目录下找到的my.ini,修改了并没有什么用,那为什么能登进去呢?因为mysql不设密码默认就有无密码登录的,呵呵!呦西,问题出在这里,于是把ProgramData中的my.ini复制一份到Program Files的mysql安装目录下,和my-default.ini,放一起,重新启动数据库,账号密码登录,查看数据!OK,老铁没毛病,数据回来了!
总结,电脑系统升级后,mysql服务找不到的话,要重新安装mysql服务,并且把my.ini文件烤到mysql安装目录下。