MySQL数据库user表中的root用户被误删,导致远程和本地均无法登录(Linux环境);

(有一个能够创建用户的账户)

解决过程

1、找到MySQL的配置文件my.cnf

2、在[mysqld]下增加一行skip-grant-tables

3、重启数据库systemctl restart mysqld

4、创建root账户(在navicat操作,复制一个用户,复制为为insert语句,修改username为root,执行)

5、给新建root更新字段

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',
create_view_priv='y',
show_view_priv='y',
create_routine_priv='y',
alter_routine_priv='y',
create_user_priv='y' 
where user='root';

6、commit;

7、flush privileges;

8、重启MySQL

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