mysql 允許賬號 drop 自己,如果 root 賬戶把自己 drop 了。
有兩種方式
1, 以安全模式啓動
以安全模式啓動 MYSQL,跳過權限驗證
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
或者
修改 my.cnf 並重啓 (本質上和上面方法一樣,都是跳過權限驗證,更麻煩)
sudo vim /etc/my.cnf
[mysqld]
skip-grant-tables
port = 3306
2, 然後登陸
mysql -h127.0.0.1
執行
INSERT INTO mysql.user
SET user = 'root',
host = '%',
authentication_string =Password('123456'),
Select_priv = 'y',
Insert_priv = 'y',
Update_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',
Alter_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',
Event_priv = 'y',
Trigger_priv = 'y',
Create_tablespace_priv = 'y',
ssl_cipher = '',
x509_issuer = '',
x509_subject = '';