LAMP架構介紹php
LAMP即:Linux+Apche(httpd)+MySQL+PHPmysql
三個角色能夠在一臺機器、也能夠分開(httpd和PHP要在一塊兒)linux
* Apache是一個web服務軟件 * MySQL是當前最爲流行的小型關係型數據庫 * LAMP就是一個支持解析php程序的環境
httpd、php、mysql三者的交互web
PHP是以一個模塊的形式與Apache結合在一塊兒,Apache不能直接與MySQL通訊,須要經過PHP來交互。sql
apache經過php模塊去取mysql數據的過程叫動態的請求。數據庫
用戶訪問一個網站,登陸的請求數據,提交到apache,apache經過php模塊與mysql數據交互比對。對應的話apache就返回一個登錄的狀態給用戶,網站的一些logo能是存放在linux系統的,一些靜態文件,這個屬於靜態請求。apache
MYSQL_MariaDB介紹架構
Mysql是一個關係型數據庫,由mysql ab公司開發,mysql子啊2008年被sun公司收購,2009年sun公司被oracle公司收購(74億刀)oracle
Mysql5.6變化較大,5.7性能上有很大提高,socket
Mariadb爲Mysql的一個分支,主要有skysql公司(現改名爲MariaDB公司)維護,skysql公司由mysql原做者帶領大部分原班人馬創立。
MariaDB5.5版本對應Mysql的5.5,10.0對應Mysql5.6
MYSQL的版本
* Community社區版本,就是開源版本 * Enterprise企業版 * GA指通用版本,在生產環境中用的 * DMR開發里程碑發佈版 * RC發行候選版本 * Beta開放測試版本 * Alpha內部測試版本
MYSQL安裝
Mysql的及格經常使用安裝包:rpm、源碼、二進制免編譯
下載MYSQL,採用二進制免編譯安裝包
cd /usr/local/src wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
解壓縮安裝包,到/usr/lcoal/mysql目錄下
tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql cd /usr/local/mysql
建立對應的系統用戶,及數據存儲目錄
useradd mysql mkdir /data/
初始化MYSQL
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql //若是須要制定配置文件可增長參數--defaults-file=/etc/my.cnf
//指定MYSQL的用戶及數據存儲目錄
報錯,解決辦法安裝gcc和perl,yum install perl gcc kernel-devel
安裝完上述2個包後,再次執行初始化,發現又報錯。
由於初始化依賴perl腳本語言,且報錯提示缺乏Dumper模塊,用模糊查詢來查找相應的安裝包。
yum list | grep perl | grep -i dumper
若是不肯定須要安裝哪一個包,能夠查下資料,或者都安裝上。當前須要安裝perl-Data-Dumper.x86_64這個包。
再次運行初始化MYSQL,依然報錯,缺乏libaio庫文件,解決辦法安裝,yum install libaio* -y
再次運行MYSQL初始化,怎麼查看初始化是否完成?
首先,查看是否有2個OK,其次在運行完初始化後立馬執行echo $? 看是否返回0.
初始化完成後,接着就是拷貝配置文件是啓動腳本。
cp support-files/my-default.cnf /etc/my.cnf //配置文件 cp support-files/mysql.server /etc/init.d/mysqld //啓動腳本
複製的時候會發現/etc/目錄已經有這個文件了,用rpm查詢下發現他是mariadb數據庫的配置文件
這個配置文件,能夠直接使用不過要修改一些參數,data的目錄socket的目錄其餘註釋掉便可。
爲了將mysql開機啓動,將mysql得啓動腳本拷貝到/etc/init.d/目錄下,cp support-files/mysql.server /etc/init.d/mysqld並修改basedir和datadir參數basedir參數是MYSQL的程序目錄,datadir爲數據存儲目錄,vi /etc/init.d/mysqld。
vi /etc/init.d/mysqld 定義basedir和datadir
設置MYSQL開機啓動的腳本文件權限爲755,默認就是755,將啓動腳本加入到系統啓動服務裏頭
chkconfig --add mysqld
/etc/init.d/mysqld start 或者 service mysqld start開啓mysql服務
查看下進程和監聽的端口,缺乏netstat命令和ifconfig命令能夠安裝net-tools。
關閉mysql服務,對應mysql來講,使用killall mysql 比使用kill pid來得好,由於killall 會先中止當前mysql的寫讀操做,而後將未寫完數據,寫完在殺死進程。有時候數據較多,寫須要較多的時間killall的時候仍是能查詢到mysql服務,這時候須要多些耐心等待。