• 867阅读
  • 1回复

如何修改Linux服务器的MySQL数据库root密码

楼层直达
测试服务器密码知道的人太多了,mysql root账号密码竟然被修改.... Lm*LJ_+ B  
Ti@P4:q  
总结一下修改mysql数据库root密码的办法,呵呵大 &h4Z|h[01  
9h,yb4jPP  
分两种情况 dS;|Kl[Om  
一、拥有原来的myql的root的密码; y/sWy1P7  
,f /IG.  
方法一: T\e)Czz2-  
在mysql系统外,使用mysqladmin x4m_(CtK  
# mysqladmin -u root -p password "test123" IrwF B  
Enter password: 【输入原来的密码】 Ff#N|L'9_  
aXK%m  
方法二: = cI\OsV&?  
通过登录mysql系统, vVN[bD<  
# mysql -uroot -p {u=\-|t  
Enter password: 【输入原来的密码】 ?e_}X3{  
mysql>use mysql; k;:u| s8NS  
mysql> update user set password=passworD("test") where user='root'; eg~^wi  
mysql> flush privileges; h }%M  
mysql> exit; u/:Sf*;?  
dv9Pb5i  
二、忘记原来的myql的root的密码; -I-& <+7v  
<sFf'W_3{  
首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。 leYmV FE  
类似于安全模式登录系统,有人建议说是pkill mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况: vAhO!5]>\  
/etc/init.d/mysqld status  p|8Fl  
mysqld dead but subsys locked <fxjj  
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。 EkAqFcKLq  
# mysqld_safe --skip-grant-tables & ,H(vD,54g  
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。 _,?HrL9  
# mysql tJ_@AcF  
mysql> use mysql; $I0a2Z=dP  
mysql> UPDATE user SET password=password("test123") WHERE user='root'; &J@ZF<Ib  
mysql> flush privileges; h?tV>x/Fu  
mysql> exit; p;Ok.cXVp  
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。 kRa$jD^?  
kV%y%l(6  
只看该作者 安逸沙发  发表于: 2019-04-27
一、单纯忘掉了数据库某一用户的密码 YHr<`Q</  
1.停止mysql服务 @m"P_1`*  
9R4q^tGR\  
service mysqld stop FBrJVaF  
1 U &y?3  
2.编写mysql配置文件,并启动mysql YR$d\,#R  
E)F"!56lV  
vim /etc/my.cnf ,U'E!?=:VS  
添加:skip-grant-tables (忽略mysql权限问题,直接登录) P3V }cGZ  
service mysqld start sTO9>~sj  
1 uJ/ &!q<3  
2 yy|F6Pq3`  
3 O.+X,CQG*  
3.无密码进入mysql,执行对账号密码的修改 x)o`w"]al  
KR/SMwy  
mysql I;Bcim;  
use mysql;(使用mysql表操作) @60/IE{-v  
update user set password=password("新密码") where user="账户名"; -pm^k-%v  
flush privileges; (刷新权限) 5R7DD5c[  
1 yTL<S'  
2 `=cOTn52  
3 ;?0r,0l2$  
4 6)~J5Fb  
4.停掉mysql服务,将配置文件中新添加的配置删除掉,再重启mysql服务登录 G8_|w6  
5.辅助: vS'5Lm  
(1)新添加用户直接使用insert into 账号密码 无作用,必须先添加用户账号,再使用update语句才行。密码会被加密。 iSxuor ^;  
(2)如果上述第二步不管用,那么可以尝试:  MUd 9R  
#q%V|Ajq  
停掉mysql服务 "FT(U{^7d  
执行指令以无权限验证与密码的登录方式: N61\]BN<  
    mysqld_safe --skip-grant-tables & W{v-(pW  
    mysql -u root 41V}6+$g  
然后再更新密码 VDP \E<3"  
1 ]#VNZ#("  
2 _Q1[t9P"  
3  <c &6M  
4 7D%}( pX  
5 1Xi.OGl  
二、一些解决问题的mysql操作 >C|i^4ppI  
为指定用户赋予操作指定数据库的权限: c _v;"QZ  
B:Xmc,|,  
(使用root用户为jeff用户赋予osdb数据库的所有权限) qJZ5w }  
grant all privileges on osdb.* to jeff@'%' identified by 'root'; V 2WcPI^  
1 LiF(#OuZ  
2 Uj[E_4h  
误删mysql的root用户 n rpxZA  
免登陆状态下: \%FEQa0u  
![,W?  
insert into user set Host='localhost',User='root',Password=Password('111111'),select_priv='y', >[ox|_o  
insert_priv='y',update_priv='y', Dr!g$,9  
Alter_priv='y',delete_priv='y',create_priv='y',drop_priv='y',reload_priv='y',shutdown_priv='y',Proce ,'m<YTF  
ss_priv='y',file_priv='y',grant_priv='y',References_priv='y',index_priv='y',create_user_priv='y',sho kCu"G  
w_db_priv='y',super_priv='y',create_tmp_table_priv='y',Lock_tables_priv='y',execute_priv='y',repl_sl JP t=~e(  
ave_priv='y',repl_client_priv='y',create_view_priv='y',show_view_priv='y',create_routine_priv='y',al  0"VL6$  
ter_routine_priv='y'; !A\Qwg>  
--------------------- B7fV_-p:G  
作者:Jeff丶Osmond ,/=Fm  
来源:CSDN kyFq  
原文:https://blog.csdn.net/jesonjoke/article/details/79455623 g(i_di  
版权声明:本文为博主原创文章,转载请附上博文链接!
快速回复

限100 字节
安逸网提示:批量上传需要先选择文件,再选择上传
 
认证码:
上一个 下一个