• 解决方法:①MySQL 闪退 ②服务列表里找不到MySQL ③MySQL服务无法启动


    昨天下了WampServer差点没把我气死,下下来之后也不好使,还显示丢失啥啥啥文件,(´°̥̥̥̥̥̥̥̥ω°̥̥̥̥̥̥̥̥`) 然后MySQL也不好使。心态崩了。下面说一下MySQL遇到的问题以及解决方法。


    安装MySQL之后输密码之后闪退:有三种情况

      1.最简单的, MySQL如果你输错了密码他就会闪退的。 
      2.如果你刚安装MySQL,并且下载安装过程中,他没有提示你填写用户名和密码,那你就是默认用户名root,默认密码是没密码,进去之后直接回车就可以了。 
      3.你的MySQL服务没打开,去服务列表打开MySQL服务就好了(win+R输入services.msc回车打开服务列表)。可能出现特殊情况比较特殊了,比如你去看一下服务列表,然后你进去之后发现列表里根本就没有MySQL这种东西!!!然后我试遍了各种教程……大部分都不好使。


    服务列表里找不到MySQL

      win+R输入cmd回车打开,然后进去MySQL的安装目录的bin文件夹。cmd进入文件夹方法,在黄色框框里(文件夹名字也可以不加引号)。然后输入mysql.exe -install,如果提示Service successfully installed. 就证明你成功了,现在服务列表里就可以找到MySQL了。

    mysql.exe -install

      但是,看下图,它会显示Install/Remove of the Service Denied!,这就说明你没有管理员权限,你就需要以管理员身份运行。 
      这里写图片描述 
      看下图,我电脑是这样,点那个小圈圈就可以搜索应用(因电脑而异,你们自己找找),然后在搜索栏输入cmd,找到之后右键以管理员身份打开就可以了。 
      这里写图片描述 
      然后重复刚才步骤再进入文件夹输入mysql.exe -install就提示你Service successfully installed. 了。(不要关了cmd,待会还有用) 
      这里写图片描述


    那么问题又来了,服务列表里根本点不了那个启动服务啊。

      这时候继续在你刚才的那个cmd里输入net start mysql

    net start mysql

      然后他就提示你服务启动失败,(。◕ˇ∀ˇ◕)气不气,气不气,气死你! 
      这时候你要打开你的文件夹管理器,然后进入他的安装目录,看看里边是不是有个my.ini文件。或者说有个my.default.ini,把他改名为my.ini,并且将my.ini移至bin文件夹里边。然后回到cmd进入安装目录,然后进入bin文件夹,输入mysqld –initialize –user=mysql –console

    mysqld –initialize –user=mysql –console

      这里写图片描述
      上图中第二个黄色框框给了你一个临时密码,复制下来,记得开头没有空格!!!然后你打开MySQL就好使了,输入密码就是你刚才黄框框中的密码,好好输入!输错了还会闪退!!! 
      这里写图片描述 
      然后你要修改初始密码,下图黄框框中语句就是修改密码。修改完后,select user(); 看看,现在你的用户名就是root,你的密码就是你刚刚修改的了。

    set password = password(‘新密码’);

      这里写图片描述


      但是如果你用select useruser from mysql.user; 来查看的话,你会发现有三个用户。 
      

    mysql> select user from mysql.user;
    +---------------+
    | user          |
    +---------------+
    | mysql.session |
    | mysql.sys     |
    | root          |
    +---------------+
    3 rows in set (0.03 sec)
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

      这里写图片描述 
      我用的是select host,user, password_expired,password_last_changed from mysql.user;区别就是多显示 host,password_expired,password_last_changed几项而已。如果你想查看全部用户信息可以用select * from mysql.user;

    select user from mysql.user;      //只查看用户名 
    select * from mysql.user;       //查看用户所有信息

      这时候你会发现除了你的默认root,还多出mysql.session 和 mysql.sys两个用户。这两个不要管他,是MySQL 5.7 新增默认账号。

    mysql.sys:用于 sys schema中对象的定义。使用 mysql.sys 用户可避免DBA重命名或者删除root用户时发生的问题。该用户已被锁定,客户端无法连接。 
    mysql.sessio:插件内部使用来访问服务器。该用户已被锁定,客户端无法连接。

  • 相关阅读:
    PAT 1007 Maximum Subsequence Sum 最大连续子序列和
    数据库系统原理课程设计——图书借阅管理系统
    计算机组成原理——数据的表示与运用
    win7系统下安装Ubuntu18.04组成双系统
    C++中set用法详解
    C++ getline函数用法详解
    数据库——关系演算
    计算机组成原理——计算机系统概述考研题
    PAT 1002 A+B for Polynomials(map模拟)
    PAT 1001 A+B Format
  • 原文地址:https://www.cnblogs.com/TOLLA/p/9647018.html
Copyright © 2020-2023  润新知