Linux企业运维篇——lnmp

一.lnmp数据库的安装编译

在server1中下载mysql-boots-5.7.17.tar.gz压缩包并解压
Linux企业运维篇——lnmp_第1张图片

yum install -y cmake-2.8.12.2-4.el6.x86_64.rpm

Linux企业运维篇——lnmp_第2张图片创建/usr/local/lnmp文件夹

在这里插入图片描述
查看硬盘大小,必须为20G,否则解析mysql会报错
Linux企业运维篇——lnmp_第3张图片
Linux企业运维篇——lnmp_第4张图片
用命令添加在这里插入图片描述
重新启动再次查看硬盘大小已经变成20G了
Linux企业运维篇——lnmp_第5张图片

yum install -y ncurses-devel

Linux企业运维篇——lnmp_第6张图片

   yum install -y gcc gcc-c++

Linux企业运维篇——lnmp_第7张图片

   yum install -y make openssl-devel zlib-devel

Linux企业运维篇——lnmp_第8张图片
解析

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql \
#安装目录
-DMYSQL_DATADIR=/usr/local/lnmp/mysql/data \
#数据库存放目录
-DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock \ #Unix socket 文件路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \
#安装 myisam 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
#安装 innodb 存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
#安装 archive 存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
#安装 blackhole 存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 \
#安装数据库分区
-DENABLED_LOCAL_INFILE=1 \
#允许从本地导入数据
-DWITH_READLINE=1 \
#快捷键功能
-DWITH_SSL=yes \
#支持 SSL
-DDEFAULT_CHARSET=utf8 \
#使用 utf8 字符
-DDEFAULT_COLLATION=utf8_general_ci \
#校验字符
-DEXTRA_CHARSETS=all \
#安装所有扩展字符集
-DWITH_BOOST=boost/boost_1_59_0

Linux企业运维篇——lnmp_第9张图片
Linux企业运维篇——lnmp_第10张图片

