您好,登錄后才能下訂單哦!
lamp
分層機(jī)制:
用戶(hù)--[httpd協(xié)議]--apache--[fastCGI協(xié)議]--php--[mysql協(xié)議]--mysql
分層優(yōu)勢(shì):
Apache php和mysql都是CPU密集型的服務(wù),分層可以緩解CPU壓力
同層的還可以做負(fù)載均衡
*************Apache和PHP結(jié)合的方式*****************
1, 模塊化的方式,php編成Apache的模塊
此時(shí)php是Apache的子功能存在的,所以調(diào)用php時(shí)不需要啟動(dòng)額外的進(jìn)程
任何httpd進(jìn)程內(nèi)部都已經(jīng)裝載了php模塊
apache使用不同的MPM時(shí),php的模塊也是不同的
prefork:libphp5.so
worker,event:libphp5-zts.so
2, CGI接口
3,fastCGI模式下的php,php 5.3.3收進(jìn)fastCGI
編譯php-fpm并啟動(dòng)為服務(wù)進(jìn)程,監(jiān)聽(tīng)再某個(gè)套接字下
服務(wù)進(jìn)程fork幾個(gè)空閑進(jìn)程,供別的進(jìn)程調(diào)用
************php-mysql******************
通過(guò)客戶(hù)端程序mysql_connect()連接mysql
$link = mysql_connect('IP','user','mypass')可創(chuàng)建一個(gè)PHP和mysql的連接
mysql_close()
************mysql的主輔服務(wù)器******************
master:寫(xiě)操作都在主服務(wù)器,也提供數(shù)據(jù)的讀操作
slave:讀操作
緩存服務(wù)器,提高命中率,bypass(旁路)
*************memcached純緩存服務(wù)器*****************
LAMMP
memcached必須前端程序調(diào)用才有效
########
************redis******************
工作在內(nèi)存
可實(shí)現(xiàn)持久存儲(chǔ),非關(guān)系型數(shù)據(jù)庫(kù)(NoSQL)
******************************
動(dòng)靜分離
高可用集群---->腳本腳本加油
******************************
安裝順序:
httpd mysql,最后php
*************安裝mysql*****************
mysql-5.5.33-linux2.6-x86_64.tar.gz
1,添加mysql用戶(hù)和mysql組,用戶(hù)設(shè)為nologin
groupadd -r mysql創(chuàng)建系統(tǒng)組
useradd -g mysql -r -s /sbin/nologin mysql
2,解壓到/usr/local
創(chuàng)建解壓包的軟連接為/usr/local/mysql ,以后升級(jí)可以直接重新軟連接mysql目錄
cd /usr/local
tar -zxf mysql-5.5.33-linux2.6-x86_64.tar.gz
ln -sv mysql-5.5.33-linux2.6-x86_64 mysql 升級(jí)mysql時(shí)重新生成mysql連接
3,創(chuàng)建邏輯卷管理來(lái)存儲(chǔ)數(shù)據(jù)庫(kù)文件
mkdir data
fdisk /dev/sda (n ;f 8e)
kpartx -af /dev/sda
partx -a /dev/sda 通知內(nèi)核讀取新的分區(qū)
cat /proc/partitions
pvcreate /dev/sda2
vgcreate mysqlvg /dev/sda2
lvcreate -L 2G -n mysqllv1 mysqlvg
mount /dev/mysqlvg/mysqlvg /data
vi /etc/fstab
/dev/mysqlvg/mysqllv1 ext4 /data defaults,noatime,nodiratime 0 0
cd /data
mkdir mydata計(jì)劃數(shù)據(jù)庫(kù)存儲(chǔ)目錄
chown -R mysql:mysql mydata將數(shù)據(jù)庫(kù)存放目錄的所有者改為mysql
4,創(chuàng)建并配置數(shù)據(jù)庫(kù)
cd /usr/local/mysql
chown -R root:mysql ./*
scripts/mysql_install_db --datadir=/data/mydata --user=mysql 創(chuàng)建數(shù)據(jù)庫(kù)
cp support-files/mysql.server /etc/init.d/mysqld啟動(dòng)數(shù)據(jù)庫(kù)服務(wù)
chkconfig --add mysqld
cp support-files/my-large.cnf /etc/my.cnf
vi /etc/my.cnf
datadir = /data/mydata
service mysqld start
此時(shí),mysql命令還找不到,需要編輯
vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
. !*!*表示上一條命令的參數(shù)
5,登錄mysql
安全設(shè)置
drop user ''@'localhost';刪除匿名用戶(hù)
use mysql;
select host,user,password from user;
update user set password=PASSWORD('mysql2009') where user='root';
flush privileges;
6,mysql的配置文件
家目錄下創(chuàng)建.my.cnf
[mysql]
user = root
host = localhost
password = mysql2009
mysql的配置文件讀取順序:/etc/my.cnf-->$MYSQL_BASE/my.cnf
-->--defaults-extra-file = /path/to/some_my.cnf-->.my.cnf
7,導(dǎo)出庫(kù)文件
ln -sv /usr/local/mysql/include/ /usr/include/mysql
8,導(dǎo)出頭文件
vim /etc/ld.so.conf.d/mysql
/usr/local/mysql/lib
ldconfig刷新動(dòng)態(tài)庫(kù)
ldconfig -p |grep mysql查看
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。