删除mysql的user表中的root用户后,我们可以用以下命令来实现恢复;
启动mysql数据库的安全模式,有2种方法
1.修改配置文件/etc/my.cf,添加 --skip-grant-tables
2.使用命令进入安全模式,
首先,要先关闭mysql服务 service mysqld stop
进入安全模式 mysqld_safe --skip-grant-tables
3.添加use表内容,如下:
mysql> insert into user set ser=‘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‘, create_view_priv=‘y‘, show_view_priv=‘y‘, create_routine_priv=‘y‘, alter_routine_priv=‘y‘, create_user_priv=‘y‘ where user=‘root‘;