前言:今天幫同事處理了乙個關於mysql授權的問題,雖是小事,不過不注意的話,還挺頭大的,呵呵。
先對比看看下面2個授權資訊之間的區別吧:
grant select, delete, update, insert on *.* to 'yejr'@'192.168.0.1' identified by password '*1088950c531dc1be311435f60b57145d8a49019c'
和
grant select, delete, update, insert on `*`.* to 'yejr'@'192.168.0.1' identified by password '*1088950c531dc1be311435f60b57145d8a49019c'
呵呵,看起來都很像,沒什麼問題吧,實際反映到資料庫授權表結果變成了:
grant select, delete, update, insert on *.* to 'yejr'@'192.168.0.1' identified by password '*1088950c531dc1be311435f60b57145d8a49019c'
和
grant usage on *.* to 'yejr'@'192.168.0.1' identified by password '*1088950c531dc1be311435f60b57145d8a49019c'
grant select, insert, update, delete on `*`.* to 'yejr'@'192.168.0.1'
現在看出來區別了吧。
第一條授權資訊,允許 [email protected] 對所有資料庫&表(*.*)有相關許可權;而第二條授權資訊則允許 [email protected] 僅僅對資料庫*下面的表(`*`.*)有相關許可權。注意,這裡的資料庫名*可不是代表所有哦,而是具體的名字就叫做*,也就是說資料庫主目錄下,會有乙個名是*的子目錄。mysql允許以反引號來把資料庫名引用起來,是的可以使用一些比較古怪的字元,例如:*,',$,%等等。
MySQL FAQ 系列 為何授權不對
前言 今天幫同事處理了乙個關於mysql授權的問題,雖是小事,不過不注意的話,還挺頭大的,呵呵。先對比看看下面2個授權資訊之間的區別吧 grant select,delete,update,insert on to yejr 192.168.0.1 identified by password 10...
Go基礎系列 為select設定超時時間
go channel系列 誰也無法保證某些情況下的select是否會永久阻塞。很多時候都需要設定一下select的超時時間,可以借助time包的after 實現。time.after 的定義如下 func after d duration chan timeafter 函式接受乙個時長d,然後它af...
DB2 設定列為自增的一系列問題
最近臨時加入裡乙個專案團隊,他們使用的資料庫正是db2,這個資料庫使用起來真的特別麻煩,並且非常容易鎖表。我的所有命令是使用 dbvisualizer pro 解決方法 call sysproc.admin cmd reorg table fwd.tbl fwd back file alter ta...