Linux平台(Centos7)-lnmp一键式部署mysql,nginx,php,php-fpm服务

Linux平台(Centos7)-lnmp一键式部署mysql,nginx,php,php-fpm服务

1. 部署方式1:手动部署. 6

1.1. 配置防火墙. 6

1.2. 关闭firewall 6

1.3. 安装iptables防火墙. 6

1.4. 安装Apache 7

1.5. 安装MariaDB 9

1.5.1. 安装MariaDB 9

1.5.2. 启动服务. 10

1.5.3. 设置开机启动. 10

1.5.4. 为root账户设置密码. 11

1.5.5. 重启MariaDB 11

1.5.6. 查询服务状态. 11

1.5.7. 为root账户设置密码. 12

1.6. 安装PHP 12

1.6.1. 安装PHP 12

1.6.2. 安装PHP组件. 13

1.6.3. 安装php组件. 14

1.7. Apache配置. 15

1.8. php配置. 15

1.8.1. php-fpm配置. 16

1.9. 部署测试. 16

1.10. nginx安装和配置. 17

1.10.1. 安装. 17

1.10.2. 配置. 19

1.11. web网站部署. 20

1.11.1. apache部署网站. 20

1.11.2. nginx部署网站. 21

1.12. 查看监听服务状态. 22

1.12.1. Php-fpm状态. 22

1.12.2. mariadb状态. 23

1.12.3. Nginx端口. 23

1.12.4. Php-fpm端口. 23

1.12.5. Apache状态. 23

1.12.6. Apache监听端口. 24

2. 部署方式2:一键式部署. 24

2.1. lnmp一键式部署. 24

2.1.1. 下载lnmp1.3-full.tar.gz包. 24

2.1.2. 安装lnmp1.3-full.tar.gz 24

2.1.3. 安装完成. 26

2.2. 软件配置文件预览. 27

2.3. 服务状态管理. 28

2.4. 修改 mysql配置文件. 28

2.5. 导入项目和数据库脚本. 30

2.6. 修改站点目录权限. 31

2.7. 配置nginx站点服务. 31

2.8. 添加伪静态规则. 32

2.9. 硬盘启动系统. 33

2.10. 性能优化配置. 34

2.10.1. 优化nginx配置文件. 34

2.10.2. 优化php-fpm配置文件. 34

2.10.3. 优化mysql配置文件. 34

2.10.4. 修改ThinkTemplate.class.php文件. 34

2.10.5. 成绩提交优化. 35

2.10.6. 同步windows和linux系统时间. 36

2.10.7. 修改php.ini文件. 37

2.10.8. 安装xcache加速缓存. 37

3. 部署方式3:大赛空环境部署方案. 38

3.1. 安装Centos7 64位服务器. 38

3.1.1. 重启网卡. 38

3.1.2. 安装ifconfig命令. 38

3.1.3. 查看服务器ip地址. 39

3.2. 安装lnmp环境和xcache 39

3.2.1. 安装lnmp环境. 39

3.2.2. 安装xcache 39

3.3. 打包代码上传和安装. 40

3.4. 检查服务状态. 41

3.4.1. Nginx服务. 41

3.4.2. Php-fpm服务. 42

3.4.3. Mysql服务. 42

3.5. 设置服务器静态ip 42

3.5.1. 查看动态获取的网卡信息:. 42

3.5.2. 执行wmspStaticIP.sh脚本. 42

3.5.3. 查看执行完成后的静态ip地址. 43

1.部署方式1:手动部署

1.1.配置防火墙

开启80端口、3306端口

CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。

1.2.关闭firewall

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动

1.3.安装iptables防火墙

yum install iptables-services #安装

vim /etc/sysconfig/iptables #编辑防火墙配置文件

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-   A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

:wq!

systemctl restart iptables.service #最后重启防火墙使配置生效

systemctl enable iptables.service #设置防火墙开机启动

systemctl status iptables

1.4.安装Apache

yum install httpd #根据提示,输入Y安装即可成功安装

看到 Complete 则安装成功。

命令:

systemctl start httpd.service #启动apache

systemctl stop httpd.service #停止apache

systemctl restart httpd.service #重启apache

systemctl restart network.service #重启网络

systemctl enable httpd.service #设置apache开机启动

systemctl status httpd #查看apache状态 、

systemctl status mariadb

netstat -lnp |grep httpd  #端口监听

httpd -v #查看apache版本  --Apache/2.4.6

mysql --help |grep Distrib #查看mysql版本  --Distrib 5.5.52-MariaDB

php -v #查看php版本  --PHP 5.4.16

3): 修改ip: /etc/sysconfig/network-scripts/ifcfg-eth0  。配置文件。(永久修改)

