在开发或者运维等场景中,或者服务器安装好了很久未使用,总之种种原因MySQL密码忘记了。这个时候需要重置MySQL的密码,其实这个并不难,下面说一下实现思路和方案。
这里以Linux为例进行说明重置密码要分两个步骤:
1、登陆到MySQL命令行界面
2、使用SQL指令修改密码
按照这两部操作就好了,可能我们有疑惑:密码都忘记了怎么登陆到命令行界面呢?其实这个在启动MySQL的时候跳过密码认证就可以了。首先要停止MySQL服务,这个和安装MySQL的方式有关,大致三种方式可以停止:
1、使用 service 停止:service mysqld stop
2、使用 mysqld 停止:/etc/inint.d/mysqld stop (注意mysqld的路径需要和安装时的一致,根据实际情况执行对应命令)
3、使用mysqladmin停止:mysqladmin shutdown
如果无法停止可以使用kill命令杀掉mysql进程
然后启动,这个很关键了虽然MySQL可能可以通过service mysqld start或者/etc/init.d/mysql start启动但是不能这样做,应该在MySQL的安装目录下找到safe_mysqld然后使用
mysqld_safe --skip-grant-tables &
注意可能需要mysqld_safe的全路径,这样启动后就可以使用空密码登陆MySQL了。
第二步就是修改密码了,其实就是修改数据表,因为MySQL的用户和密码存储在数据表中。存储在数据库名为mysql的数据库中的user表中,至于密码字段这个和MySQL版本有关了如果是MySQL5.7之前的版本,密码存储在Password字段如果是MySQL5.7及之后的版本密码存储在authentication_string字段中,另外几个相关字段为:Host(主机)、User(用户名)两个字段,下面给出MySQL5.6及以前版本和MySQL5.7及之后的版本的更新密码SQL,使用root和空密码登录MySQL命令行界面后使用
use mysql;
#MySQL5.6及之前版本修改密码
update user set Password=password('新密码') where User='root';
#MySQL5.7之后及8.0之前版本修改密码
update user set authentication_string=password('新密码') where User='root';
flush privileges;
#MySQL8.0及之后版本修改密码
flush privileges;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
#修改密码之后需要再次执行flush privileges;
重启MySQL即可生效!
另外补充一点mysql初始化的命令,如果因为某些原因表损坏等需要初始化mysql数据库可以使用
/usr/local/mysql/scripts/mysql_install_db \
--defaults-file=/etc/my.cnf --datadir=/usr/local/mysql/data \
--basedir=/user/local/mysql --user=mysql
以上命令假设mysql安装在/usr/local/mysql目录下以mysql用户身份启动,请对号入座。
-
有了这些曾经,我的过去才是完整的。今日,即便,已不再是过去,但,那些回忆,是谁都无法夺走的。当我们面对“人来人往”的常态时,大可不必为之黯然神伤。学学梁实秋先生的坦然心态,以一颗勇敢的心,面对人生中的来来往往。人生的路途,太过漫长,不会有人陪你一生,家人也好,朋友也罢,即使是爱人,他们最终只能伴你一程。幸运飞艇开奖直播 双色球稳赚方法 幸运时时彩走势图(0) 回复 (0)
-
歐博真人的玩家都是採用微笑心法來下注百家樂(0) 回复 (0)
-
地狱犬的病原性与BA.5相同或更低全焊接球阀 男子喝水喉咙里像放了刀子一样焊接球阀 女孩跳楼过路男子扑救当肉垫球阀 钟南山团队:新冠出院后复阳不传染 直埋全焊接球阀 南京大屠杀死难者国家公祭日埋地全焊接球阀 婆婆给刚出生9天宝宝喂米糊 离心泵 校方通报男生被指在女友孕期出轨 磁力泵 工信部商请各地委托生产连花清瘟螺杆泵 超市里7块钱一袋的冻饺子螺杆泵 刘銮雄花4亿多买的大楼,又以125亿卖给恒大离心泵 多地铁路客流明显回升磁力泵 外交部证实:在廊坊会谈化工泵 世贸做出裁定,让美对华认错赔偿Fully Welded Ball Valve112 中国胜诉,华盛顿火速变脸Welded Ball Valve124(0) 回复 (0)
-
讨债公司/蓝月传奇辅助/蓝月辅助(0) 回复 (0)