重装mysql遇到的问题

之前电脑里的版本是8.0.11 ,卸载安装8.0.22 ,安装完成后 navicat连接的还是8.0.11 ,感觉是mysql没有卸载干净,查找电脑把关于8.0.11的文件和文件夹都删除了,再安装新版本,之后mysql服务不能启动

然后才想起跟着网上一步一步操作

不知道第一步到底要不要关闭mysql服务,不过关了总是没错的。

安装的过程都没问题

最后net start mysql 服务起不来

mysqld --console提示以下

2018-10-13T03:29:24.179826Z 0 [System] [MY-010116] [Server] D:\Program Files\MySQL\bin\mysqld.exe (mysqld 8.0.12) starting as process 7420
2018-10-13T03:29:24.205939Z 1 [ERROR] [MY-011011] [Server] Failed to find valid data directory.
2018-10-13T03:29:24.207560Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2018-10-13T03:29:24.209780Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-10-13T03:29:24.213334Z 0 [System] [MY-010910] [Server] D:\Program Files\MySQL\bin\mysqld.exe: Shutdown complete (mysqld 8.0.12)  MySQL Community Server - GPL.

解决方法

 

 之后根据https://www.cnblogs.com/greenteaone/p/9994477.html重置密码

 1.打开命令窗口cmd,输入命令:net stop mysql,停止MySQL服务,然后输入命令 

mysqld –skip-grant-tables

以不输入密码的方式启动MySQL服务,但是这条命令对MYSQL8.0.13,是没有任何作用的。

     2..后来又在网上看到这条命令:mysqld --console --skip-grant-tables --shared-memory 

操作步骤同1

打开命令窗口cmd,输入命令:net stop mysql,停止MySQL服务,然后输入命令 

mysqld --console --skip-grant-tables --shared-memory 

现在可以以没有密码的方式登录了,但是直接执行命令: 

会报错:

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> 

 

经过多次试验最终,重置密码的步骤如下

 

1.打开命令窗口cmd,输入命令:net stop mysql,停止MySQL服务,

2.开启跳过密码验证登录的MySQL服务

        输入命令  

        mysqld --console --skip-grant-tables --shared-memory 

3.再打开一个新的cmd,无密码登录MySQL,输入登录命令:mysql -u root -p

 

4. 密码置为空,命令如下:

    use mysql

    update user set authentication_string='' where user='root';

 

5.退出mysql,执行命令:

    quit

 

6. 关闭以-console --skip-grant-tables --shared-memory 启动的MySQL服务,

7. 打开命令框,输入:net start mysql  启动MySQL服务。

8.步骤4密码已经置空,所以无密码状态登录MySQL,输入登录命令:mysql -u root -p

9.利用上一篇博客中更改密码的命令,成功修改密码,如下图:

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

 

10.验证更改后密码正确登录

输入quit,退出当前登录,输入登录命令:mysql -u root -p

输入密码,成功登录,到此,重置密码结束。

---------------但是到net start mysql 时候会失败  再次mysqld --console提示 ibdata1没有权限,改了权限之后仍然不能启动

然后在服务中手动启动成功。

------------------------------

mysql的服务又不能启动,服务器貌似被重启过。

尝试用上面的方法重装,但是进行到把密码设置为空的时候失败,row 0 affect,

后来在这一步

 

2启跳过密码验证登录的MySQL服务

        输入命令  

        mysqld --console --skip-grant-tables --shared-memory 

3.再打开一个新的cmd,无密码登录MySQL,输入登录命令:mysql -u root -p

 

可以无密码登录后,用navicat登录,修改密码

posted @ 2021-01-05 10:40  缓缓而已  阅读(615)  评论(0编辑  收藏  举报