LAMP 指的Linux(操作系統(tǒng))、Apache(httpd服務(wù)器)、MySQL(數(shù)據(jù)庫軟件)和PHP(有時也是指Per或Python)的縮寫,一般用來建立web服務(wù)器(三個角色可以在一臺機(jī)器,也可以分開。但是,Apache和PHP要安裝在一起)。
創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的貴德網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
說明: Apache和PHP是一個整體,因為PHP是以一個模塊的形式和Apache結(jié)合在一起的。但是Apache不能直接和MySQL直接打交道,它只能通過PHP模塊去MySQL中取數(shù)據(jù),拿到數(shù)據(jù)后PHP把數(shù)據(jù)交給Apache,Apache再把數(shù)據(jù)交給用戶。服務(wù)器上的圖片、js、css等文件屬于靜態(tài)文件;數(shù)據(jù)庫文件是動態(tài)文件。
MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。(MySQL是由mysql ab公司開發(fā),在2008年被sun公司收購,2009年sun被Oracle公司收購。)
MariaDB數(shù)據(jù)庫管理系統(tǒng)是MySQL的一個分支,主要由開源社區(qū)在維護(hù)。MariaDB直到5.5版本,均依照MySQL的版本。從2012年11月12日起發(fā)布的10.0.0版開始,不再依照MySQL的版號。10.0.x版以5.5版為基礎(chǔ),加上移植自MySQL5.6版的功能和自行開發(fā)的新功能。
community 社區(qū)版(社區(qū)版,免費的);enterprise 企業(yè)版(收費的);GA(generally available) 通用版,在生產(chǎn)環(huán)境中使用;DMR(development milestone release) 開發(fā)里程碑版本;RC(release candidate) 發(fā)行候選版本;Beta 開放測試版本;Alpha 內(nèi)部測試版本。
MySQL 的幾個常用安裝包:rpm包、源碼包、二進(jìn)制免編譯包
下載包之前需要查看系統(tǒng)的版本,根據(jù)系統(tǒng)版本來選擇需要安裝的包。通過命令uname -a可以查看到關(guān)于系統(tǒng)版本的信息。(x86_64為64為操作系統(tǒng),i686 i586為32位操作系統(tǒng))
下載包
將二進(jìn)制免編譯包下載到/usr/local/src/目錄下。
[root@localhost ~]# cd /usr/local/src
[root@localhost src]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
下載完成之后,在目錄/usr/local/src/下會有一個壓縮包 mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
解壓包
在/usr/local/src/目錄下解壓包
[root@localhost src]# tar -zxv -f mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
移動解壓后的文件并修改文件名
將解壓出來的mysql-5.6.35-linux-glibc2.5-x86_64 文件移動到/usr/local/目錄下,并改名為mysql。
[root@localhost src]# mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
切換到/usr/local/mysql/目錄
切換到/usr/local/mysql/目錄下之后,檢查目錄下是否下是否存在以下文件、目錄。
[root@localhost src]# cd /usr/local/mysql/
[root@localhost mysql]# ls
bin COPYING data docs include lib man mysql-test README scripts share sql-bench support-files
創(chuàng)建mysql用戶、創(chuàng)建/data/目錄
[root@localhost mysql]# useradd mysql
[root@localhost mysql]# mkdir /data/
初始化mysql
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumpe
Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
缺少libaio.so包
提示缺少perl模塊,模塊名為dump
使用yum list命令配合grep查看需要安裝的包
[root@localhost mysql]# yum list | grep perl | grep -i dumper
perl-Data-Dumper.x86_64 2.145-3.el7 base
perl-Data-Dumper-Concise.noarch 2.020-6.el7 epel
perl-Data-Dumper-Names.noarch 0.03-17.el7 epel
perl-XML-Dumper.noarch 0.81-17.el7 base
查找到相關(guān)的包后就挨個安裝。然后再安裝mysql。
注意:如果在安裝過程中出現(xiàn)兩個ok,則安裝成功。或者使用命令echo $? 命令,輸出結(jié)果為0則安裝成功。結(jié)果為1則安裝失敗。
拷貝配置文件
配置文件的目錄為:/usr/local/mysql/support-files/my-default.cnf
[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
mysql的配置文件固定放在/etc/下,并且名字為my.cnf(如果為其它目錄需要去指定,否則系統(tǒng)只會去找/etc/my.cnf文件。)
也可以不拷貝配置文件,直接使用現(xiàn)成的
在/etc/目錄下有my.cnf文件,編輯此文件。
將下面兩行修改成如下內(nèi)容:
datadir=/data/mysql
socket=/tmp/mysql.sock
注釋掉這三行:
啟動腳本
啟動腳本目錄為:/usr/local/mysql/support-files/mysql.server
將啟動腳本拷貝到/etc/init.d/目錄下,改名為:mysqld
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
編輯/etc/init.d/mysqld文件:
basedir=/usr/local/mysql
datadir=/data/mysql
(46,47行)
權(quán)限變更:
將文件權(quán)限改為755(默認(rèn)為755,不需要改)
chomd 755 /etc/init.d/mysqld
設(shè)置開機(jī)啟動,將該服務(wù)加到系統(tǒng)服務(wù)列表中:
[root@localhost mysql]# chkconfig --add mysqld
[root@localhost mysql]# chkconfig --list
注意:該輸出結(jié)果只顯示 SysV 服務(wù),并不包含原生 systemd 服務(wù)。SysV 配置數(shù)據(jù)可能被原生 systemd 配置覆蓋。
如果您想列出 systemd 服務(wù),請執(zhí)行 'systemctl list-unit-files'。
欲查看對特定 target 啟用的服務(wù)請執(zhí)行
'systemctl list-dependencies [target]'。
mysqld 0:關(guān) 1:關(guān) 2:開 3:開 4:開 5:開 6:關(guān)
還可以直接用命令啟動:
[root@localhost mysql]# service mysqld start
Starting MySQL.Logging to '/data/mysql/localhost.localdomain.err'.
. SUCCESS! #啟動成功
可以使用命令:
ps aux | grep mysqld 查看進(jìn)程
netstat -lntp 查看監(jiān)聽端口
停止mysqld服務(wù)
service mysqld stop
命令行的方式啟動(&在后臺啟動):
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &
關(guān)閉mysqld服務(wù)
使用killall命令關(guān)閉服務(wù)。
kill命令和killall命令都是用來殺死系統(tǒng)中的進(jìn)程,區(qū)別是:
1、kill用來殺死單個進(jìn)程,killall用來殺死進(jìn)程樹
2、使用kill命令會立刻結(jié)束正在運行中的進(jìn)程,如果該進(jìn)程正在進(jìn)行磁盤的讀寫,那么數(shù)據(jù)會因為進(jìn)程的結(jié)束而丟失,而killall命令會等待該數(shù)據(jù)讀寫完畢后再將相關(guān)進(jìn)程結(jié)束,相對來說使用起來更加安全。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。