MYSQL数据库重新初始化
阅读原文时间:2023年07月11日阅读:1

前言

  我们在日常开发过程中,可能会遇到各种mysql服务无法启动的情况,各种百度谷歌之后,依然不能解决的时候,可以考虑重新初始化mysql。简单说就是重置,“恢复出厂设置”。重置之后,所有的数据都将被清空丢失,所以一定要备份好重要的数据库,就是data目录下面那些数据库文件,具体情况请百度,这不是本文的重点,就不多说明了。

严重提醒:数据无价,切记备份。

正文

  重置MYSQL有两种方式:

1.重新安装mysql,简单粗暴,此处不做说明。

2.通过命令清空数据库,重新初始化mysql服务。

1.以管理员身份打开cmd命令提示符

2.停止mysql服务

1 net stop mysql;

3.删除mysql服务

1 mysqld remove;

4.删除mysql安装目录下的data文件夹,可以通过命令查找mysql的数据库目录

1 select @@datadir;

5.初始化mysql,重新初始化mysql之后,将重新生成data目录

1 mysqld --initialize;

同时会生成随机登陆密码,密码可以在data目录中后缀名为err的文件中找到。用记事本打开err文件,查找password,即可发现随机登陆密码。

初始化时,也可以通过增加insecure参数来生成空密码。

1 mysqld --initialize-insecure;

6.注册mysql服务

1 mysqld install;

7.启动mysql服务

1 net start mysql;

8.使用root账号登陆mysql

1 mysql -uroot -pvgg6aOURg(uy;

9.修改新密码

1 ALTER USER 'root'@'localhost' IDENTIFIED BY 'sa123';

修改完成,即可通过新密码登陆,完整命令及执行过程如下图所示。

生成随机密码

1 net stop mysql;
2 mysqld remove;
3 mysqld --initialize;
4 mysqld install;
5 net start mysql;
6 mysql -uroot -pvgg6aOURg(uy;
7 ALTER USER 'root'@'localhost' IDENTIFIED BY 'sa123';

生成空密码

1 net stop mysql;
2 mysqld remove;
3 mysqld --initialize-insecure;
4 mysqld install;
5 net start mysql;
6 mysql -uroot -p
7 ALTER USER 'root'@'localhost' IDENTIFIED BY 'sa123';

  本文整理自https://blog.csdn.net/baobei0220/article/details/90265681和https://blog.csdn.net/wzj_3187/article/details/80274334