关于mysql安装后登不进的问题--ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)
首先说下ubuntu命令行安装与卸载mysql :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 安装mysql: sudo apt update sudo apt upgrade sudo apt install mysql-server 完全卸载mysql: 1.查看依赖 dpkg --list|grep mysql 2.开始卸载 sudo apt-get remove mysql-common sudo apt-get autoremove --purge mysql-server-8.0 3.再次查看 dpkg --list|grep mysql 4.剩什么再次卸载什么 5.清除卸载残留 dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P |
ubuntu安装好mysql8后出现了这个问题,关键安装过程中并没有提示要设置密码。
我的mysql版本是
本来一直在参照这个帖子https://www.cnblogs.com/cpl9412290130/p/9583868.html在改,但是始终没有成功。
说真的,这个问题我搞了好久,最终这个帖子提醒我先要清空root密码再重新给它设置密码,然后我才成功
https://blog.csdn.net/Shuju15/article/details/109001393
贴成功图:
总结即如下:
第一步:设置允许无密码登录,重启mysql
1 | hadoop@ycm:~$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnfhadoop@ycm:~$service mysql restart |
在[mysqld]中添加skip-grant-tables
第二步:进入mysql交互模式
1 | mysql -u root -p |
然后直接回车就行
第三步:
1 2 3 4 5 | mysql> use mysql; mysql>flush privileges ; mysql> UPDATE user SET authentication_string= "" WHERE user = "root" ;//先把root密码置为空 mysql>flush privileges ; mysql> ALTER user 'root' @ 'localhost' IDENTIFIED BY 'Ycm@123nihao' ;//再重置密码 |
注意:密码格式必须符合要求,不然会报错的。mysql8貌似是要求必须包括大小写,数字和特殊字符。
第四步:quit退出mysql交互模式,去掉之前加的skip-grant-tables,再重启mysql
第五步:这回mysql -u root -p输入设置的正确密码就能进入mysql了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构