mysql使用者許可權問題(grant命令學習)
使用者許可權管理:
- 可以限制使用者訪問哪些庫、哪些表
- 可以限制使用者對哪些表執行SELECT、CREATE、DELETE、DELETE、ALTER等操作
- 可以限制使用者登入的IP或域名
- 可以限制使用者自己的許可權是否可以授權給別的用
1.授權某個使用者: grant all privileges on . to ‘username1’@‘hostname1’ identified by ‘password’ with grant option; all privileges:表示將所有許可權授予給使用者。也可指定具體的許可權,如:SELECT、CREATE、DELETE、ALTER、DROP等。 on:表示這些許可權對哪些資料庫和表生效,格式:資料庫名.表名,這裡寫“*”表示所有資料庫,所有表。如果我要指定將許可權應用到test_db庫的student表中,可以這麼寫:test_db.teacher to:將許可權授予哪個使用者。格式:”使用者名稱”@”登入IP或域名”。%表示沒有限制,在任何主機都可以登入。比如:“user1”@"%",表示uesr1這個使用者能在所有主機上登陸。 ”yangxin”@”192.168.0.%”,表示yangxin這個使用者只能在192.168.0IP段登入 identified by:指定使用者的登入密碼 with grant option:表示允許使用者將自己的許可權授權給其它使用者 可以使用GRANT給使用者新增許可權,許可權會自動疊加,不會覆蓋之前授予的許可權,比如你先給使用者新增一個SELECT許可權,後來又給使用者添加了一個INSERT許可權,那麼該使用者就同時擁有了SELECT和INSERT許可權。 2、重新整理許可權:flush privileges 3、檢視某個使用者的許可權:show grants for “username”@“ip or domain name” 4、回收某個使用者的許可權: 回收使用者對所有資料庫、表的select許可權:remoke select on .