设置后。运行此命令才生效:#  /etc/rc.d/init.d/network restart

在客户端浏览器中打开服务器IP地址,会出现下面的界面,说明apache安装成功 【http://192.168.0.247/】

1.5.安装MariaDB

CentOS 7.0中,已经使用MariaDB替代了MySQL数据库

1.5.1.安装MariaDB

yum install mariadb mariadb-server #询问是否要安装,输入Y即可自动安装,直到安装完成   (yum groupinstall mariadb mariadb-client -y)

看到 Complete 则安装成功。

1.5.2.启动服务

systemctl start mariadb.service

1.5.3.设置开机启动

systemctl enable mariadb.service

1.5.4.为root账户设置密码

mysql_secure_installation

1.5.5.重启MariaDB

systemctl restart mariadb.service

1.5.6.查询服务状态

systemctl status mariadb

systemctl start mariadb.service #启动MariaDB

systemctl stop mariadb.service #停止MariaDB

systemctl restart mariadb.service #重启MariaDB

systemctl enable mariadb.service #设置开机启动

systemctl status mariadb #查询服务状态

cp /usr/share/mysql/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

1.5.7.为root账户设置密码

mysql_secure_installation

回车,根据提示输入Y

输入2次密码,回车 【root,root】

根据提示一路输入Y

最后出现:Thanks for using MySQL!

MySql密码设置完成,重新启动 MySQL:

systemctl restart mariadb.service #重启MariaDB

1.6.安装PHP

1.6.1.安装PHP

yum install php #根据提示输入Y直到安装完成

1、安装PHP

yum install php #根据提示输入Y直到安装完成

安装信息

安装完成

看到 Complete 则安装成功。

1.6.2.安装PHP组件

使PHP支持 MariaDB

yum install php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash

#这里选择以上安装包进行安装,根据提示输入Y回车

systemctl restart mariadb.service #重启MariaDB

systemctl restart httpd.service #重启apache

安装完成

看到 Complete 则安装成功。

1.6.3.安装php组件

使nginx支持php:

yum install -y php php-devel php-fpm php-mysql php-common php-devel php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel

1.7.Apache配置

vi /etc/httpd/conf/httpd.conf #编辑文件

ServerSignature On  #添加,在错误页中显示Apache的版本,Off为不显示

Options Indexes FollowSymLinks  #修改为:Options Includes ExecCGI FollowSymLinks(允许服务器执行CGI及SSI,禁止列出目录)

#AddHandler cgi-script .cgi #修改为:AddHandler cgi-script .cgi .pl (允许扩展名为.pl的CGI脚本运行)

AllowOverride None  #修改为:AllowOverride All (允许.htaccess)

AddDefaultCharset UTF-8 #修改为:AddDefaultCharset GB2312 (添加GB2312为默认编码)

#Options Indexes FollowSymLinks   #修改为 Options FollowSymLinks(不在浏览器上显示树状目录结构)

DirectoryIndex index.html   #修改为:DirectoryIndex index.html index.htm Default.html Default.htm index.php(设置默认首页文件,增加index.php)

MaxKeepAliveRequests 100  #添加MaxKeepAliveRequests 500 (增加同时连接数)

:wq! #保存退出

systemctl restart httpd.service #重启apache

rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html #删除默认测试页

1.8.php配置

vi /etc/php.ini #编辑

date.timezone = PRC #把前面的分号去掉,改为date.timezone = PRC

disable_functions =     passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

#列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

expose_php = Off #禁止显示php版本的信息

short_open_tag = ON #支持php短标签

open_basedir = .:/tmp/  #设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题(例如:织梦内容管理系统),可以注销此行,或者直接写上程序的目录/data/www.osyunwei.com/:/tmp/

:wq! #保存退出

1.8.1.php-fpm配置

cd /usr/sbin

./php-fpm

ps -ef|grep php-fpm

systemctl restart mariadb.service #重启MariaDB

systemctl restart httpd.service #重启apache

systemctl status  php-fpm

netstat -lnp |grep php-fpm

netstat -lnp |grep nginx

a) systemctl start php-fpm #开启php-fpm

b) systemctl enable php-fpm #开机自动启动

1.9.部署测试

cd /var/www/html

vi index.php #输入下面内容

<?php

phpinfo();

?>

:wq! #保存退出

在客户端浏览器输入服务器IP地址,可以看到如下图所示相关的配置信息!

注意:apache默认的程序目录是/var/www/html

说明apache 启动php成功。

1.10.nginx安装和配置

1.10.1.安装

使用源码编译安装:

Make:

Nginx部署测试:

/usr/local/nginx/html 新建 index.php

http://192.168.0.246:81/

部署 成功信息:

说明nginx部署 成功。

1.10.2.配置

