以前用mysql 數據庫直接安裝後用root 用戶,就可以在命令行登錄,也可以通過遠程操作,自從mysql被oracle收購後,發現權限可能比以前更加細致了,安裝環境Win 7 x64,mysql 版本Server version: 5.5.32 MySQL Community Server (GPL) ,安裝過後,發現只能從本地登錄,而不能通過遠程訪問,後來在網上找資料,發現說把mysql 數據庫中root 用戶的host改為% 並且執行
FLUSH PRIVILEGES;
執行過後,果然發現可以遠程登錄了,但是本地用localhost登錄的時候,或者用127.0.0.1登錄的是卻又發現登錄不了,查詢數據mysql中user的權限發現 root 用戶有三個一個linux系統下的,這個可以不考慮,剩下兩個相同用戶名的權限不一樣,而且一個有密碼,另一個無密碼,經過測試
UPDATE USER SET 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'
WHERE HOST='localhost' AND USER='root'
UPDATE USER SET PASSWORD='*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' WHERE HOST='localhost' AND USER='root'
FLUSH PRIVILEGES;
發現可以用locahost登錄了,至此對mysql數據的權限進一步深入的理解。