您好,登錄后才能下訂單哦!
LAMP 指的Linux(操作系統(tǒng))、Apache(httpd服務(wù)器)、MySQL(數(shù)據(jù)庫軟件)和PHP(有時(shí)也是指Per或Python)的縮寫,一般用來建立web服務(wù)器(三個(gè)角色可以在一臺(tái)機(jī)器,也可以分開。但是,Apache和PHP要安裝在一起)。
說明: Apache和PHP是一個(gè)整體,因?yàn)镻HP是以一個(gè)模塊的形式和Apache結(jié)合在一起的。但是Apache不能直接和MySQL直接打交道,它只能通過PHP模塊去MySQL中取數(shù)據(jù),拿到數(shù)據(jù)后PHP把數(shù)據(jù)交給Apache,Apache再把數(shù)據(jù)交給用戶。服務(wù)器上的圖片、js、css等文件屬于靜態(tài)文件;數(shù)據(jù)庫文件是動(dòng)態(tài)文件。
MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉庫內(nèi),這樣就增加了速度并提高了靈活性。(MySQL是由mysql ab公司開發(fā),在2008年被sun公司收購,2009年sun被Oracle公司收購。)
MariaDB數(shù)據(jù)庫管理系統(tǒng)是MySQL的一個(gè)分支,主要由開源社區(qū)在維護(hù)。MariaDB直到5.5版本,均依照MySQL的版本。從2012年11月12日起發(fā)布的10.0.0版開始,不再依照MySQL的版號(hào)。10.0.x版以5.5版為基礎(chǔ),加上移植自MySQL5.6版的功能和自行開發(fā)的新功能。
community 社區(qū)版(社區(qū)版,免費(fèi)的);enterprise 企業(yè)版(收費(fèi)的);GA(generally available) 通用版,在生產(chǎn)環(huán)境中使用;DMR(development milestone release) 開發(fā)里程碑版本;RC(release candidate) 發(fā)行候選版本;Beta 開放測試版本;Alpha 內(nèi)部測試版本。
MySQL 的幾個(gè)常用安裝包: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/下會(huì)有一個(gè)壓縮包 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
移動(dòng)解壓后的文件并修改文件名
將解壓出來的mysql-5.6.35-linux-glibc2.5-x86_64 文件移動(dòng)到/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)的包后就挨個(gè)安裝。然后再安裝mysql。
注意:如果在安裝過程中出現(xiàn)兩個(gè)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)只會(huì)去找/etc/my.cnf文件。)
也可以不拷貝配置文件,直接使用現(xiàn)成的
在/etc/目錄下有my.cnf文件,編輯此文件。
將下面兩行修改成如下內(nèi)容:
datadir=/data/mysql
socket=/tmp/mysql.sock
注釋掉這三行:
啟動(dòng)腳本
啟動(dòng)腳本目錄為:/usr/local/mysql/support-files/mysql.server
將啟動(dòng)腳本拷貝到/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ī)啟動(dòng),將該服務(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'。
欲查看對(duì)特定 target 啟用的服務(wù)請執(zhí)行
'systemctl list-dependencies [target]'。
mysqld 0:關(guān) 1:關(guān) 2:開 3:開 4:開 5:開 6:關(guān)
還可以直接用命令啟動(dòng):
[root@localhost mysql]# service mysqld start
Starting MySQL.Logging to '/data/mysql/localhost.localdomain.err'.
. SUCCESS! #啟動(dòng)成功
可以使用命令:
ps aux | grep mysqld 查看進(jìn)程
netstat -lntp 查看監(jiān)聽端口
停止mysqld服務(wù)
service mysqld stop
命令行的方式啟動(dòng)(&在后臺(tái)啟動(dòng)):
/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用來殺死單個(gè)進(jìn)程,killall用來殺死進(jìn)程樹
2、使用kill命令會(huì)立刻結(jié)束正在運(yùn)行中的進(jìn)程,如果該進(jìn)程正在進(jìn)行磁盤的讀寫,那么數(shù)據(jù)會(huì)因?yàn)檫M(jìn)程的結(jié)束而丟失,而killall命令會(huì)等待該數(shù)據(jù)讀寫完畢后再將相關(guān)進(jìn)程結(jié)束,相對(duì)來說使用起來更加安全。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。