Centos7 手把手教你 编译安装LNMP环境

在我们刚购买完服务器后我们可以使用Xshell来连接到服务器 , 但是现在Xshell开始收费了 我们不得不使用之前的版本 下面放上百度云的链接:

https://pan.baidu.com/s/1slHTq9Z 密码: 3dun

本文中需要的相关软件链接地址 
链接:https://pan.baidu.com/s/17jxBfOCJ55eV-v9AKbMeXg 密码:lzo3

!. 连接服务器 
这个是Xshell5的版本 安装好之后我们开始连接服务器

上面是连接服务器成功后的截图 !! 
我的命令行背景是修改过的 如果需要修改请参考这篇文章 http://www.jianshu.com/p/741affd7b3c5

2. 安装nginx

首先安装nginx的依赖

yum install gcc gcc-c++ openssl openssl-devel cyrus-sasl-md5
1


上图是将代码执行后的结果

中途会询问我们是否安装 我们按 “y” 并回车安装

上图表示依赖已经安装完成!! 下面安装nginx

在root家目录下创建一个software目录 (可以使用 cd ~切换到用户的家目录) 


下面将我们需要的所有软件包上传到服务器software目录中 
我们可以使用WinSCP软件上传,使用方法可以百度 
上传完成后对文件进行解压 


下面进入到nginx解压后的目录并进行编译

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-pcre=../pcre-8.39 --with-zlib=../zlib-1.2.8
1
我们将nginx安装到/usr/local/nginx目录下

下图这样就是编译成功

下面执行make && make install 进行安装

上图表示安装nginx成功

首次启动nginx

访问测试

如果你能看见上面这样的效果就表示nginx已经启动成功!!!

今天先写到这里 以后再继续更新!

今天继续为大家更新文章!

nginx加入到开机自动启动

到这里我们的nginx还没有实现开机自动启动 那么我们就把他加入到开机自动启动服务中!

我们先编辑系统启动脚本vi /etc/rc.local 这个文件是系统启动后会自动执行的,我们就将启动命令加入到这个文件中

我们可以按i 进入到编辑模式 插入对应的程序启动命令即可

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf &
1


随后我们:wq保存文件并退出,使用 init 6重启系统

重启后我们连接到服务器上使用ps -e | grep nginx 查看nginx的进程发现已经成功的启动了

如果你发现你的进程没有成功的启动可能是因为你的这个脚本文件没有可以执行的权限 请给该文件增加 其他人可以执行的权限 chmod o+x /etc/rc.local后重启再次查看

下图表示如果我们不在nginx程序的目录中无法使用nginx的命令 会提示找不到nginx

下面我们将nginx的位置加入到环境变量中

vi /etc/profile 
1
编辑环境变量文件,加入如下内容

随后我们更新环境变量 并使用命令再次重启nginx

下面编译安装PHP-FPM

首先安装必要的软件依赖

yum install gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel  zlib zlib-devel glibc glibc-devel glib2 glib2-devel
1
中途会有提示询问是否安装 按y继续安装

安装完成后我们去软件目录解压文件

tar zxf php-5.6.30.tar.gz
1
进入PHP解压后的目录

cd php-5.6.30/
1
编译

./configure --prefix=/usr/local/php-fpm --enable-fpm --with-zlib  --with-pdo-mysql --enable-mbstring --with-gd --with-png-dir=/usr/lib64 --with-jpeg-dir=/usr/lib64 --with-freetype-dir=/usr/lib64
1


安装

make && make install
1


这里我们不着急启动php-fpm,我们先对它进行一些配置,到php-fpm的安装目录etc下复制一份配置文件

随后我们编辑这个配置文件

这些都设置好之后我们可以保存退出:wq

我们第一次启动php-fpm测试

提示我们没有指定的用户和组 下面我们进行创建

上图我们创建了对应的用户 系统会默认为我们创建一个同名的用户组,再次重新启动php-fpm后查看进程就已经启动成功了

我们可以通过快捷命令管理php-fpm 
关闭php-fpm (路径要和我的一样)

kill `cat /usr/local/php-fpm/var/run/php-fpm.pid `
1
重启(路径要和我的一样 在已经启动的情况下才有效)

kill -USR2 `cat /usr/local/php-fpm/var/run/php-fpm.pid `
1
下面我们编译安装MySQL

先进入软件的存放目录

文字比较小 所以截图不清晰 请大家见谅

如果你在安装时报告相同的错误请安装cmake 如果MySQL可以直接编译可以跳过次步骤

确认安装 


安装完成 


下面我们再次编译MySQL

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data
1
再次执行

到这里 如果你遇到了 如下的错误

CMake Error at cmake/readline.cmake:85 (MESSAGE): Curses library not found.
1
请参考这篇文章

https://www.jianshu.com/p/5aa83a8f93ce

按照文章的方法 处理好后再次执行上面的编译命令

上图表示可以安装了

下面执行安装

make && make install
1
安装过程可能需要30分钟 (主要看你的机器性能)

下面配置MySQL

首先进入到我们的安装目录

cd /usr/local/mysql/
1


创建mysql用户和mysql用户组 并且让mysql用户属于mysql用户组

groupadd mysql    #创建mysql组
useradd -r -g mysql mysql    #增加mysql用户并让它属于mysql用户组
1
2


将所有的目录都改成mysql用户和mysql组 (安装好后默认都是root) 


删除默认的配置文件

 rm -f /etc/my.cnf
1


安装MySQL系统表

./scripts/mysql_install_db --user=mysql
1


下面将所有目录都改成root 和root组 只有data目录不是不是

chown -R root:root .
chown -R mysql:mysql data
1
2


下面修改配置文件

cp support-files/my-default.cnf /etc/my.cnf
1


以完整路径的方式启动MySQL

/usr/local/mysql/bin/mysqld_safe --user=mysql &
1


启动时如果感觉卡住了 按下回车键

现在不着急连接 下面配置MySQL守护进程

将MySQL程序复制到启动目录

cp support-files/mysql.server /etc/init.d/mysqld
1


增加配置即可

chkconfig --add mysqld
1


已经可以使用管理服务的命令管理MySQL了 


下面我们配置环境变量

vim /etc/profile
1
找到文件最下面 修改对应位置 将MySQL对应的bin目录增加进去

export PATH="$PATH:/usr/local/apache/bin:/usr/local/mysql/bin"
1
如果没有就增加 


下面让环境变量生效

source /etc/profile
1


下面连接MySQL 
此时mysql还没有密码 


我们使用MySQL库查看有哪些用户 


下面删除不必要的用户

delete from mysql.user where host <> 'localhost';
delete from mysql.user where user <> 'root';
1
2


为该用户设置密码 (密码可以自定义)

update mysql.user set password=password('root') where user='root';  # 设置密码
flush privileges; # 刷新权限让密码生效
1
2


此时我们退出MySQL再登录就需要密码了

大功告成!
https://blog.csdn.net/qq_35061546/article/details/78703164

你可能感兴趣的:(linux)