MySQL 8.0 误删了root用户折腾记

背景:最新想尝鲜安装下ubuntu 20.04,默认mysql版本为8.0,一不小心把root用户给删除了,开始折腾。 一、修改配置文件 在配置文件/etc/mysql/conf.d/mysql.cnf中增加2行 skip-grant-tables 重启mysql服务: sudo systemctl restart mysql.service 登录mysql,分别执行以下几行code use mysql; insert into user(User,authentication_string,ssl_cipher,x509_issuer,x509_subject) values('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';commit; 二、修改配置为正常再修改root密码 将密码修改成root@12345 mysql use mysql; alter user 'root'@'localhost' identified with mysql_native_password by 'root@12345';
阅读全文