启动、停止nginx

cd /usr/local/nginx/sbin/

./nginx

./nginx -s stop

./nginx -s quit

./nginx -s reload

./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。

./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

查询nginx进程:

ps aux|grep nginx

重启 nginx

1.先停止再启动(推荐):

对 nginx 进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:

cd /usr/local/nginx/sbin/

./nginx -s quit

./nginx

netstat -lnp |grep 81

ps -ef |grep nginx

2.重新加载配置文件:

当 ngin x的配置文件 nginx.conf 修改后,要想让配置生效需要重启 nginx,使用-s     reload不用先停止 ngin x再启动 nginx 即可将配置信息在 nginx 中生效,如下:

cd /usr/local/nginx/sbin/

./nginx -s reload

启动成功后,在浏览器可以看到这样的页面:

3.日志

/usr/local/nginx/logs

开机自启动

即在rc.local增加启动代码就可以了。

vi /etc/rc.local

增加一行 /usr/local/nginx/sbin/nginx

设置执行权限:

chmod 755 rc.local

1.11.web网站部署

1.11.1.apache部署网站

打开:apache服务:

/etc/httpd/conf/httpd.conf 配置文件

设置:

Listen 80     #监听端口

Listen 10080

Listen 8010

User apache  #用户

Group apache #组

ServerName 192.168.0.246:10080

<Directory "/web">#网站授权

AllowOverride All

# Allow open access:

Require all granted

</Directory>

DocumentRoot "/web/wmsp" #站点路径

重启httpd即可。

systemctl restart httpd.service

1.11.2.nginx部署网站

打开nginx服务配置文件:

/usr/local/nginx/conf/nginx.conf

设置:

