持续更新,2019-1-19,这是安装的一种情况,还有种情况今天遇到的,见博客《win10下mysql解压版的卸载与安装2.0》
==============================================
今天整了一下午,因为之前装的5点几版本我把mysql库里面的user表删除了,里面有用户名和密码,我都忘了,不知道怎么弄,觉得卸载重装
按照网上说的
1,先停服务net stop mysql
2,在注册表中删除注册信息(实际不操作发现也可以,应该是的服务名一直没变)
①HEKY_LOCAL_MACHINE\SOFTWARE\MYSQL目录删除(我没有这项)
②HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除
③HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除(没有这项)
④HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL目录删除
3,mysqld -remove 删除服务
(解压版这么操作就行了,安装版还需要删除磁盘里面的文件夹)
然后下载了8.0.12的,修改了环境变量,添加了my.ini,我之前创建了data目录(不可创建data文件夹,如果解压后有data,建议删除),然后【管理员】身份运行cmd,mysqld -install (建议不要用mysqld install MySQL --defaults-file="D:\1_JAVA\mysql-8.0.12-winx64\my.ini" 这个命令),如果报The service already exists 需要 mysqld -remove 一下 再操作就行
接着启动服务:net start mysql
额。。。。报错!! 尴尬了,第一次操作这么骚竟然报错!!
在服务界面手动启动是这样的
网上找了一大堆解决方案,终于被我找到了,https://blog.csdn.net/hust_hqq/article/details/80572133#commentBox,感谢作者
原因出在手动创建了data目录,
1,删除data目录
2,mysqld -remove ,进入bin目录执行 mysqld --initialize -user=mysql --console
执行后,在data文件夹中的XXXXXX.err 文件中,可以看到初始密码,下图标出了
3,再执行mysqld -install
4,启动net start mysql
搞定!完美!
然后就是改密码,可以自行百度
有一点,最后我没有操作flush privileges ,用Navicate链接时报 :2059 - authentication plugin 'caching_sha2_password'。。。。(此问题今天弄mysql的时候解决了,是版本不一致导致的密码识别不了,运行
mysql>use mysql;
mysql>ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newrootpassword';
即可
)