linux高級知識,LAMP架構(一),MYSQL安裝

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服務,這時候須要多些耐心等待。

相關文章
相關標籤/搜索