( rm -f CmakeCache.txt ##安装出错时清理缓存再执行上述命令)

make && make install #编译的时间会比较长

Linux企业运维篇——lnmp_第11张图片

Linux企业运维篇——lnmp_第12张图片
添加用户mysql

在这里插入图片描述
复制mysql.server到/etc/init.d下

[root@server1 mysql-5.7.17]# cd support-files/
[root@server1 support-files]# cp mysql.server /etc/init.d/mysqld 

添加执行权限
在这里插入图片描述

[root@server1 init.d]# cd - /root/mysql-5.7.17/support-files
[root@server1 support-files]# cp my-default.cnf /etc/my.cnf
[root@server1 support-files]# vim /etc/my.cnf (编辑配置文件,指定路径)

Linux企业运维篇——lnmp_第13张图片
添加系统环境变量:

[root@server1 ~]# vim ~/.bash_profile 

在这里插入图片描述
Linux企业运维篇——lnmp_第14张图片

[root@server1 ~]# source ~/.bash_profile 

在这里插入图片描述
设置文件用户组:

在这里插入图片描述
初始化数据库:

[root@server1 data]# mysqld --user=mysql --initial

Linux企业运维篇——lnmp_第15张图片
[root@server1 data]# /etc/init.d/mysqld start
[root@server1 data]# mysql_secure_installation(重新设置密码)
第一步要输入的root密码就是初始化给出的密码。其他选项直接回车。

在这里插入图片描述

Linux企业运维篇——lnmp_第16张图片登陆数据库
Linux企业运维篇——lnmp_第17张图片

二.php安装编译

在这里插入图片描述

[root@server1 php-5.6.35]# ./configure --prefix=/usr/local/lnmp/php --with-config-file-path=/usr/local/lnmp/php/etc --with-openssl --with-snmp --with-gd --with-zlib --with-curl --with-libxml-dir --with-png-dir --with-jpeg-dir --with-freetype-dir --with-gmp --with-gettext --with-pear --enable-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-inline-optimization --enable-soap --enable-ftp --enable-sockets --enable-mbstring --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mcrypt --with-mhash

在这里插入图片描述
在编译的过程中会不断提示我们需要安装其他软件来支持。我们一一安装。

[root@server1 php-5.6.35]# yum install libxml2-devel -y 
[root@server1 php-5.6.35]# yum install openssl-devel -y 
[root@server1 php-5.6.35]# yum install libcurl-devel -y 
[root@server1 php-5.6.35]# yum whatprovides */jpeglib.h(查看合适的软件
[root@server1 php-5.6.35]# yum install libjpeg-turbo-devel-1.2.1-1.el6.x86_64 -y 
[root@server1 php-5.6.35]# yum whatprovides */png.h 
[root@server1 php-5.6.35]# yum install libpng-devel-1.2.49-1.el6_2.x86_64 
[root@server1 php-5.6.35]# yum install -y freetype-devel 
[root@server1 php-5.6.35]# yum whatprovides */png.h 
[root@server1 php-5.6.35]# yum whatprovides */gmp.h 
[root@server1 php-5.6.35]# yum install gmp-devel-4.3.1-7.el6_2.2.x86_64 
[root@server1 ~]# ls libmcrypt-devel-2.5.8-9.el6.x86_64.rpm libmcrypt-2.5.8-9.el6.x86_64.rpm
[root@server1 ~]#  yum install libmcrypt-* -y 
[root@server1 php-5.6.35]# yum install -y net-snmp-devel 
[root@server1 php-5.6.35]# ./configure --prefix=/usr/local/lnmp/php --with-config-file-path=/usr/local/lnmp/php/etc --with-openssl --with-snmp --with-gd --with-zlib --with-curl --with-libxml-dir --with-png-dir --with-jpeg-dir --with-freetype-dir --with-gmp --with-gettext --with-pear --enable-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-inline-optimization --enable-soap --enable-ftp --enable-sockets --enable-mbstring --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mcrypt --with-mhash (再次编译,无报错成功) 

在这里插入图片描述
Linux企业运维篇——lnmp_第18张图片
配置
Linux企业运维篇——lnmp_第19张图片
Linux企业运维篇——lnmp_第20张图片
在这里插入图片描述
在这里插入图片描述
Linux企业运维篇——lnmp_第21张图片
修改时区
在这里插入图片描述
在这里插入图片描述
赋权
Linux企业运维篇——lnmp_第22张图片
启动服务(要存在nginx用户)
在这里插入图片描述

三.nginx的安装配置

解压nginx-1.14.0.tar.gz
Linux企业运维篇——lnmp_第23张图片
在这里插入图片描述
删除版本号,防止被攻击
在这里插入图片描述

Linux企业运维篇——lnmp_第24张图片
屏蔽debug日志,因其日志太多,占用内存,一般出错后,可打开查看日志
在这里插入图片描述
安装pcre-devel

[root@server1 nginx-1.14.0]#  yum install pcre-devel -y
[root@server1 nginx-1.14.0]# ./configure --prefix=/usr/local/lnmp/nginx --with-http_ssl_module --with-http_stub_status_module --with-threads --with-file-aio --user=nginx --group=nginx 

Linux企业运维篇——lnmp_第25张图片

[root@server1 nginx-1.14.0]# make && make install

Linux企业运维篇——lnmp_第26张图片
配置
Linux企业运维篇——lnmp_第27张图片
在这里插入图片描述
添加了index.php,可访问动态网页
在这里插入图片描述

location ~ \.php$ { 
	root 			html; 
	fastcgi_pass 	127.0.0.1:9000; 
	fastcgi_index 	index.php; 
	# fastcgi_param    SCRIPT_FILENAME   /scripts$fastcgi_script_name; 
	include		 fastcgi.conf; 
	  }

语法检测
Linux企业运维篇——lnmp_第28张图片
Linux企业运维篇——lnmp_第29张图片
查看nginx服务端口,我们可以看到其端口与httpd默认端口相同,因此只能打开一项服务,或者修改httpd的端口号,在/etc/httpd/conf/httpd.conf文件修改
Linux企业运维篇——lnmp_第30张图片
编辑一个php网页文件
在这里插入图片描述
Linux企业运维篇——lnmp_第31张图片
在这里插入图片描述

在这里插入图片描述

Linux企业运维篇——lnmp_第32张图片

四.搭建论坛

获得Discuz_X3.2_SC_UTF8.zip压缩包

将论坛压缩包解压到指定文件
在这里插入图片描述
Linux企业运维篇——lnmp_第33张图片
Linux企业运维篇——lnmp_第34张图片
此时看到很多权限错误
在这里插入图片描述
Linux企业运维篇——lnmp_第35张图片
需要给文件给定权限
Linux企业运维篇——lnmp_第36张图片

Linux企业运维篇——lnmp_第37张图片
选择全新安装
Linux企业运维篇——lnmp_第38张图片
设置mysql密码,和论坛密码
Linux企业运维篇——lnmp_第39张图片
出现问题:连接不了数据库

Linux企业运维篇——lnmp_第40张图片
添加路径:

在这里插入图片描述
在这里插入图片描述

Linux企业运维篇——lnmp_第41张图片
重新加载
在这里插入图片描述
Linux企业运维篇——lnmp_第42张图片
Linux企业运维篇——lnmp_第43张图片
登陆管理员
Linux企业运维篇——lnmp_第44张图片

Linux企业运维篇——lnmp_第45张图片
不能操作,需要删除index.php文件。
Linux企业运维篇——lnmp_第46张图片
在这里插入图片描述
Linux企业运维篇——lnmp_第47张图片
添加新用户
Linux企业运维篇——lnmp_第48张图片
Linux企业运维篇——lnmp_第49张图片
登陆数据库查看
Linux企业运维篇——lnmp_第50张图片
在这里插入图片描述
Linux企业运维篇——lnmp_第51张图片

五.lnmp----添加缓存(memcache)

获取并解压memcache压缩包
Linux企业运维篇——lnmp_第52张图片
添加环境变量
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
Linux企业运维篇——lnmp_第53张图片
编译、安装

Linux企业运维篇——lnmp_第54张图片
Linux企业运维篇——lnmp_第55张图片
配置
在这里插入图片描述
在这里插入图片描述
查看php有模块memcache
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""(如果这里指定ip只监控指定ip的端口,没有是监控所有端口)

在这里插入图片描述
安装telnet(查看是否远程通信)

 [root@server1 ~]# yum install telnet 
 [root@server1 etc]# telnet localhost 11211 
 Trying ::1... 
 Connected to localhost. 
 Escape character is '^]'. 
 set name 0 0 6 
 westos 
 STORED 
 wwwwwww 
 ERROR 
 get name 
 VALUE name 0 6 
 westos 
 END 
 set name 0 10 6 
 hello1 
 STORED 
 get name 
 VALUE name 0 6 
 hello1 
 END 
 get name 
 END 
 stats(可查看版本信息) 
 STAT pid 22465 
 STAT uptime 13172 
 STAT time 1550668310 
 STAT version 1.4.4 
 STAT pointer_size 64 
 STAT rusage_user 0.006998

编辑memcache文件,修改密码
在这里插入图片描述
在这里插入图片描述
Linux企业运维篇——lnmp_第56张图片
访问网页http:/ /172.25.55.1/memcache.php
Linux企业运维篇——lnmp_第57张图片
Linux企业运维篇——lnmp_第58张图片

多次访问172.25.6.1/example.php

Linux企业运维篇——lnmp_第59张图片
刷新memcache网页可查看到数据大多来此缓存,只有小部分是直接访问服务端。
Linux企业运维篇——lnmp_第60张图片
用ab命令模拟访问服务器的数据流量
未加memcache时:
ab -c 10 -n 5000 http:/ /172.25.6.1/index.php
Linux企业运维篇——lnmp_第61张图片
访问时间是42秒左右,失败次数为509次
Linux企业运维篇——lnmp_第62张图片

添加memcache时:

[root@server1 ~]# ab -c 10 -n 5000 http://172.25.6.1/example.php 
Time taken for tests: 5.418 seconds(用时5秒) 
Complete requests: 5000 
Failed requests: 0(没有失败) 
Write errors: 0

六.lnmp----openresty外部存储

openresty自带缓存,所以,不能有其他nginx在运行。
在这里插入图片描述
解压openresty包,编译安装
Linux企业运维篇——lnmp_第63张图片
在这里插入图片描述
Linux企业运维篇——lnmp_第64张图片
编辑一个php动态网页
在这里插入图片描述
在这里插入图片描述
编辑openresty自带的nginx的配置文件,如果系统有其他nginx要注意目录名称。

在这里插入图片描述
在这里插入图片描述

Linux企业运维篇——lnmp_第65张图片
Linux企业运维篇——lnmp_第66张图片
打开nginx
在这里插入图片描述
查看服务端口号
Linux企业运维篇——lnmp_第67张图片复制测试页
Linux企业运维篇——lnmp_第68张图片
通过ab模拟服务器访问数据,检测速度,在memcache上再加一次外部缓存后,速度比之前的更快,并且没有失败的请求。(可与memcache的数据做比较)
Linux企业运维篇——lnmp_第69张图片
Linux企业运维篇——lnmp_第70张图片
Linux企业运维篇——lnmp_第71张图片
Linux企业运维篇——lnmp_第72张图片
访问网页
Linux企业运维篇——lnmp_第73张图片
编辑test.java测试页
Linux企业运维篇——lnmp_第74张图片
在这里插入图片描述
Linux企业运维篇——lnmp_第75张图片在这里插入图片描述

你可能感兴趣的:(Linux企业运维篇——lnmp)