MySQL5.6忘记root密码





第一步

修改 /etc/my.conf 文件
添加 skip-grant-tables 到 [mysqld] 下面就可以
这个参数的意思是设置为无需密码验证的登录
登录之后,可以添加用户,可以修改密码

重启mysql服务 /etc/init.d/mysqld restart


第二步

分两种情况:
情况1 如果是误删除root用户
mysql> use mysql;

mysql> insert into user set user='root',ssl_cipher='',x509_issuer='',x509_subject='';

mysql> update user set Host='localhost',select_priv='y', insert_priv='y',update_priv='y',
Alter_priv='y',delete_priv='y',create_priv='y',drop_priv='y',reload_priv='y',shutdown_priv='y',Process_priv='y',file_priv='y',grant_priv='y',References_priv='y',index_
priv='y',create_user_priv='y',show_db_priv='y',super_priv='y',create_tmp_table_priv='y',Lock_tables_priv='y',execute_priv='y',repl_slave_priv='y',repl_client_priv='y',

mysql>create_view_priv='y',show_view_priv='y',create_routine_priv='y',alter_routine_priv='y',create_user_priv='y' where user='root';

mysql> quit;
修改之后退出,删除第一步中添加的 skip-grant-tables 参数,不然每次都会以那种方式进行启动
完成之后,重启mysql服务


情况2 如果是用户没有删除,只是忘记密码
mysql> update user set Password = password('root123') where User='root';
mysql> flush privileges;
修改之后退出,删除第一步中添加的 skip-grant-tables 参数,不然每次都会以那种方式进行启动
完成之后,重启mysql服务


posted @ 2021-07-23 16:55  李成果  阅读(241)  评论(0编辑  收藏  举报