MySql8有新的安全要求,不能像之前的版本那樣一次性建立使用者並授權需要先建立使用者,再進行授權操作
1.建立新使用者
create user 'username'@'host' identified by 'password';
其中username
為自定義的使用者名稱;host
為登入域名,host
為'%'
時表示為 任意IP,為localhost
時表示本機,或者填寫指定的IP地址;paasword
為密碼
2.為使用者授權
grant all privileges on *.* to 'username'@'%' with grant option;
其中*.*
第一個*
表示所有資料庫,第二個*
表示所有資料表,如果不想授權全部那就把對應的*
寫成相應資料庫或者資料表;username
為指定的使用者;%
為該使用者登入的域名
3.授權後重新整理許可權
flush privileges;
4.撤銷授權
#收回許可權(不包含賦權許可權)
REVOKE ALL PRIVILEGES ON *.* FROM user_name;
REVOKE ALL PRIVILEGES ON user_name.* FROM user_name;
#收回賦權許可權
REVOKE GRANT OPTION ON *.* FROM user_name;
#操作完後重新重新整理許可權
flush privileges;