天天看點

ECS雲伺服器訓練營第六天----LAMP和LNMP環境搭建

安裝方式:

yum -y install httpd 安裝Apache;
 rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm将nginx放到yum repro庫中  
yum install nginx安裝nginx
yum -y install php安裝Php
yum -y install mysql  安裝mysql
yum -y groupinstall mariadb mariadb-client    安裝mariadb```  
mariadb和mysql基本都是一樣的關系型資料庫,如果沒有特定要求用哪個都可以;
也可以選擇使用寶塔一鍵安裝;首先安裝寶塔
Centos安裝腳本
           

yum install -y wget && wget -O install.sh

http://download.bt.cn/install/install_6.0.sh

&& sh install.sh

![1.png](https://ucc.alicdn.com/pic/developer-ecology/53f42552fc95424ea8e60bba8ac57843.png)
就可以選擇需要的組合進行安裝了,
**mysql關系型資料庫:**
mysql -u root  -p 登入資料庫
           

show databases;查詢有哪些資料庫

create database student;建立一個資料庫student

drop database student;删除student資料庫

show tables;查詢資料庫中有哪些表

create table wing (id int,name varchar(20),address varchar(50));建立表wing,包含三個字段id、name、address

drop table wing; 删除表wing

增删改查           

insert into wing (id,name,address) values (1,'test1','shanghai'); //插入資料

delete from wing where id=1; //删除id為1的整條資料

select * from wing;

select name,address from wing; //查詢表資料

update wing set address='guiyang' where id=1; //更新表資料

建立資料庫使用者           

create user 'user1'@'localhost' identified by '000000'; //建立資料庫使用者(本機)

grant select,delete,insert on . to 'user1'@'localhost'; //為新建立的資料庫使用者授權

flush privileges; //重新整理權限

show grants for 'user1'@'localhost'; //查詢資料庫使用者權限

create user 'user2'@'172.20.9.%' identified by '000000'; //建立資料庫使用者(172.20.9.0/24網段内的所有主機)

grant all on student.* to 'user2'@'172.20.9.%'; //授權

防火牆放行MySQL服務           

firewall-cmd --permanent --add-service=mysql //防火牆放行mysql服務

firewall-cmd --reload //重新載入防火牆配置

**LAMP和LNMP各自的優點:**
**Nginx **性能穩定、功能豐富、運維簡單、處理靜态檔案速度快且消耗系統資源極少。1、相比 Apache,用 Nginx 作為 Web 伺服器:使用資源更少,支援更多并發連接配接,效率更高。2、作為負載均衡伺服器:Nginx 既可在内部直接支援 Rails 和 PHP,也可支援作為 HTTP 代理伺服器對外進行服務。Nginx 用 C 編寫而成,不論是系統資源開銷還是 CPU 使用效率都比 Perlbal 要好的多。3、作為郵件代理伺服器:Nginx 同時也是一款非常優秀的郵件代理伺服器(最早開發這個産品的目的之一,是作為郵件代理伺服器)。4、反向代理可以根據url将請求轉向于不同用途的叢集,比如圖檔請求,轉向圖檔伺服器叢集;視訊請求,轉身視訊伺服器叢集。nginx是一款輕量級的web伺服器/反向代理伺服器/電子郵件代理伺服器,安裝非常簡單,配置檔案也很簡潔(還支援 perl 文法)。Nginx 支援平滑加載新配置,還能夠在不間斷服務的情況下進行軟體版本更新。
**Apache** 是 LAMP 架構最核心的 Web Server,開源、穩定、子產品豐富是 Apache 的優勢。但 Apache 的缺點是有些臃腫,記憶體和 CPU 開銷大,性能上有損耗,不如一些輕量級的 Web 伺服器(譬如:Nginx、Tengine等)高效,輕量級的 Web 伺服器對于靜态檔案的響應能力來說遠高于 Apache 伺服器。2、Apache 做為 Web Server 是負載 PHP 的最佳選擇,如果流量很大的話,可以采用 Nginx 來負載非 PHP 的 Web 請求。Nginx 是一個高性能的 HTTP 和反向代理伺服器,Nginx 以其穩定、豐富功能集、示例配置檔案和低系統資源的消耗而聞名。Nginx 現能支援 PHP 和 FastCGI,也支援負載均衡和容錯,可和 Apache 配合使用,是輕量級的 HTTP 伺服器的首選。3、Web 伺服器緩存也有多種方案,Apache 提供了自己的緩存子產品,也可以使用外加的 Squid 子產品進行緩存,這兩種方式均可有效提高 Apache 的通路響應能力。Squid Cache 是一個 Web 緩存伺服器,支援高效緩存,可作為網頁伺服器的前置 cache 伺服器緩存相關請求以提高 Web 伺服器速度。把 Squid 放在 Apache 的前端來緩存 Web 伺服器生成動态内容,而 Web 應用程式隻需要适當地設定頁面實效時間即可。如通路量巨大,則可考慮使用 memcache 作為分布式緩存。4、PHP 的加速可使用 eAccelerator 加速器,eAccelerator 是一個自由開放源碼的 PHP 加速器。它會優化動态内容緩存,提高 PHP 腳本緩存性能,使 PHP 腳本在編譯狀态下,對伺服器的開銷幾乎完全消除。它還可對腳本起優化作用,以加快其執行效率。 使 PHP 程式代碼執效率可提高 1-10 倍。
**并比較二者的适用場景?**
要省記憶體的話lnmp是最好的選擇,但似乎不太穩定,有時會比較常502
靜态的多用lnmp還是不錯的