咱們此前已經說過,要想編譯php5.4的話就須要安裝MySQL,事實上在php5.4後MySQL不裝也可以單獨編譯安裝php5.4了,只是必需要在編譯的時候使用—withmysql=mysqlnd讓它實如今本地進行加載。php
LAMP安裝次序:apr --> apr-util --> httpd --> MySQLmysql
安裝MySQL
- 下載源碼包:
- 解壓mysql-5.5.28:
注:解壓後推薦使用建立鏈接的方式連接過去,不要改變它的原有名稱,這樣它的版本號及平臺都會保留,容易識別正在識別的是什麼版本的。sql
- 新建用戶以安全方式運行進程:
對咱們而言,要想初始化安裝MySQL得使用mysql用戶mysql組,因此得建立mysql用戶mysql組,爲保證系統安全性,mysql爲系統用戶,不能登陸系統只能運行某個服務。數據庫
INSTALL-BINARY:這個文件中明確說明了安裝binary格式的mysql的步驟;安全
如:服務器
注意:MySQL目錄下的全部mysql目錄下的全部文件的屬主屬組都須要改爲mysql。網絡
- 準備數據存放的文件系統:
查看初始化的選項:併發
--user=user_name:表示以哪一個用戶的身份進行初始化函數
--datadir=path:數據目錄性能
注意:
mysql運行起來後是一個服務器,這個服務器未來須要闖將數據庫數據表,這些數據此前使用rpm包安裝時保存在/var/lib/mysql下,而此處解壓安裝安裝在當前目錄下的data目錄下,可是事實上將其放在軟件安裝路徑下不是一個很好的選擇,所以須要另外指定路徑。
通常來說,數據根據企業規模的不一樣可能會變得很是大,因此通常而言建議放在一個獨立的分區上,並且是一個獨立的邏輯捲上,由於放在邏輯捲上未來數據增大時能夠很是方便的擴大數據邊界,因此應儘量放在一個邏輯捲上,所以就須要使用datadir指定另外的位置在什麼地方,由於它會將初始化的結果保存在數據目錄下而默認爲data,此處就使用邏輯卷;
建立邏輯卷:
- 初始化mysql-5.5.28:
注意:初始化完成後必定要記得mysql安裝目錄下的文件的屬主不要給mysql用戶,由於未來一旦有人攻破mysql進程,他將得到整個文件的全部權限,因此通常而言將其屬主改回root用戶。
那通常來說若是把數據放在data中,若是沒有改別的位置,數據還放在data中,那它的屬主就不能是root。
此刻爲止,MySQL的安裝基本成功!
- 爲mysql提供主配置文件:
MySQL的配置文件:
/etc/my.cnf,MySQL的配置文件由n段組成
配置文件格式:使用中括號式的分段式,一段指令只對一個片斷生效。它是一個集中式的配置文件,能夠爲多種程序提供配置文件,如:
[mysql] #客戶端配置文件
[mysqld] #服務器端配置文件
[client] #對全部的客戶端程序都生效
MySQL尋找配置文件路徑的步驟:
MySQL配置文件比較獨特,MySQL找配置文件時會先找/etc/my.cnf -->
找完這個後,會找/etc/mysql/my.cnf -->
找完這個後,找$BASEDIR($BASEDIR是MySQL進程或實例的運行目錄,通常來說,就是安裝目錄)下的my.cnf,即$BASEDIR/my.cnf -->
找完這個後,會找$DATADIR/my.cnf -->
找完這個後,會找用戶家目錄下的.my.cnf即-/.my.cnf,但由於運行mysql的用戶mysql,mysql沒有家目錄,因此找不着。
步驟小結:/etc/my.cnf --> /etc/mysql/my.cnf --> $BASEDIR/my.cnf --> -/my.cnf
注意:
- 全部路徑找完以後,這四個目錄中的配置可能會有衝突的,以最後一個爲準。後一個會覆蓋前一個。
- 就算沒有配置文件,mysql也能運行起來,由於它的不少配置都有默認定義的,咱們要想運行mysql,須要給它提供一個配置文件。
MySQL爲咱們提供了四個配置文件樣例:
這四個mysql提供的配置文件的主要區別主要在於內存大小,咱們按需使用便可。
另外還須要添加以下一行指定mysql數據文件的存放位置並按需修改併發線程數:
thread_concurrency:線程併發數,數量設定爲CPU數量*2;
- 爲mysql提供sysv服務腳本:
mysql.server是MySQL爲咱們提供的腳本;
添加至服務列表:
然後就能夠啓動服務測試使用了。
爲了使用mysql的安裝符合系統使用規範,並將其開發組件導出給系統使用,這裏還須要進行以下步驟!
- 輸出mysql的man手冊至man命令的查找路徑:
編輯/etc/man.config,添加以下行便可:
- 輸出mysql的頭文件至系統頭文件路徑/usr/include:
這能夠經過簡單的建立連接實現:
- 輸出mysql的庫文件給系統庫查找路徑:
也可使用以下方式輸出庫文件路徑:
# echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
然後讓系統從新載入系統庫:
- 修改PATH環境變量,讓系統能夠直接使用mysql的相關命令:
MySQL內部變量、通配符及部分經常使用函數:
performance_schema:系統狀態信息收集庫,如:mysql已經接受了多少個用戶請求,有多少個用戶鏈接過,用戶鏈接後網絡發送了多少數據過去。這些信息可直接查看。
在MySQL服務器內部有兩類變量:(MySQL維持了兩類變量)
注意:未來對MySQL的管理主要就集中在這兩類變量上,調整MySQL的運行特性,調優MySQL就是調整這些東西,查看調整MySQL性能後是否有提高,就查看狀態變量。
- 服務器變量:
定義MySQL服務器運行屬性(特性)。就是使用參數能夠定義改變MySQL服務器的工做狀態的,即配置文件中提供的那些指令,如:DATADIR在什麼路徑下、要不要啓動日誌、日誌文件放在什麼路徑下等,就是定義MySQL運行起來後怎麼運行的。
查看可以使用:
SHOW GLOBAL VARIABLES [LIKE ‘變量名(支持通配符)’]
查看某一特定變量可以使用:
SHOW GLOBAL VARIABLES LIKE ‘變量名’;
- 狀態變量:
保存了mysql服務器運行時的統計數據
查看可以使用:
SHOW GLOBAL STATUS [LIKE ‘變量名(支持通配符)’]
使用示例:
MySQL通配符:
- _:任意單個字符;
- %:任意長度的任意字符;
顯示當前MySQL的版本號:
顯示當前默認的數據庫:
顯示當前登陸的用戶: