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