mysql5.7 root賬戶被刪除
阿新 • • 發佈:2021-01-06
今天用navicat登入mysql,發現登入不上去了,接著上伺服器登入mysql,輸入密碼後一直報錯
怎麼也登陸不上去,之前設定的使用者名稱密碼是root,root…
先跳過授權表登入MySQL
開啟/etc/my.cnf配置檔案
新增skip_grant_tables
,然後重啟mysql systemctl restart mysqld
然後mysql -u root
登入成功
然後看mysql庫下面的user表,發現root賬戶沒有了…不知道咋回事
就當是 mysql5.7 誤刪管理員root賬戶 吧
建立 root 使用者並賦許可權,並修改root密碼
insert into user set user='root',ssl_cipher='',x509_issuer='',x509_subject='';
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';
update user set authentication_string=password('這次可不敢設定root密碼了') where user='root';
重新整理
flush privileges;
退出重新登入,登入成功!!!
還得註釋掉/etc/my.cnf的skip-grant-tables
引數,重啟資料庫
PS設定mysql5.7允許外部訪問
1,mysql -u root -p
登入資料庫
2,use mysql;
選擇基礎資訊資料庫
3,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密碼';
4,flush privileges;
清除快取,重新載入許可權