server {

listen       10080;     #监听端口

server_name  localhost;

location / {

root    /web/wmsp;  #站点路径

index  index.php index.html index.htm;

}

location = /50x.html {

root   html;

}

location ~ \.php$ {

root           /web/wmsp;  #站点路径

fastcgi_pass   127.0.0.1:9000;  #php-fpm监听端口

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

重启nginx服务:

cd /usr/local/nginx/sbin/

./nginx -s reload

设置:#php-fpm参数:

vi /etc/php-fpm.d/www.conf

找到以下两行,解除注释

listen.owner = nobody

listen.group = nobody

找下以下两行,将各自的apache改为nginx

user = apache -> user = nginx

group = apache -> group = nginx

如果没有nginx用户,则新建。

1.12.查看监听服务状态

1.12.1.Php-fpm状态

1.12.2.mariadb状态

1.12.3.Nginx端口

1.12.4.Php-fpm端口

1.12.5.Apache状态

1.12.6.Apache监听端口

2.部署方式2:一键式部署

2.1.lnmp一键式部署

2.1.1.下载lnmp1.3-full.tar.gz包

将lnmp1.3-full.tar.gz上传到服务器 /home

2.1.2.安装lnmp1.3-full.tar.gz

执行命令:

cd /home

tar -zxvf lnmp1.3-full.tar.gz && cd lnmp1.3-full  &&  ./install.sh  lnmp

根据提示 :

输入mysql密码;        输入----123456

是否启用InnoDB           输入----y

选择 mysql版本 5.7       输入----6

选择php版本 5.6         输入-----5

是否内存优化:选择     输入-----1

提示"Press any key to install...or Press Ctrl+c to cancel"后,

按回车键确认开始安装。

LNMP脚本就会自动安装编译

Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。

安装时间可能会几十分钟到几个小时不等,

主要是机器的配置网速等原因会造成影响。

2.1.3.安装完成

验证:nginx访问php是否成功:

http://192.168.0.229:8010/phpinfo.php

(默认没有配置端口,则不需要输入8010),输出php版本信息 ,则连接成功。

2.2.软件配置文件预览

Nginx目录:

/usr/local/nginx/conf/nginx.conf

Mysql目录:

/usr/local/mysql/bin/mysqld

/etc/my.cnf

Mysql数据库所在目录:

/usr/local/mysql/var

MariaDB目录:

/usr/local/mariadb/

MariaDB数据库所在目录:

/usr/local/mariadb/var

Php目录:

/usr/local/php/etc/php.ini

Php-frm目录:

/usr/local/php/etc/php-fpm.conf

PhpMyAdmin目录

/home/wwwroot/default/phpmyadmin

站点默认发布目录:

/home/wwwroot/default

Nginx日志文件路径:

/home/wwwlogs/

/root/vhost.sh添加虚拟主机配置文件所在目录:

/usr/local/nginx/conf/vhost

2.3.服务状态管理

Lnmp状态管理:

lnmp start| stop| reload|restart|kill |status

Lnmp 各个程序状态管理

Lnmp nginx | mysql|php-fpm {start|stop| reload|restart|kill |status}

Nginx状态管理

/etc/init.d/nginx/ start| stop| reload|restart

Mysql状态管理:

/etc/init.d/mysql/ start| stop| reload|restart

Php-fpm状态管理:

/etc/init.d/php-fpm/ start| stop| reload|restart

2.4.修改 mysql配置文件

为了 解决sql导入数据校验问题。

Vi /ect/my.cnf

[mysqld]下面增加:

sql-mode=‘‘

重启mysql

#/etc/init.d/mysql  restart

或者:

# systemctl restart mysql.service

允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,

具体操作如下:

在本机先使用root用户登录mysql: mysql -u root -p"123456" 进行授权操作:

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘123456‘ WITH GRANT OPTION;

重载授权表:

FLUSH PRIVILEGES;

退出mysql数据库:

exit

2.5.导入项目和数据库脚本

Ubuntu系统安装完成后;本地navicat链接服务器存在不通的情况;

1:检查3306端口是否通讯,

2:ping 服务器是否通讯,

3:my.cnf 文件是否存在ip绑定

4:防火墙是否关闭

5:查看已有的iptables规则,以序号显示

#iptables -L -n --line-numbers

#iptables -D INPUT  5

再次尝试用 navicat 链接服务器。

1:导入站点wmsp 到/home/wwwroot 目录下。

2:导入站点yiqi到/home/wwwroot目录下。

3:新建数据库pigcms和 qixiu;

mysql –u root –p “123456”

创建pigcms:

mysql>  CREATE DATABASE `pigcms` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

创建qixiu:

mysql> CREATE DATABASE `qixiu` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

4:mysql 导入sql脚本:

mysql –u root –p “123456”

use pigcms;

source /home/wwwroot/wmsp/install/pigcms.sql;

use qixiu;

source /home/wwwroot/yiqi/qixiu.sql

2.6.修改站点目录权限

修改/home/wwwroot/wmsp/Conf目录及子目录权限,增加写入权限

chmod  -R 755 /home/wwwroot/wmsp/Conf

chown www:www -R  /home/wwwroot/wmsp

修改/home/wwwroot/wmsp/uploads目录及子目录权限,增加写入权限

chmod  -R 755 /home/wwwroot/wmsp/uploads

修改/home/wwwroot/yiqi 目录及子目录权限,增加写入权限

chmod  -R 755  /home/wwwroot/yiqi

chown www:www -R  /home/wwwroot/yiqi

2.7.配置nginx站点服务

vi /usr/local/nginx/conf/nginx.conf

配置10080端口

root  /home/wwwroot/wmsp;

配置8010端口

将 server段拷贝一份 将端口改为8010。

root  /home/wwwroot/yiqi;

重启服务:

#lnmp restart

2.8.添加伪静态规则

cd /usr/local/nginx/conf/

新建伪静态文件:

htaccess.conf

Vi /usr/local/nginx/conf/ htaccess.conf

编写伪静态规则:

if (!-e $request_filename) {

rewrite  /index.php?(.*)$  /index.php?$1 last;

rewrite  ^(.*)$  /index.php?s=$1  last;

break;

}

更新 nginx.conf

vi /usr/local/nginx/conf/nginx.conf

include  htaccess.conf

重启 nginx

/etc/init.d/nginx   restart

2.9.硬盘启动系统

Ubuntu系统 可能发生 找不到网络接口

命令:

dmesg |grep eth

vi /etc/network/interfaces

重启网卡

systemctl restart networking.service

2.10.性能优化配置

2.10.1.优化nginx配置文件

修改/usr/local/nginx/conf/nginx.conf 的内容为附件中的内容。

2.10.2.优化php-fpm配置文件

修改/usr/local/php/etc/php-fpm.conf 的内容为附件中的内容。

2.10.3.优化mysql配置文件

修改/etc/my.cnf 的内容为附件中的内容。

2.10.4.修改ThinkTemplate.class.php文件

/home/wwwroot/wmsp/Lib/Template/ThinkTemplate.class.php

新增如下代码:

$tmplCacheFile=$this->config[‘cache_path‘].$prefix.md5($tmplTemplateFile).$this->config[‘cache_suffix‘];

if(file_exists($tmplCacheFile)){

return $tmplCacheFile;

}

附件目录见:

$/电子商务系列/奥派微信营销实训平台软件/2.代码库/Environmental

备注:修改后重启服务

systemctl  restart nginx.service

systemctl  restart mysql.service

systemctl  restart php-fpm.service

2.10.5.成绩提交优化

1.更新配置文件

/home/wwwroot/wmsp/Conf/config.php

‘OPEN_SCORE_QUEUE‘ => 1,     //学生提交成绩时,是否启用异步队列。1开启0关闭。开启时需要windows下的计划配合

2.新建执行文件:

#Vi /home/wwwroot/wmsp /commit.sh

输入内容:

cd /home/wwwroot/wmsp

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log1

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log2

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log3

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log4

:wq保存

3.新建linux任务计划

# crontab –e

输入

*/5 * * * *  /home/wwwroot/wmsp/commit.sh

:wq保存

查询linux任务计划

#crontab -l

*/5 * * * *  /home/wwwroot/wmsp/commit.sh

//删除任务计划

# crontab -r

2.10.6.同步windows和linux系统时间

新增:

Crontab –e 新增

*/1 * * * * /home/wwwroot/wmsp/setDate.sh >log

*/1 * * * * /home/wwwroot/wmsp/getDateDiff.sh >log

[[email protected] wmsp]# crontab -l

*/5 * * * * /home/wwwroot/wmsp/commit.sh >log

*/1 * * * * /home/wwwroot/wmsp/setDate.sh >log

*/1 * * * * /home/wwwroot/wmsp/getDateDiff.sh >log

2.10.7.修改php.ini文件

文件目录:

/usr/local/php/etc/php.ini

memory_limit = 128M 改成了512M

memory_limit = 512M

2.10.8.安装xcache加速缓存

cd /home/lnmp1.3-full && ./addons.sh install xcache

根据提示输入密码(该密码用于访问xcache配置页面),

12345678

如下图:

修改php.ini:

/usr/local/php/etc/php.ini

xcache.size  =               60M

xcache.var_size  =             0

保存后重启php-fpm

syetemctl  php-fpm restart

3.部署方式3:大赛空环境部署方案

3.1.安装Centos7 64位服务器

采用最小化安装后 打开:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

(ifcfg-ens33 网卡名 依据当前系统的名称修改)

更改:Onboot=yes 保存,ip采用自动获取方式。

3.1.1.重启网卡

systemctl restart network.service

保证Centos7服务器已经能够访问外网(大赛需要联网)

ping  www.baidu.com

3.1.2.安装ifconfig命令

yum install -y net-tools

安装unzip zip命令(可选):

yum install -y unzip zip

3.1.3.查看服务器ip地址

ifconfig

3.2.安装lnmp环境和xcache

3.2.1.安装lnmp环境

上传lnmp1.3-full.tar.gz包到 /home目录下,执行

cd /home

tar -zxvf lnmp1.3-full.tar.gz && cd lnmp1.3-full  &&  ./install.sh  lnmp

根据提示 :

输入mysql密码;        输入----123456

是否启用InnoDB           输入----y

选择 mysql版本 5.7       输入----6

选择php版本 5.6         输入-----5

是否内存优化:选择     输入-----1

提示"Press any key to install...or Press Ctrl+c to cancel"后,

按回车键确认开始安装。

LNMP脚本就会自动安装编译

Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。

安装时间可能会几十分钟到几个小时不等,

主要是机器的配置网速等原因会造成影响。

3.2.2.安装xcache

cd /home/lnmp1.3-full && ./addons.sh install xcache

根据提示输入密码(该密码用于访问xcache配置页面),

12345678

Enter键 进行安装;

安装完成:

则说明xcache安装完成;

检查/usr/local/php/etc/php.ini配置文件:

…….

则php说明完成配置成功。

3.3.打包代码上传和安装

1、 将TFS目录:$/电子商务系列/奥派微信营销实训平台软件/2.代码库 下:

Environmental文件夹、wmsp文件夹、yiqi文件夹、install.sh文件打成一个wxyx.tar.gz包(使用7zip压缩包)

2、上传wxyx.tar.gz包到服务器的/home/wwwroot目录下

3、解压执行 tar -zxvf wxyx.tar.gz

4、执行/home/wwwroot/install.sh

5、按提示输入后安装完成

如下图:

[[email protected] wwwroot]# sh install.sh

please input AllPassMSDD_IP address:192.168.0.4 【外围服务器ip】

your input AllPassMSDD_IP address is: 192.168.0.4

please input WMSP_IP address:192.168.0.223     【微信营销服务器ip】

your input WMSP_IP address is: 192.168.0.223

Please confirm the IP you entered...Press any key to Continue...or Press Ctrl+c to cancel!

执行结果如下图:则说明 部署成功。

3.4.检查服务状态

控制台输入:

# lnmp status

+-------------------------------------------+

|    Manager for LNMP, Written by Licess    |

+-------------------------------------------+

|              http://lnmp.org              |

+-------------------------------------------+

nginx (pid 979 978 977 976 970) is running...

php-fpm is runing!

SUCCESS! MySQL running (2214)

出现上述 提示:则说明 nginx,php,Mysql 3个服务器都是运行正常的。

3.4.1.Nginx服务

#netstat -alnp |grep nginx

#ps -ef |grep nginx

重启nginx:

# /etc/init.d/nginx  restart

Or:

# systemctl restart nginx.service

# systemctl restart nginx.service

3.4.2.Php-fpm服务

#netstat -alnp |grep php-fpm

#ps -ef |grep php-fpm

重启php-fpm:

# /etc/init.d/php-fpm restart

Or:

# systemctl restart php-fpm.service

3.4.3.Mysql服务

#netstat -alnp |grep mysql

#ps -ef |grep mysql

重启mysql:

# /etc/init.d/mysql restart

Or:

# systemctl restart mysql.service

3.5.设置服务器静态ip

3.5.1.查看动态获取的网卡信息:

#vi /etc/sysconfig/network-scripts/ifcfg-ens33

脚本功能主要是:

在ifcfg-ens33文件后追加:

IPADDR=192.168.0.202

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

DNS1=218.2.135.1

DNS2=114.114.114.114

BOOTPROTO=dhcp 改成 static。

然后重启服务:

systemctl restart network.service

遇到突发情况:如shell脚本执行失败,可以考虑手动更新文件后手动重启服务。

3.5.2.执行wmspStaticIP.sh脚本

执行 /2.代码库/Environmental/wmspStaticIP.sh

#sh wmspStaticIP.sh

1:IPADDR IP –输入服务器IP地址 如: 192.168.0.208

2:NETMASK: --输入子网掩码 如:255.225.225.0

3:GATEWAY: --输入默认网关 如:192.168.0.1

4:DNS1 IP: --输入DNS1如: 218.2.135.1

4:DNS2 IP: --输入DNS2如: 114.114.114.114

执行结果,如下图:

3.5.3.查看执行完成后的静态ip地址

#vi /etc/sysconfig/network-scripts/ifcfg-ens33

如下图:

3.5.4.检查服务器IP配置

检查服务器ip配置:

#ifconfig

说明IP为  192.168.0.202

测试是否联网外围:

#ping www.baidu.com

说明 能够联网外网。

3.6.数据备份

核心脚本如下:

echo "dataBackup is start!"

cd /home/wwwroot/

tar -czvf wmsp_dataBackup.tar.gz  wmsp

tar -czvf yiqi_dataBackup.tar.gz  yiqi

echo "wmspbak,yiqibak dataBackup is success"

mysqldump -u root -p123456 pigcms > pigcms_dataBackup.sql

mysqldump -u root -p123456 qixiu > qixiu_dataBackup.sql

echo "pigcms_dataBackup,qixiu_dataBackup is success"

echo "Backing up. Wait a minute......"

cp -rf wmsp_dataBackup.tar.gz /home/

cp -rf yiqi_dataBackup.tar.gz /home/

cp -rf pigcms_dataBackup.sql /home/

cp -rf qixiu_dataBackup.sql /home/

echo "copy dataBackup is All success......"

exit

3.6.1.1:执行备份shell脚本

#cd /home/wwwroot/Environmental

# sh dataBackup.sh

执行完成后 如下提示,则说明备份成功。

3.6.2.2:拷贝备份文件到U盘

拷贝 /home下面的4个备份文件 到U盘(4GB以上,推荐8GB以上)。

#cd /home

wmsp_dataBackup.tar.gz

yiqi_dataBackup.tar.gz

pigcms_dataBackup.sql

qixiu_dataBackup.sql

使用软件库里面的 SSHSecureShellClient_downcc.zip或者MobaXterm_Setup_9.4.msi

链接到服务器下载到桌面或者直接拷贝到U盘即可。

3.7.数据还原

核心脚本如下:

cd /home

mysqldump -u root -p123456 pigcms < pigcms_dataBackup.sql

mysqldump -u root -p123456 qixiu < qixiu_dataBackup.sql

#cp -rf wmsp_dataBackup.tar.gz  ./wwwroot/

#cp -rf yiqi_dataBackup.tar.gz  ./wwwroot/

cd wwwroot/

mv wmsp wmsp_old

mv yiqi yiqi_old

tar -xzvf  wmsp_dataBackup.tar.gz

tar -xzvf  yiqi_dataBackup.tar.gz

echo "dataReduction is All success"

exit

3.7.1.1:站点还原:

将之前备份的4个文件放到/home下面

执行dataReduction.sh

#cd /home/wwwroot/Environmental

# sh dataReduction.sh

4.部署缓存服务器

4.1.安装memcached

4.1.1.memcached安装部署

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。

安装

进入lnmp解压后的目录,执行:./addons.sh install memcached

输入对应的序号 2 ,回车,再次确认回车开始安装。

看到 Memcached installed
successfully, enjoy it!则说明安装成功。

卸载

执行:./addons.sh uninstall memcached

4.1.2.memcached配置

1 :部署安装路径说明:

/usr/local/memcached
     –服务端

/usr/local/libmemcached   --客户端

/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/memcached.so
–插件

/usr/local/php/etc/php.ini里面新增

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/memcached.so

#查看是否php模块安装成功

[[email protected] lnmp1.3-full]# php -m | grep memcached

memcached

2:启动memcached :

启动服务(命令默认在/usr/local/memcached/bin/memcached。

主要的启动参数

-p 监听的端口

-l 连接的IP地址, 默认是本机

-d start 启动memcached服务

-d restart 重起memcached服务

-d stop|shutdown 关闭正在运行的memcached服务

-d install 安装memcached服务

-d uninstall 卸载memcached服务

-u 以的身份运行 (仅在以root运行的时候有效)

-m 最大内存使用,单位MB。默认64MB

-M 内存耗尽时返回错误,而不是删除项

-c 最大同时连接数,默认是1024

-f 块大小增长因子,默认是1.25

-n 最小分配空间,key+value+flags默认是48

-h 显示帮助

启动命令:

#/usr/local/memcached/bin/memcached
-d -l 127.0.0.1 -p 11211 -u root -m 1024 -c 4000 -P /var/run/memcached.pid

查看进程:

[[email protected] wmsp]# ps -aux |grep mem

root     10961 
0.0  0.0 314928  1040 ?       
Ssl  10:14   0:00 /usr/local/memcached/bin/memcached -d
-l 127.0.0.1 -p 11211 -u root -m 64 -c 1024 -P /var/run/memcached.pid

4.1.3.memcached配置nginx服务

server
{

listen       10090;

server_name  127.0.0.1;

location / {

root   html;

index  index.php index.html index.htm;

set 
$memcached_key  $uri; #uri是url剃掉主机名,赋值给memcached_key

memcached_pass  127.0.0.1:11211;#转发给memcached

error_page 404 502 [email protected];#必须以@首字符命名

}

location @fallback {

proxy_pass http://backend  #集群服务器节点

root html;#到root下查找网页

index index.php;   #指定首页名叫index.php

}

4.1.4.memcached配置测试

1:新建memcached.php

[[email protected]
wmsp]# cat memcached.php

<?php

error_reporting(E_ALL & ~E_NOTICE);

$m = new Memcached();

$m->addServer("127.0.0.1",
11211);

$m->set("foo",
"Hello!");

$m->set("bar",
"Memcached...");

$arr = array(

$m->get("foo"),

$m->get("bar")

);

print_r($arr);

访问:http://192.168.0.202:10080/memcached.php

Array ( [0] => Hello! [1] =>
Memcached... )

2:查看Memcached信息

#telnet 127.0.0.1 11211

Trying 127.0.0.1...

Connected to 127.0.0.1.

Escape character is ‘^]‘.

stats

4.2.安装Redis

4.2.1.Redis安装部署

Redis是一个开源、支持网络、基于内存、键值对存储数据库。

安装

进入lnmp解压后的目录,执行:./addons.sh install redis

看到Redis installed
successfully, enjoy it!,则安装成功。

4.2.2.Redis配置

1 :部署安装路径说明:

/usr/local/redis

/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/redis.so
–插件

/usr/local/php/etc/php.ini里面新增

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/redis.so

/var/run/redis.pid

进程端口:

[[email protected]
lnmp1.3-full]# ps aux |grep redis

root     25636 
0.1  0.0 136944  7512 ?       
Ssl  15:59   0:02 /usr/local/redis/bin/redis-server
127.0.0.1:6379

启动redis:

/usr/local/redis/bin/redis-server  /usr/local/redis/etc/redis.conf

4.2.3.Redis配置测试

重启redis:

/etc/init.d/redis restart

进入redis-cli测试:

[[email protected] init.d]#
/usr/local/redis/bin/redis-cli

127.0.0.1:6379> set foo
bar

OK

127.0.0.1:6379> get foo

"bar"

新建redis.php 测试:

Vi /home/wwwroot/wmsp/redis.php

<?php

$redis = new redis();

$redis->connect(‘127.0.0.1‘,
6379);

$redis->auth(“666”);

$redis->set(‘redistest‘,‘redistest66666666666666666‘);

echo
$redis->get(‘redistest‘);

?>

访问:http://192.168.0.202:10080/redis.php

‘redistest66666666666666666‘

时间: 2024-12-17 08:47:19

Linux平台(Centos7)-lnmp一键式部署mysql,nginx,php,php-fpm服务的相关文章

Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群

目录 1.Prometheus & Grafana 介绍 2.环境.软件准备 3.Rancher 2.x 应用商店 4.一键式部署 Prometheus 5.验证 Prometheus + Grafana 1.Prometheus & Grafana 介绍 Prometheus 是一套开源的系统监控.报警.时间序列数据库的组合,Prometheus 基本原理是通过 Http 协议周期性抓取被监控组件的状态,而通过 Exporter Http 接口输出这些被监控的组件信息,而且已经有很多 E

Linux系统下LNMP一键搭建Linux、PHP、MySQL环境(适合新手搭建linux下的web生成环境)

一. 首先要解释一下,什么是LNMP,LNMP起源于LAMP,LAMP是Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的缩写,这里将Web服务端的Apache替换成了资源消耗更少,更稳定的Nginx,所以LNMP就是Linux+Nginx+Mysql/MariaDB+Perl/PHP/Python的缩写: 引用LNMP一键安装包网站的简介来简单的介绍一下,为什么要选择LNMP LNMP一键安装包是什么? LNMP一键安装包是一个用Linux Shell编写的

LNMP一键安装包 支持nginx和php选择当前主流版本

最近一直在学Python,春节将至,说实话公司没有什么事情做 闲来无事 就利用Python写了一个LNMP一键安装包. 主要有一下几点: 1. 支持nginx选择版本:1.3.0--1.7.9 2. 数据库使用的是Mariadb,感觉数据库版本比较稳定,所以就只给了一个选择:Mariadb-5.5.40 3. 如果不知道什么是Mariadb 自行百度或谷歌补脑. 4. 支持php选择版本:php-5.2.14--php5.5.20 5. 不支持 nginx.Mariadb.php 单独安装. 6

基于Linux平台实现的流式套接字客户端服务器端代码

(1)服务器段代码如下: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <errno.h> #include <string.h> #include <netdb.h> #include <sys/types.h> #include <time.h> #include <sys/socket.h> #inclu

centos7 OpenStack 一键自动部署

1.[[email protected] ~]# systemctl stop NetworkManager [[email protected] ~]# systemctl enable NetworkManager [[email protected] ~]# systemctl stop firewalld [[email protected] ~]# systemctl enable firewalld [[email protected] ~]#vim /etc/selinux/con

Linux平台下安装MySQL

MySQL 安装方式: (1) RPM方式:RPM 软件包是一种在 Linux 平台下的安装文件,MySQL 的 RPM 安装文件包分为两个,即服务器端和客户端,需要分别下载安装(2) 二进制包方式:二位制包安装不需编译,针对不同的平台有经过优化编译的不同的二进制文件以及包格式,安装简单方便(3) 源码包方式:源码包是 MySQL 数据库的源代码,用户需要自己编译成二进制文件之后才能安装 MySQL 软件包: (1) MySQL-5.6.35-1.linux_glibc2.5.x86_64.rp

(0.2.3)Linux平台下二进制方式安装mysql

本章节:二进制安装mysql 目录: 1.基于Linux平台的Mysql项目场景介绍 2.mysql数据库运行环境准备-最优配置 3.如何下载mysql数据库 4.linux平台下二进制文件方式安装mysql 4.1.环境检查(libaio包) 4.2.安装过程 (1)下载文件.上传安装程序 (2)创建用户,组,创建目录 (3)解压安装程序包 (4)修改权限(授权用户对解压目录的权限) (5)配置环境变量(以便可以直接运行mysql命令) (6)准备参数配置文件 (7)开始初始化Mysql (8

Linux在高铁项目的部署环境

因为Linux和Java像开源.所以,现在在server基本上使用部署Linux平台即server.然后部署项目.在开发项目的过程中.程序员绝大多数仍采用最经典windows操作系统,尽管Linux也有系统的桌面,为人民,还是不太习惯.持Linux平台.所以在使用的频率那是相当的少! 在开发中,开发环境中编译使用等一系列通过后,还不能说功能已经ok.由于环境一旦变化,出现的问题的可能是自己没有考虑的.所以程序员都知道真实的环境才是最可靠的,有时候出现的问题.在真实的环境须要多次才干重现,甚至长时

MySQL最新版本 MySQL5.7.11 批量自动化一键式安装

以前都喜欢了源码安装MySQL,总觉得源码是高大上的事情,不过源码也需要时间,特别是make的时候,如果磁盘和cpu差的话,时间很长很长,在虚拟机上安装mysql尤其甚慢了. 现在业务发展了,开始在云上部署了,需要经常安装mysql,有的时候一次部署很多台,如果还是源码安装一个个去执行,效率就比较差了,所以准备采用更快效率的二进制来实现一键式自动化安装mysql. 1,mysql二进制安装包下载地址 下载地址:http://download.csdn.net/detail/mchdba/9488