方法一:

mysql 误删root

第一步:

mysqld_safe --skip-grant-tables --skip-networking & (跳过密码启动)

第二步:增加root表

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

第三步: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';

第四步:退出,重新登入


方法二:

到其他服务器的mysql data路径下,复制user.frm,user.MYD,user.MYI 到当前问题服务器路径下,然后重启mysql 即可