1. 程式人生 > >LAMP架構和MySQL_MariaDB介紹及MySQL安裝

LAMP架構和MySQL_MariaDB介紹及MySQL安裝

LAMP 架構

一、LAMP架構介紹

LAMP 是Linux Apache MySQL PHP的簡寫,其實就是把Apache, MySQL以及PHP安裝在Linux系統上,組成一個環境來運行php的腳本語言。Apache是最常用的WEB服務軟件,而MySQL是比較小型的數據庫軟件,這兩個軟件以及PHP都可以安裝到windows的機器上。

1、Linux+Apache(httpd)+MySQL+PHP
技術分享圖片
2、三個角色可以在一臺機器、也可以分開(httpd和PHP要在一起)
3、httpd、PHP、MySQL三者如何工作
技術分享圖片

參考文檔:http://blog.csdn.net/zdp072/article/details/50583581

二、MySQL和MariaDB介紹

MySQL/Mariadb介紹

  • MySQL是一個關系型數據庫,有mysql ab公司開發,mysql在2008年被sun公司收購(10億刀),2009年sun公司被Oracle公司收購(74億刀)
  • MySQL官網https://www.mysql.com 最新版本5.7GA/8.0DMR
  • MysSQL5.6變化比較大,5.7性能上有很大提升
  • Mariadb為MySQL的一個分支,官網https://mariadb.com 最新版本10.2
  • MariaDB主要由SkySQL公司(現更名為MariaDB公司)維護,SkySQL公司由MySQL原作者帶領大部分原班人馬創立
  • Mariadb5.5版本對應mysql的5.5 ,10.0對應mysql5.6
  • Community 社區版本,Enterprise 企業版,GA(Generally Available)指通用版本,在生產環境中用的,DMR(Development Milestone Release)開發裏程碑發布版,RC(Release Candidate)發行候選版本,Beta開放測試版本,Alpha內部測試版本

三、MySQL的安裝

我們平時安裝MySQL都是源碼包安裝的,但是由於它的編譯需要很長的時間,所以建議安裝二進制免編譯包。你可以到MySQL官方網站去下載 http://dev.mysql.com/downloads/ 具體版本根據你的平臺和需求而定,目前比較常用的為mysql5.6版本。(註意,下面的安裝步驟是基於64位操作系統的,如果你的系統為32位,則需要下載一個32位的包)

uname -a        //查看系統版本

1、下載mysql到/usr/local/src/

[root@zlinux ~]# cd /usr/local/src
[root@zlinux src]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz^C

2、解壓

[root@zlinux src]# tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

3、把解壓完的數據移動到/usr/local/mysql

[root@zlinux src]# mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql

技術分享圖片

4、創建mysql用戶

[root@zlinux mysql]# useradd mysql

5、創建/data/目錄,已經存在的話則不創建(用於存放mysql的數據文件)

[root@zlinux mysql]# mkdir /data/

6、初始化mysql

[root@zlinux mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

--user 定義數據庫的所屬主, --datadir 定義數據庫安裝到哪裏,建議放到大空間的分區上,這個目錄需要自行創建。
初始化的時候,可能回出現如下問題:
技術分享圖片
字面意思就是,缺少Perl模塊,缺少Dumper的支持,那麽怎麽解決呢?
使用模糊搜索,過濾關鍵來嘗試解決:

[root@zlinux mysql]# yum list | grep perl | grep -i dumper       //-i忽略大小寫

技術分享圖片
搜索完成後出現以上四個安裝包,無法確定需要哪個安裝包的時候,可以嘗試每個安裝包都試下。

[root@zlinux mysql]# yum install -y perl-Data-Dumper.x86_64

安裝好之後,重新初始化mysql:
技術分享圖片
出現兩個OK,說明安裝成功。

7、拷貝配置文件

[root@zlinux mysql]# cp support-files/my-default.cnf /etc/my.cnf
cp:是否覆蓋"/etc/my.cnf"? y

技術分享圖片

8、拷貝啟動腳本文件並修改權限

[root@zlinux mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@zlinux mysql]# chmod 755 /etc/init.d/mysqld

然後修改啟動文件:

[root@zlinux mysql]# vi /etc/init.d/mysqld

技術分享圖片

9、把啟動腳本加入系統服務項,設定開機啟動並啟動mysql

[root@zlinux mysql]# chkconfig --add mysqld      //把mysqld服務加入到系統服務列表中
[root@zlinux mysql]# chkconfig mysqld on          //開機啟動mysqld
[root@zlinux mysql]# service mysqld start           //啟動mysqld
Starting MySQL.Logging to ‘/data/mysql/zlinux.err‘.
. SUCCESS! 

如果啟動不了,請到 /data/mysql/ 下查看錯誤日誌,這個日誌通常是主機名.err.。
檢查mysql是否啟動的命令為:

[root@zlinux mysql]# ps aux |grep mysqld

查看監聽端口:

[root@zlinux mysql]# ps aux |grep mysqld

技術分享圖片
停止mysql:

[root@zlinux mysql]# service mysqld stop
Shutting down MySQL.. SUCCESS! 

如果沒有init.d的啟動腳本啟動可以用命令行的方式啟動:

[root@zlinux mysql]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &

技術分享圖片
以命令行的形式運行,還有什麽其他方法關掉呢?

必須以killall命令殺掉進程,比較安全。
killall 命令會先把程序執行完畢,才殺掉進程。
如果killall等了很久都沒有殺死,說明數據量很大,需要寫到磁盤中完畢後,慢慢殺死;
如果強制殺死,可能導致數據丟失或表的損壞。

LAMP架構和MySQL_MariaDB介紹及MySQL安裝