LINUX下全源码安装lnmp环境-----码神帅
码神--帅 安装lnmp
再纯净的linux环境下安装apache ,mysql,php首先改变yum源
一:更改yum源为163网易的yum
(参考网址:https://blog.csdn.net/buyueliuying/article/details/51645597)
1. yum -y installwget 安装wget
2. cd /etc/yum.repos.d/ 先怎被备份一个原有的yum
3. mv/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 这一整句就是备份,复制运行即可
4. wget http://mirrors.163.com/.help/CentOS6-Base-163.repo 下载新的yum源
5. mv/etc/yum.repos.d/CentOS6-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo 把名字改为和老的名字一样
6. yum clean all 准备生成缓存
7. yum makecache 生成缓存
运行完最后一步即可
二:安装mysql5.5(-dndBwyl-7#j)
#关闭Linux防火墙命令
chkconfig iptables off
#修改SELINUX配置
vi /etc/sysconfig/selinux
将#SELINUX=enforcing
#修改为:
#SELINUX=disabled
然后 Reboot-----重启系统
安装gcc:
yum install –y autoconf automake imake libxml2-devel expat-devel cmake gcc gcc-c++ libaio libaio-devel bzr bison libtool ncurses-devel ncurses
#创建用户、组 为mysql
groupadd mysql
useradd -r -g mysql mysql -s /sbin/nologin –M(需要手写这句话)
#新建数据库执行文件目录(后面会把编译好的mysql程序安装到这个目录):
mkdir -p /application/mysql5.7.17
ln -s /application/mysql /application/mysql5.7.17
#新建数据库数据文件目录:
mkdir -p /home/mysql
mkdir -p /home/mysql/data
mkdir -p /home/mysql/logs
mkdir -p /home/mysql/temp
# 编辑PATH搜索路径
vi /etc/profile +
# 在profile文件末尾增加两行
PATH=/application/mysql/bin:/application/mysql/lib:$PATH
export PATH
# 使PATH搜索路径立即生效:
source /etc/profile
# 编辑hosts文件,增加一行,加入本机IP和主机名(需要根据实际情况修改IP和主机名)
vi /etc/hosts +
在最后一行加上以下ip 和 主机名
# 192.168.3.158(此虚拟机ip) 主机名(默认为localhost)
# ok进入下载工具目录,开始下载
cd /home
mkdir tools
在tools里面
Cd tools
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.17.tar.gz
在tools中
tar -xf mysql-boost-5.7.17.tar.gz
Cd 进入解压好的目录,直接复制以下内容
Cd 进去
cmake \
-DCMAKE_INSTALL_PREFIX=/application/mysql \
-DMYSQL_UNIX_ADDR=/application/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/home/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1 \
-DWITH_BOOST=boost/boost_1_59_0/
Make
Make install
make clean 清缓存
#修改目录拥有者权限
chown -Rf mysql:mysql /application/mysql5.7.17
chown -Rf mysql:mysql /home/mysql
#创建自带的库和表 不用
#mysql5.7之前版本初始化配置表命令:
#script/mysql_install_db \
#--user=mysql \
#--basedir=/application/mysql \
#--datadir=/home/mysql/data
#mysql5.7已经放弃使用了,而且也没有script目录,可以使用下面这个
cd /application/mysql
./bin/mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/home/mysql/data
注意:::这句话运行完会有数据库密码,切记复制下来登录使用,后边再进行修改
mv /etc/my.cnf /etc/my.cnf.bak
cp /application/mysql/support-files/my-default.cnf /etc/my.cnf
#修改下面配置
vi /etc/my.cnf
#修改下面配置
注释最后一句话
和上边有个mysql也注释
[mysqld]
basedir =/application/mysql
datadir =/home/mysql/data
port = 3306
socket = /home/mysql/temp/mysql.sock
[client]
socket=/home/mysql/temp/mysql.sock
下边图片是例子
cp /application/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql start 开启mysql
加入开机启动
chkconfig mysql on
登陆
Mysql -uroot -p原始密码
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密码');
二:安装php
yum-y install openssl openssl-devel curl curl-devel libjpeg libjpeg-devel libpnglibpng-devel freetype freetype-devel pcre pcre-devel libxslt libxslt-develbzip2 bzip2-devel
yuminstall -y gmp gmp-devel
yuminstall -y readline readline-devel
cdapplication 尽量把安装包放在一起(因为我的mysql安装包在application中,所以放在一起)
在这里面准备下载php安装包
wgethttp://cn2.php.net/get/php-7.2.5.tar.gz/from/this/mirror
使用 tar -xf mirror 解压到此文件夹
如果报错复制以下代码,不报错跳过下边一堆(到一行下划线位置)
yum install gcc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base:mirror01.idc.hinet.net
* extras:mirror01.idc.hinet.net
* updates:mirror01.idc.hinet.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package gcc.i386 0:4.1.2-50.el5 set to be updated
--> Processing Dependency: cpp = 4.1.2-50.el5 for package: gcc
--> Processing Dependency: glibc-devel >= 2.2.90-12 forpackage: gcc
--> Running transaction check
---> Package cpp.i386 0:4.1.2-50.el5 set to be updated
---> Package glibc-devel.i386 0:2.5-58.el5_6.3 set to be updated
--> Processing Dependency: glibc-headers = 2.5-58.el5_6.3 forpackage: glibc-devel
--> Processing Dependency: glibc-headers for package: glibc-devel
--> Running transaction check
---> Package glibc-headers.i386 0:2.5-58.el5_6.3 set to beupdated
--> Processing Dependency: kernel-headers >= 2.2.1 forpackage: glibc-headers
--> Processing Dependency: kernel-headers for package:glibc-headers
--> Running transaction check
---> Package kernel-headers.i386 0:2.6.18-238.9.1.el5 set to beupdated
--> Finished DependencyResolution
解压后进入解压好的php目录,开始执行下面的命令
./configure \
--prefix=/application/php-7.2.5 \
--with-config-file-path=/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-soap \
--with-libxml-dir \
--with-xmlrpc \
--with-openssl \
--with-mcrypt \
--with-mhash \
--with-pcre-regex \
--with-sqlite3 \
--with-zlib \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--with-cdb \
--enable-dom \
--enable-exif \
--enable-fileinfo \
--enable-filter \
--with-pcre-dir \
--enable-ftp \
--with-gd \
--with-openssl-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib-dir \
--with-freetype-dir \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-gettext \
--with-gmp \
--with-mhash \
--enable-json \
--enable-mbstring \
--enable-mbregex \
--enable-mbregex-backtrack \
--with-libmbfl \
--with-onig \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-zlib-dir \
--with-pdo-sqlite \
--with-readline \
--enable-session \
--enable-shmop \
--enable-simplexml \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-libxml-dir \
--with-xsl \
--enable-zip \
--enable-mysqlnd-compression-support \
--with-pear \
--enable-opcache
echo$?
如果输出0 就证明没有错误
make
echo$?
如果输出0 就证明没有错误
makeinstall
cp php.ini-development /etc/php.ini
vi /etc/profile
//系统变量(安装mysql时候已经配置过mysql的了,所以先把之前的删除)
PATH=/application/mysql/bin:/application/mysql/lib:/application/php-7.2.5/bin:$PATH
export PATH
执行命令使得改动立即生效
source /etc/profile
php安装完成
安装nginx
下载nginx(stable版本)
cd /usr/local/src
wget http://nginx.org/download/nginx-1.8.1.tar.gz
安装nginx
tar xf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure --prefix=/usr/local/nginx
make && make install
//启动nginx
启动 /usr/local/nginx/sbin/nginx
重启 /usr/local/nginx/sbin/nginx -s reload
配置支持nginx支持解析php
cd /usr/local/nginx/conf
vi nginx.conf
亲测
重启nginx试一下ok没,有问题可留言