WIN10下MYSQL无法运行问题

无法启动服务的问题

在win10下,MySQL5.7本来是运行的好好的;突然停止运行了;服务也无法启动。

在卸载之后,重新安装,依旧是无法启动。

度娘之后,在path环境变量里面添加了C:Program FilesMySQLMySQL Server 5.7in路径,还是依旧无法启动。

然后继续度娘,让:

解决办法

  1. 执行mysqld --install,查看是否已经安装成功
  2. 删除 mysqld -remove mysql
  3. 重新执行mysqld --install
  4. 启动服务net start mysql

服务依旧是启动不了。

查看日志: MYSQLD --CONSOLE

说是在MySQL Server 5.7目录下面,没有找到data文件夹;不知道是不是win10下,这个版本的没有什么权限创建这个文件夹;手动创建一个吧。然后在命令 net start mysql启动,依旧报错,只不过是另一个错误:

 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.

 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist

 [ERROR] Fatal error: Failed to initialize ACL/grant/time zones structures or failed to remove temporary table files.

 [ERROR] Aborting

第一个错误可以看到这里少了一个mysql.plugin的表;

第二个错误是少了mysql.user表;

解决方法:

1、去C:Program FilesMySQLMySQL Server 5.7in目录下创建my.ini文件,内容如下:

  1.  
    [mysqld]
  2.  
    basedir=C:Program FilesMySQLMySQL Server 5.7
  3.  
    datadir=C:Program FilesMySQLMySQL Server 5.7data

2、清空C:Program FilesMySQLMySQL Server 5.7data目录,里面的信息一会通过命令会自动生成的;

3、执行    mysqld --initialize --user=mysql --console

4、启动成功;

无法连接的问题

完成上面的操作之后,用navicat和CMD登录时,用密码都会报1045-access denied for user 'root'@错,直接输入MySQL反而登录成功;

解决方法

1.以管理员身份启动CMD,必须是管理员身份

2.执行命令:mysqld --skip-grant-tables

3.以管理员身份重开个命令窗口

4.执行如下命令:

 #update mysql.user set password=password('123456') where user='root';

update mysql.user set authentication_string=password('123456') where user='root';

成功!

但是,使用Navicat for MySQL软件连接失败,报错1862

解决方法

管理员权限运行命令:mysqladmin -uroot -p password,

这样改完密码后,用Navicat for mysql软件连接正常。

转载请附上原文出处链接:https://blog.csdn.net/ccnu027cs/article/details/102837529

性格决定命运,气度决定格局,细节决定成败,态度决定一切
原文地址:https://www.cnblogs.com/zpw-1/p/14621691.html