1. 程式人生 > >lamp架構(一)——簡介與mysql安裝

lamp架構(一)——簡介與mysql安裝

11.1 LAMP架構介紹
11.2 MySQL、MariaDB介紹
11.3/11.4/11.5 MySQL安裝

LAMP架構介紹

LAMP是指(Linux+Apache(httpd)+MySQL+PHP)一組通常一起使用來執行動態網站或者伺服器的自由軟體,本身都是各自獨立的程式,但是因為常被放在一起使用,擁有了越來越高的相容度,共同組成了一個強大的Web應用程式平臺(簡單說就是建立web伺服器架網站)。

lamplogo圖
三個角色可以在一臺機器、也可以分開(httpd和PHP要在一起)

MySQL、MariaDB介紹

MySQL是一個關係型資料庫,由mysql ab公司開發,mysql在2008年被sun公司收購(10億刀),2009年sun公司被oracle公司收購(74億刀)。MySQL5.6變化比較大,5.7效能上有很大提升。

Mariadb為MySQL的一個分支。MariaDB主要由SkySQL公司(已更名為MariaDB公司)維護,SkySQL公司由MySQL原作者帶領大部分原班人馬創立。Mariadb5.5版本對應MySQL的5.5,10.0對應MySQL5.6。

MySQL安裝

MySQL安裝方式有二進位制包、原始碼包。我們常用二進位制包,不過有些公司可能想原始碼編譯提高效能。下面是mysql5.6二進位制包安裝方法。

  1. 下載mysql5.6安裝包wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
  2. 解壓後移到/usr/local/改名mysql
  3. mkdir -p /data/mysql
  4. useradd -s /sbin/nologin -M mysql
  5. ./script/mysql_install_db --user=mysql --datadir=/data/mysql #報錯提示安裝以下依賴:perl-Module-Install libaio-devel
  6. cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #設定mysql配置檔案,詳見下面
  7. cp /usr/local/mysql/support-files/mysql.service /etc/init.d/mysqld
    #設定mysql啟動配置檔案,詳見下面
  8. service mysqld startsystemctl start mysqld #啟動mysql

mysql5.7二進位制包安裝方法和上面類似。安裝時linux可能會缺少依賴包,根據提示搜尋安裝。比如用搜索引擎搜尋關鍵報錯資訊,如果知道依賴包的關鍵字可以嘗試yum list|grep xxx。我使用miniDVD安裝的centos7,在第五步缺少perl和libaio相關依賴。

mysql配置檔案

my.cnf是mysql配置檔案,預設在linux的/etc/my.cnf。5.7版本之前二進位制包中support-file目錄裡有其模板。將模板複製到/etc/下面後vim /etc/my.cnf。檔案裡主要配置以下幾行:

innodb_buffer_pool_size = 128M

basedir =/usr/local/mysql
datadir =/usr/local/mysql/data
port = 3306
server_id =128
socket =/tmp/mysql.sock

join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M

basedir是mysql安裝目錄,datadir是指定mysql資料庫目錄,其他設定保持預設即可。

除了my.cnf,啟動指令碼也很重要。support-file目錄中也有模板(mysql.service)。cp /usr/local/mysql/support-file/mysql.service /etc/init.d/mysqld把模板拷貝到/etc/init.d/目錄後就可以使用chkconfig配置啟動服務:

chkconfig --add mysqld #新增mysqld
chkconfig mysqld on #設定mysqld開機啟動

然後就可以啟動mysqld服務了。這裡使用service mysqld start或者systemctl start mysqld都可以。前一個命令是sysV的啟動方式,後一個是system的啟動方式。除此之外還可以使用/usr/local/mysql/bin/mysql-safe --default-file=/etc/my.cnf --user=mysql --datadir=/data/mysql來啟動。