在配置mysql的过程中出现了这样的问题:
在启动Mysql服务后,输入mysqladmin -u root password 1234设置初始密码,显示:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
似乎是因为之前在电脑上已经配置过其他版本的mysql服务器,导致密码已经被设置过
查阅了一众文章后,最终找到了适合windows系统的解决方案
第一步:在有管理员权限的cmd(c盘中的windows-system32中找到cmd,右键以管理员权限运行)下,运行net stop mysql,关闭Mysql服务
第二步:输入:
mysqld --defaults-file="安装路径\my.ini" --console --skip-grant-tables
这里的安装路径填入sql安装时的路径,该路径中包含bin,data文件夹,当然,还有my.ini文件
运行后,应当出现如下结果
第三步:不要关闭该cmd窗口,再打开另一个管理员权限的cmd窗口,并运行mysql -uroot mysql
运行成功后将显示输入mysql命令的界面

(*如果先前设置过了bin的环境变量,可以直接运行,否则需要将cmd转到Bin目录下再运行)
第四步:运行mysql命令:update user set authentication_string=password('123456') where user='root';
此处的123456可替换为新密码
然后运行flush privileges; 刷新权限
最后运行quit; 退出mysql
然后运行mysqladmin -uroot -p shutdown ,输入新密码 退出mysql
再次net start mysql 开启服务,并用net start mysql ,输入密码启动mysql,即可成功登入mysql
在Windows系统中,当尝试启动MySQL服务并设置初始密码遇到Accessdenied错误时,可以按照文章所述步骤进行操作:停止MySQL服务,使用mysqld命令跳过权限表,然后在新的cmd窗口中以root用户登录,更新root用户的密码,刷新权限,最后重启服务。这个过程用于解决因之前配置导致的密码访问问题。
111万+

被折叠的 条评论
为什么被折叠?



