tid=11766&安裝完Mysql 後的設定 :
, T9 D4 L. ^. y8 M. L' O★進一步設定 MySQL★0 _" t8 U: \& w, R1 o
A.6 u) s- @- r8 P+ y: K* J
設定php.ini(/etc/php.ini)
5 Q9 a0 p$ V; n6 C" J" h" b0 w$ aphp.ini
M! D& L4 o& F" q. S" C8 d1 memory_limit = 128M //PHP可用記憶體上限
& Y2 x$ Q2 J- x, W$ m5 I2 display_errors = Off //顯示錯誤訊息
( |7 E( K5 q$ r) e/ V4 W3 date.timezone = Asia/Taipei //時區(這行要設定,不然PHP使用到時間函數時會有錯誤訊息)) H" U' b3 F8 g" Q
4 session.cookie_lifetime = 0 //session存活時間(單位秒,0代表存活至瀏覽器關閉)7 b; E/ W( W& \+ [ C4 B' a
' }0 H; G; N7 g' m
B.
4 z' v7 D* O( }5 J# {2 g設定my.cnf(/etc/my.cnf)2 d# i5 P6 ~2 R' q5 _
my.cnf : 0 M& J. @9 m0 r
1 log-error=/var/log/mysqld.log //日誌存放位置) {5 x0 T! z5 l! c. l K* t- @2 T. k+ T
2 connect_timeout = 15 //連線timeout
! |2 \- s' R6 z% \: y9 x, m( V3 max_connections = 3000 //最大連線數
2 I) f" u- L% U& k. w4. service mysqld restart
& k( V2 M( v$ H0 Y+ V" I4 _% b# i" \- F- ~- z# a% Z
) h! S9 a) I7 ?, g* ZC.
" l0 M |& q5 Z0 @) u1 t6 i5 y& z2 y設定 MySQL 資料庫管理者 root 帳戶的密碼,執行「sudo mysql_secure_installation」,他會問你底下幾件事
* [/ Y* ^; z+ n* ~! W1. Enter current password for root (enter for none): // 直接按 Enter,因為預設沒密碼8 _/ c0 }1 j- B
2. Set root password? [Y/n] //輸入 Y 來設定密碼
# Y4 R: o1 O9 l D: O/ w9 q: M+ z& M3. New password: // 輸入 root 新密碼1 g. @4 R; M5 g$ j- x5 H) t1 j6 Q" B
4. Re-enter new password: // 再一次輸入 root 新密碼
, @4 }3 b& T2 t& _5 E1 u. ^5. Remove anonymous users? [Y/n] //預設 Yes ,直接按 Enter
6 [" c: q. O1 w, b" V6. Disallow root login remotely? [Y/n] //預設 Yes ,直接按 Enter
8 W( ~9 K9 U9 F4 p* E; K( L; _7. Remove test database and access to it? [Y/n] //預設 Yes ,直接按 Enter! ^- [7 l$ b9 t" E5 Q! N
8. Reload privilege tables now? [Y/n] //預設 Yes ,直接按 Enter3 w8 ]- s1 i) i( q, L" r) m8 _& U
! w; C& d6 R- v" J" l
7 q+ y% @" h9 q* u接著利用剛剛設定的 root 密碼登入 MySQL,執行「sudo mysql -u root -p」,密碼正確就會進入「mysql>」這樣的提示符號。「參考」
6 U A0 d8 t# { U/ M4 M※ 執行選擇要用那個資料庫' s; t X& s' |0 e# B
mysql> use mysql# ^: u, f! ~+ a( y0 _. l4 C
" z% V' H# @& V! v3 E+ y
※ 執行「select host,user from user ;」要有分號結尾才會執行。3 o8 k) d7 W9 \7 s
mysql> select host,user from user ;
# l$ n' ~" Z( z/ g+-----------+------+3 w) }, Y9 B& q, b
| host | user |. M. k7 ]9 A* k
+-----------+------+2 ?0 E! u1 `9 m! ^- K
| 127.0.0.1 | root |- x& a m" G! K9 P8 {9 E2 D
| localhost | root |" D, C& v+ n m w
+-----------+------+) p1 o& _5 F5 f. [; |
2 rows in set (0.00 sec)
. z& n0 h7 x/ h: r8 U, W0 k9 H) f. G
※ 新增一個使用者 P# m. T" H$ u, T& O
insert into user (host,user,password) values ('%','your_account',password('your_password'));
! l6 G, u. U% a: v7 W
5 B( R$ F s5 G7 D※授與該使用者管理者權限,這樣你才能有辦法遠端處理 (因為 root 的遠端登入被停掉了) ; X' |! ]; {$ W z
GRANT ALL ON *.* TO 'your_account'@140.112.1.1 IDENTIFIED BY 'your_password' WITH GRANT OPTION;1 ~3 Q. P1 G: a* K7 }
不然剛剛那個帳號,只會是一般資料庫使用者的帳號,而且沒任何權限。 e1 o9 q! e( I" G2 y( K0 ^; n
※讓剛剛的設定生效
5 l1 P! U8 N7 a5 @5 p: d$ fFLUSH PRIVILEGES;
9 w7 ~+ d" x: M4 W* L! F安裝完Phpmyadmin 時 ,run http://www.domain.com/dbadmin show error : The mbstring extension is missing. Please check your PHP configuration.
: h- e" ~9 J5 }: E/ s3 L# K7 S4 y N請安裝
( m8 u' U" x2 G. ]) y# _0 }/ m J) W7 y
( E: i( s% |) [5 y8 F2 uyum -y install php-mbstring1 Q9 m5 R& U7 Q$ o
2 p6 W! m- N/ |" i2 }
若出現缺少『mcrypt』,請安裝2 K% N# y4 j0 Q& E4 s2 F" [
6 d5 u. w: |5 t
yum -y install mcrypt) d" I6 k; G2 Q0 C
service nginx restart
, ~3 F9 Z8 m3 o: yLogin phpadmin 後出現 error:缺少 mysqli 擴充套件。請檢查 PHP 設定。Solution:
4 w5 R0 K6 A9 t, Iphp -m | grep mysqli ===> confirm mysqli module is installed2 w# [* u# F9 t+ j- b! n6 C+ t
php -i | grep extension_dir ===> 尋找延伸目錄
6 u& p: n6 S& Zyum -y install php-mysql (或 yum install php5-mysqli) ===> ok
# r( C; N/ D" I缺少 mcrypt 擴充套件。請檢查 PHP 設定。1 g! W% Y6 R& R
yum install php-mcrypt
" E* k% @' J7 C! ]( oyum install libmcrypt libmcrypt-devel ===> ok4 M* m! K5 V5 `2 t
0 A: V: Q! X# Y! R8 x
/ r9 W9 c7 u5 u2 k3 u, E. R% A: N |