tid=196& 本帖最後由 IT_man 於 2014-12-31 09:25 編輯
, d9 p0 d( ]% e( R1 Q* I& M" z! n3 N1 `# c
【說明】7 L4 P& t2 C6 v1 A. X
MySQL資料庫授權有分成本機及遠端,例如,一個帳號綁定給localhost的話,那該帳號只能在MySQL資料庫本機使用,要開放給遠端主機連線到MySQL資料庫主機的話,那就必須將帳號綁定給遠端主機使用,下方介紹方式都是授權或刪除所有權限,MySQL權限有很多可以參考下列:
! I' G9 e+ E' b) S2 Q' D9 F$ n3 X. d" {2 {/ _& V3 u
8 ~* Y( B$ G+ P
! {6 J5 G' L6 B2 i資料庫(DateBase)十五種權限:
+ c/ t: G. A+ Q" |4 o$ \! _: F+ J2 H: g& b& j3 V" i1 @
) D, H+ X( D; G- {
ALL PRIVILEGES、ALTER、CREATE、DELETE、DROP、FILE、INDEX、INSERT、PROCESS、REFERENCES、RELOAD、SELECT、SHUTDOWN、UPDATE、USAGE
% o1 l/ w# K0 ^* i: m% P/ A: A! X# f
+ M+ d* O2 ]9 c6 Y
& Z" s& p, T+ f9 ]# j9 f
* i I y: @0 o) _% A資料表(Table)八種權限:
3 k8 T" S" p! I8 U3 Z1 g7 {8 e. e' O
8 L" V; I! i5 ^6 \+ i
SELECT、INSERT、UPDATE、DELETE、CREATE、DROP、INDEX、ALTER
3 ~9 o: D# B4 Y% F* k
% @ p& ], t) e t1 I [4 N) D ~+ o5 O' {9 s
, u" u* h; _% k/ _6 \& E% O& I' R& r1 D! c0 G' S4 s
資料欄(column)三種權限:8 L# H, w0 K$ X9 N% C* L/ ~7 ^
1 b" O: W' n4 N, y' i5 _4 j$ K/ f4 T% v6 Z
SELECT INSERT UPDATE
. `6 T0 J1 T2 D& c0 i/ E/ p$ g) M
7 Y/ J$ G0 i. ~
. }2 D7 E; Q" x; g- |; ]$ K
% j1 q: Y+ h, V" Q9 C: C" P【實例:】$ {" S* y2 f- I! M+ D. g
6 s' x2 ?8 F [% i% ]- N
; H: G+ `* _6 g) p6 p O9 Q[root@localhost ~]# mysql -u root -p; u& [# E: G# M! m; S9 T
Enter password:
1 F0 [8 j( H0 r! J& _4 L8 o. lWelcome to the MySQL monitor. Commands end with ; or \g.
5 N, z7 {- j0 c- k6 R2 sYour MySQL connection id is 23 i1 G2 X' \0 a: ?/ b! O
Server version: 5.1.52 Source distribution; G; ?1 H' d( Z0 C5 r+ N8 q0 N
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
8 h1 F1 ^4 E. _+ z: rThis software comes with ABSOLUTELY NO WARRANTY. This is free software,
( T3 r" _. C- Xand you are welcome to modify and redistribute it under the GPL v2 license+ C) P( Y' P8 K! ` Z& K5 q9 {1 ]
( j' r- q% Q3 s$ U& w
/ h- r# M1 A, mType 'help;' or '\h' for help. Type '\c' to clear the current input statement." Y( q" ]* M# ?
' e! |1 i( j4 L* ~
9 S# ]" V0 a/ v- X, Y5 j2 d- S5 m6 Kmysql> grant all privileges on *.* to test@localhost identified by '1234567'; //第一個星號是database,第二個星號是table
. ]- b" o: L- ]: m* p* X% ?) v8 g# p) Q. T f" q
! T6 o; l5 K5 Z
Query OK, 0 rows affected (0.00 sec) //建立test帳號本機權限
3 E+ Z( D/ R# g' ]9 G" ^% s% I1 F) ?
6 d: m K3 J W9 m# z! ?( T: g& D7 c5 |0 V
mysql> grant all privileges on *.* to test@192.168.1.2 identified by '1234567';
' v8 x$ C) _/ T- \8 M
: O0 U- U I" l2 ?) d7 o* o1 \6 Q" y# x, P; @
Query OK, 0 rows affected (0.01 sec) //建立test帳號遠端權限; Y7 c! e. z; _% k% `: T- E
% z. o+ x5 { b8 D0 b( R) W# r6 }$ @8 u7 M# e; @
, x+ {# C; \' R0 q3 amysql> select host,user from mysql.user; //查詢MySQL所有授權帳號
" E3 [$ d' y* N9 p4 U( p! k0 g! j+ A
; T6 p U1 G, }
+-----------------------+-------+ M7 [! b. @3 h, x. g' ]% Z
| host | user |
0 J+ v1 j& V5 K) u/ P* e6 i7 Y+-----------------------+-------+/ J4 b* O$ V3 L- b. A. w, Z
| 127.0.0.1 | root |" T! c. H! h% ~2 I; h8 y3 n" ~/ d
| 192.168.1.2 | test | //帳號test遠端授權+ h( W4 z9 J, w: ^
| localhost | |1 |: P4 K$ Q9 K% N& x/ f
| localhost | test | //帳號test本機授權, r5 v( g1 I4 m4 V
| localhost | root |' `! Y! X* {5 @! }1 S- w1 u
| localhost.localdomain | |+ c; ` Q- G7 r' t7 j$ q
| localhost.localdomain | root |
/ P7 F `* { F# A4 j+-----------------------+-------+& q! d$ o9 c7 n! I/ u1 v- C
7 rows in set (0.00 sec)
0 @) W/ j; T7 y# F2 N& T5 J4 H) w& |- u; V
' \2 @5 O% x4 {# \- V6 z( f
mysql> quit //離開MySQL* d |8 o! e' M9 J
Bye9 t0 C! s1 O0 m g; T" ]
[root@localhost ~]
7 k1 a8 T& ]7 R1 y/ w- \" X/ y3 O1 f' A
p.s 其他mysql 重要語法請參考http://mail.hmes.kh.edu.tw/~jona/redhat/mysqlphp/mysqlsyntax.htm4 y4 m$ T& {" A: o+ v* R7 Y1 E, R
2 V" s$ K3 ^# ^( u+ Y
- G/ g" d/ K# ^' O: { |