安裝完Mysql 後的設定 :
# j) a. r& _% [3 `: k: x★進一步設定 MySQL★2 L4 U9 b) x; U
A.
U* Q1 [4 ~: w% l1 w% T+ V設定php.ini(/etc/php.ini)
; R9 k$ P" b/ Dphp.ini. \8 Q- u: p, a: x( |. I& z& n
1 memory_limit = 128M //PHP可用記憶體上限, H! t. \! a8 L" O9 G
2 display_errors = Off //顯示錯誤訊息
$ y0 U* n, H* U% p3 date.timezone = Asia/Taipei //時區(這行要設定,不然PHP使用到時間函數時會有錯誤訊息)
2 [' g9 d# E/ Y4 session.cookie_lifetime = 0 //session存活時間(單位秒,0代表存活至瀏覽器關閉)
' {; e) `& D/ _0 b( e/ A6 F8 H& Q% O7 p# C
B.5 _7 R) l3 H6 f+ s& |" u7 e0 N" D
設定my.cnf(/etc/my.cnf)
6 b8 F; y( Y7 b: Lmy.cnf :
& Q* p4 F" h1 T- o1 w/ `1 log-error=/var/log/mysqld.log //日誌存放位置) c, K* @$ K* k6 b0 P( P! R
2 connect_timeout = 15 //連線timeout8 z- V2 `* y# M" p3 i" P5 A, Z
3 max_connections = 3000 //最大連線數8 `4 e7 Z+ t$ r
4. service mysqld restart
3 I: N8 d9 `6 ]0 f) ]8 M6 d' x4 q* ^4 Z6 w
$ g: n- j: l, f! G- A& UC.
$ e9 U% p/ i: I6 X設定 MySQL 資料庫管理者 root 帳戶的密碼,執行「sudo mysql_secure_installation」,他會問你底下幾件事$ Y2 Q' e) n* f# [0 p
1. Enter current password for root (enter for none): // 直接按 Enter,因為預設沒密碼7 N7 I$ ^8 B, H) ?7 _% d- ?9 `& E' `
2. Set root password? [Y/n] //輸入 Y 來設定密碼
6 P% F+ K9 Y8 u& t0 m3. New password: // 輸入 root 新密碼1 y3 C" H7 {2 [' @4 v5 ] ^, E
4. Re-enter new password: // 再一次輸入 root 新密碼7 R3 v# o5 \3 r, G8 D9 B* \
5. Remove anonymous users? [Y/n] //預設 Yes ,直接按 Enter
" q7 M3 @+ V+ V$ f2 b6 }2 B6. Disallow root login remotely? [Y/n] //預設 Yes ,直接按 Enter
0 J1 c' e; ~# C1 P7. Remove test database and access to it? [Y/n] //預設 Yes ,直接按 Enter
: h. k3 i$ l5 a1 a9 `( K8. Reload privilege tables now? [Y/n] //預設 Yes ,直接按 Enter1 U& S7 x2 u7 x) }* x
7 `/ q% M! r' t4 q/ u; `
3 O$ W% `1 B3 _% z" L( i接著利用剛剛設定的 root 密碼登入 MySQL,執行「sudo mysql -u root -p」,密碼正確就會進入「mysql>」這樣的提示符號。「參考」6 e0 M6 X% o' H- ^: f& U
※ 執行選擇要用那個資料庫
' \8 E3 ]3 W7 M9 P+ Q) {1 y; Zmysql> use mysql+ a" a2 z. R, I/ v9 Q4 s- ?
0 M6 \. T! g! E8 {, c1 t1 x※ 執行「select host,user from user ;」要有分號結尾才會執行。
; i5 b$ H% j* f5 ~' Mmysql> select host,user from user ;
6 a7 I+ T$ J2 a. g+-----------+------+% P6 z( O3 `* K( O, F
| host | user |
" w& k: @0 H2 _/ N2 ^9 d w& S+-----------+------++ |+ k9 N! r* ?6 Z9 y) [
| 127.0.0.1 | root |
! N4 w) ]/ s4 ?- }" X| localhost | root |, L2 Z2 C* O6 C' @; [2 R
+-----------+------+! a, e9 O! D3 p! d( ], @5 I
2 rows in set (0.00 sec)" m4 n) e+ e: _+ q8 |+ p
; H# ?0 G8 Q) e※ 新增一個使用者
+ v9 w0 X% N, A+ R$ W' R5 einsert into user (host,user,password) values ('%','your_account',password('your_password'));
/ k9 `9 Z; L* y
* q4 M7 m: f. |+ ^6 @: {5 ^※授與該使用者管理者權限,這樣你才能有辦法遠端處理 (因為 root 的遠端登入被停掉了) 5 J- }6 z6 w9 {9 Y
GRANT ALL ON *.* TO 'your_account'@140.112.1.1 IDENTIFIED BY 'your_password' WITH GRANT OPTION; F# F3 D, F1 Z# F" V, [0 j- L2 I
不然剛剛那個帳號,只會是一般資料庫使用者的帳號,而且沒任何權限。
9 b( |) \7 e! F$ _7 e% F! C6 c※讓剛剛的設定生效- b5 C' f6 o' |, ?' ]' c5 f8 p
FLUSH PRIVILEGES;
V/ a6 j- g3 z0 V安裝完Phpmyadmin 時 ,run http://www.domain.com/dbadmin show error : The mbstring extension is missing. Please check your PHP configuration.
# q9 I( W |' J0 Y1 N請安裝5 H! H: a, ~7 X- T
& @, n) M& T1 l' S* d) @yum -y install php-mbstring ^ }- ]3 c) M, |0 t
& _/ U; `5 ^9 l( i' N: m# W R
若出現缺少『mcrypt』,請安裝 |+ [1 D4 ?. A& j c) {0 g
# N$ g& e. p4 U9 p) lyum -y install mcrypt
" K. M- b* O* r. g' d' |: d* ?' Qservice nginx restart$ W8 R( ?4 i( E
Login phpadmin 後出現 error:缺少 mysqli 擴充套件。請檢查 PHP 設定。Solution:
9 o9 x6 K' N! r0 A l$ H& gphp -m | grep mysqli ===> confirm mysqli module is installed
8 @4 k- b8 k9 E2 r# W1 ~php -i | grep extension_dir ===> 尋找延伸目錄
, L1 N! V6 w2 iyum -y install php-mysql (或 yum install php5-mysqli) ===> ok) c6 |2 q% B7 m0 f" P: Q+ }2 ^
缺少 mcrypt 擴充套件。請檢查 PHP 設定。
" ~+ F6 K2 u w$ S3 J }8 ~yum install php-mcrypt q2 J) ]# w! L, i( v0 V
yum install libmcrypt libmcrypt-devel ===> ok
0 z. |# w' I4 m: H! j- l* P) _ `& n/ y( ~- g, U( q; {
$ ]4 m9 h2 O+ A' ?
|
|