兄弟姐妹们,今天咱们聊聊一个让无数程序员头秃的尴尬事儿——Linux数据库密码给忘了!对,你没听错,就是那种你平时保存得跟宝贝似的密码,一到关键时候,脑子里却像存了空壳子,完全空白!这种情况真是“生活不止眼前的苟且,还有密码忘了的无奈”。别急,咱这不就来给你送上干货吗?先点个赞,让我有精神再唠唠~
1. MySQL/MariaDB忘记密码怎么办?
大概流程就是:先让数据库“瞎玩”——也就是跳过权限检测启动服务,进去重置密码,然后重启回归正经人身份。具体咋操作呢?快看招:
(1)先关闭MySQL服务:
sudo systemctl stop mysql或者sudo service mysql stop
千万别以为这一步简单,关了才有机会重置密码,不然你想改都不让。
(2)启动MySQL服务,同时跳过权限表
这个操作有点“黑科技”味道:
sudo mysqld_safe --skip-grant-tables &
这命令让MySQL在无需认证密码的情况下启动,暴露风险你懂的,操作完就快点。
(3)登录数据库
mysql -u root
正常登入,不需要密码!这时候,你就是数据库超级管理员大佬啦,想改啥改啥。
(4)更新密码
先选中mysql库:
use mysql;
再用下面几个命令更新密码,不同版本略有差别:
新版本MySQL(5.7以上):
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
老版本:
UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root' AND Host='localhost';
别忘了刷新权限表:
FLUSH PRIVILEGES;
(5)关掉跳过权限模式的MySQL服务,重启正常服务
sudo killall mysqld,等服务关闭再启动
sudo systemctl start mysql或者sudo service mysql start
(6)尝试用新密码登陆,成功即大功告成!
呃,过程是不是听着像黑客秘籍?别慌,咱都是走正规操作,不过顺带这技能点亮,省得下次再遇忘密码的尴尬。
2. 其他数据库密码忘了咋办?
PostgreSQL小伙伴,重置方式也不难,先切换到Postgres账户:
sudo -u postgres psql
然后用SQL命令:
ALTER USER postgres WITH PASSWORD '新密码';
然后退出即可。
Oracle数据库更复杂些,通常要在操作系统层面用sysdba权限登录,然后用:
ALTER USER 用户名 IDENTIFIED BY 新密码;
没错,彩虹屁多了,流程就差不多。
3. 千万别忘了备份和安全
说完技术活,温馨提示来啦:操作之前搞个数据库备份,哪怕是“跑了刀”也能回来。同时重置密码后,记得找个稳妥的密码管理工具或记忆法,不然下次再掉坑可尴尬了。
老板,下次忘密码,我教你用脑洞密码法,那叫一个秀!不过今天别急,先活用这招,轻松破解记忆黑洞。
玩游戏想要赚零花钱就上七评赏金榜,网站地址:bbs.77.ink,顺便透露个小秘密,赚钱有时候跟找回密码一样,关键在方法!
最后,问你一个脑筋急转弯:数据库密码都忘了,数据库会不会也感到“被遗忘”?