1.“服务无法启动,服务没有报告任何错误”
我第一次启动时是成功的,后来在修改my.ini文件跳过输入密码时可能出现了一些问题,导致无法启动。经搜索发现可以用mysqld --console命令将错误信息输出到控制台上,结果出现了下面几条error:
正常来讲就是将这三条error逐条复制粘贴去搜索解决办法,我也都尝试过,但是并没有解决问题。最后找到了一个可行的办法:首先删除data文件夹,然后将my.ini文件另存到bin目录下,编码选择ANSI,再次用net start mysql命令尝试启动,启动成功。
2.“Access denied for user 'root'@'localhost'(using password:NO)”
好不容易越过了第一个坎,又迎来了第二个。安装mysql后没有root的初始密码。尝试了在my.ini文件[mysqld]下添加skip-grant-tables,再重启服务器,但依然没有效果。
最终找到了一个可行办法:先用net stop mysql命令停止服务器,再以管理员身份打开第二个cmd窗口,在第一个窗口输入mysqld --console --skip-grant-tables --shared-memory,在第二个窗口输入mysql -u root -p,不需要输入密码,直接按回车键,成功进入。
这个时候不要着急关闭第一个cmd窗口,因为密码还没有修改,关了的话可能会又进入不了mysql,需要重复上一步操作。
接下来就是修改密码。输入use mysql进入数据库,输入命令行update user set authentication_string=password("XXXXXX") where user="root";XXXXXX是你设置的新密码,回车后出现“Query OK,1 row affected,1 warning (0.00 sec)”证明修改成功。然后在win 10搜索栏内输入“服务”,找到mysql,点击右键,点击停止。这个时候终于可以把两个cmd窗口都关闭啦。
再次以管理员身份启动cmd,输入net start mysql,再输入mysql -u root -p,输入刚刚设置的密码,出现以下信息证明设置成功。
然后输入use mysql验证一下,报错了不要慌,这是正常的,输入alter user user() identified by "XXXXXX";回车,再次输入use mysql,出现“Database changed”即为成功。
然后就可以开始使用MySQL数据库了。