Lnmp(mysql分离)(nginx 1.13.6+mysql5.5+php5.3)环境一键搭建

Lnmp(mysql分离)(nginx 1.13.6+mysql5.5+php5.3)环境一键搭建

如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

在192.168.37.128服务器上:(mysql只到make install即可)nginx默认站点html

1.上传lnmp的安装包

[root@localhost ~]# mkdir /nginx

rz上传nginx 1.13.6源码包到/nginx /目录下

[root@localhost ~]# ls /nginx/

nginx-1.13.6.tar.gz

[root@localhost ~]# mkdir /mysql

rz上传mysql5.5包和cmake包

[root@localhost ~]# ls /mysql/

cmake-2.8.8.tar.gz  mysql-5.5.32.tar.gz

[root@localhost ~]# mkdir /php

rz上传php5.3和各依赖包

[root@localhost ~]# ls /php/

libiconv-1.14.tar.gz  libmcrypt-2.5.8.tar.gz  mhash-0.9.9.9.tar.gz  php-5.3.27.tar.gz

2.开发一键安装lnmp平台脚本

[root@localhost ~]# cat lnmp_install.sh

#!/bin/bash

LANG=en_US.UTF-8    

#安装nginx1.13.6(单网站域名,在默认站点目录html中)

rpm -q gcc ||yum -y install gcc

rpm -q gcc-c++ || yum -y install gcc-c++

rpm -q openssl-devel || yum -y install openssl-devel

rpm -q zlib-devel || yum -y install zlib-devel

rpm -q pcre-devel || yum -y install pcre-devel

useradd nginx &> /dev/null

cd /nginx/

tar -zxf nginx-1.13.6.tar.gz

cd nginx-1.13.6

./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_ssl_module

make && make install

/usr/local/nginx/sbin/nginx -t

/usr/local/nginx/sbin/nginx

netstat -anptu |grep :80

#安装mysql5.5(单实例)

cd /mysql

           #先安装cmake,并安装最后提示运行gmake方式来安装cmake软件

tar -zxf cmake-2.8.8.tar.gz

cd cmake-2.8.8

./configure

gmake

gmake install

cd ..

yum -y install ncurses-devel   #安装mysql依赖包

                               #用cmake软件包安装mysql5.5

groupadd mysql

useradd mysql -s /sbin/nologin -M -g mysql

tar -zxf mysql-5.5.32.tar.gz

cd mysql-5.5.32

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.32 \

-DMYSQL_DATADIR=/usr/local/mysql-5.5.32/data \

-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.32/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \

-DENABLED_LOCAL_INFILE=ON \

-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \

-DWITH_FAST_MUTEXES=1 \

-DWITH_ZLIB=bundled \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_READLINE=1 \

-DWITH_EMBEDDED_SERVER=1 \

-DWITH_DEBUG=0

make && make install

ln -s /usr/local/mysql-5.5.32/ /usr/local/mysql

#安装php5.3

cd /php/                                                    #先安装php所需的图形lib库

yum -y install zlib libxml libjpeg freetype libpng gd curl  zlib-devel libxml2-devel libjpeg-turbo-devel freetype-devel  \yum -y install libpng-devel gd-devel curl-devel

yum -y install libxslt*                                    #安装普通的依赖包

yum -y install openldap openldap-devel

cp -frp /usr/lib64/libldap* /usr/lib/

                                                           #安装那3个依赖包,编译安装的

tar -zxf mhash-0.9.9.9.tar.gz

tar -zxf libiconv-1.14.tar.gz

tar -zxf libmcrypt-2.5.8.tar.gz

cd mhash-0.9.9.9

./configure

make && make install

cd ..

cd libiconv-1.14

./configure

make && make install

cd ..

cd libmcrypt-2.5.8

./configure

make && make install

cd libltdl/

./configure --enable-ltdl-install

make && make install

ln -s /usr/local/lib/libmhash.* /usr/lib

ln -s /usr/local/lib/libmcrypt* /usr/lib

ln -s /usr/local/lib/libiconv.* /usr/lib

ln -s /usr/local/mysql/lib/libmysqlclient.so.18  /usr/lib64/            

#安装php5.3

cd /php/

tar -zxf php-5.3.27.tar.gz

cd php-5.3.27

./configure  \

--prefix=/usr/local/php  \

--enable-fpm  \

--with-mysql=/usr/local/mysql/  \

--with-mysqli=/usr/local/mysql/bin/mysql_config  \

--enable-mbstring  \

--with-config-file-path=/usr/local/php/etc  \

--with-iconv-dir=/usr/local/libiconv/  \

--with-freetype-dir  \

--with-jpeg-dir  \

--with-png-dir  \

--with-zlib  \

--with-libxml-dir=/usr/  \

--enable-xml  \

--disable-rpath  \

--enable-discard-path \

--enable-safe-mode  \

--enable-bcmath  \

--enable-shmop  \

--enable-sysvsem  \

--enable-inline-optimization  \

--with-curl  \

--with-curlwrappers  \

--enable-mbregex  \

--enable-fastcgi \

--enable-force-cgi-redirect \

--enable-mbstring  \

--with-mcrypt  \

--with-gd  \

--enable-gd-native-ttf  \

--with-openssl  \

--with-mhash  \

--enable-pcntl  \

--enable-sockets  \

--with-ldap \

--with-ldap-sasl  \

--with-xmlrpc  \

--enable-zip  \

--enable-soap  \

--enable-short-tags  \

--enable-zend-multibyte  \

--enable-static  \

--with-xsl  \

--with-fpm-user=nginx  \

--with-fpm-group=nginx

make ZEND_EXTRA_LIBS='-liconv'     #编译时,支持编码转换的扩展库

make install

cp php.ini-production /usr/local/php/etc/php.ini  #拷贝php配置文件

echo "/usr/local/mysql/lib" >> /etc/ld.so.conf  #将mysql的lib库文件目录加入到ldconfig

ldconfig

cd /usr/local/php/etc/

cp php-fpm.conf.default php-fpm.conf   #拷贝fast-cgi动态网页配置文件

                                       #修改fast-cgi配置文件,配置动态网页参数

sed -i '25s#;pid = run/php-fpm.pid#pid = run/php-fpm.pid#g' php-fpm.conf

sed -i '32s#;error_log = log/php-fpm.log#error_log = log/php-fpm.log#g' php-fpm.conf

sed -i '50s#;log_level = notice#log_level = notice#g' php-fpm.conf

sed -i '89s#;daemonize = yes#daemonize = yes#g' php-fpm.conf

cd /php/php-5.3.27/sapi/fpm/

cp init.d.php-fpm /etc/init.d/php-fpm   #拷贝启动动态网页的fast-cgi服务脚本

chmod +x /etc/init.d/php-fpm

/etc/init.d/php-fpm start

#修改nginx配置文件,调用fast-cgi动态网页

sed -i '45s#index  index.html index.htm#index index.php index.html index.htm#g' /usr/local/nginx/conf/nginx.conf

sed -i '65s#\#location#location#g' /usr/local/nginx/conf/nginx.conf

sed -i '66s#\###g' /usr/local/nginx/conf/nginx.conf

sed -i '67s#\###g' /usr/local/nginx/conf/nginx.conf

sed -i '68s#\###g' /usr/local/nginx/conf/nginx.conf

sed -i '69s#\#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name#    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name#g' /usr/local/nginx/conf/nginx.conf

sed -i '70s#\###g' /usr/local/nginx/conf/nginx.conf

sed -i '71s#\###g' /usr/local/nginx/conf/nginx.conf

echo "<?php phpinfo(); ?>" > /usr/local/nginx/html/index.php

/usr/local/nginx/sbin/nginx -t

/usr/local/nginx/sbin/nginx -s stop

/usr/local/nginx/sbin/nginx

/etc/init.d/php-fpm restart

/etc/init.d/mysqld restart

netstat -anptu |grep 80

netstat -anptu |grep 3306

netstat -anptu |grep 9000

wq

3.服务器建立测试连接mysql程序的代码,测试php是否能连接mysql

[root@localhost ~]# cat /usr/local/nginx/html/linkdb.php

<?php

$linkdb=mysql_connect("192.168.37.129","test1","test1");  #mysqL数据库的IP,用户名和密码

if($linkdb){

        echo "db ok";

}else{

        echo "db no";

}

?>

wq

在192.168.37.128服务器上安装mysql5.5.32

1.上传mysql包

[root@localhost ~]# mkdir /mysql

rz上传mysql5.5包和cmake包

[root@localhost ~]# ls /mysql/

cmake-2.8.8.tar.gz  mysql-5.5.32.tar.gz

2.开发安装mysql的脚本

[root@localhost ~]# cat install_mysql

#!/bin/bash

LANG=en_US.UTF-8    

#安装编译工具

rpm -q gcc ||yum -y install gcc

rpm -q gcc-c++ || yum -y install gcc-c++

#安装mysql5.5(单实例)

cd /mysql

           #先安装cmake,并安装最后提示运行gmake方式来安装cmake软件

tar -zxf cmake-2.8.8.tar.gz

cd cmake-2.8.8

./configure

gmake

gmake install

cd ..

yum -y install ncurses-devel   #安装mysql依赖包

                               #用cmake软件包安装mysql5.5

groupadd mysql

useradd mysql -s /sbin/nologin -M -g mysql

tar -zxf mysql-5.5.32.tar.gz

cd mysql-5.5.32

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.32 \

-DMYSQL_DATADIR=/usr/local/mysql-5.5.32/data \

-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.32/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \

-DENABLED_LOCAL_INFILE=ON \

-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \

-DWITH_FAST_MUTEXES=1 \

-DWITH_ZLIB=bundled \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_READLINE=1 \

-DWITH_EMBEDDED_SERVER=1 \

-DWITH_DEBUG=0

make && make install

ln -s /usr/local/mysql-5.5.32/ /usr/local/mysql

cd ..

\cp -f mysql-5.5.32/support-files/my-small.cnf /etc/my.cnf        #拷贝配置文件

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile   #配置环境变量

source /etc/profile

chown -R mysql.mysql /usr/local/mysql/data/             #授权数据目录和初始化mysql5.5

chmod -R 1777 /tmp/                                     #1是粘贴位,授权是防止/tmp权限有问题

cd /usr/local/mysql/scripts/

./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --user=mysql

\cp -f /mysql/mysql-5.5.32/support-files/mysql.server /etc/init.d/mysqld  #拷贝启动脚本

chmod +x /etc/init.d/mysqld

/etc/init.d/mysqld start

netstat -anptu |grep 3306

/usr/local/mysql/bin/mysqladmin -u root password '123'   #为mysql增加密码,不是修改,初始没密码

chkconfig mysqld on

wq

3.创建一个测试库,供php程序连接mysql

[root@localhost ~]# mysql -uroot -p123

mysql> create database test1;                                   #创建一个库,供php连接mysql

mysql> grant all on test1.* to test1@"%" identified by "test1"; #授权一个用户,供php连接mysql

mysql> flush privileges;

mysql> quit

[root@localhost scripts]# /etc/init.d/mysqld stop

[root@localhost scripts]# /etc/init.d/mysqld start

widows客户端访问服务器页面:

1)能解析php

2)php能够连接mysql

如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/450238.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

当你不会介绍自己的产品和系统时,不妨看看大厂是如何做的

当你为不知如何介绍自己的产品和系统而困惑时&#xff0c;不妨把目光投向那些大厂。 大厂就像是璀璨的灯塔&#xff0c;为我们指引着方向。 他们在介绍产品和系统时&#xff0c;犹如技艺精湛的艺术家&#xff0c;以独特的方式勾勒出一幅幅令人惊艳的画卷。 他们用富有感染力…

股票金融市场中的tick,分钟,日线数据

在金融市场中&#xff0c;股票数据的分析对于投资者来说至关重要。股票数据可以根据时间粒度的不同&#xff0c;分为几种不同的类型&#xff0c;包括Tick数据、分钟数据和日线数据。下面将详细介绍这些数据类型&#xff0c;并对比它们之间的差别。 Tick数据 Tick数据&#xf…

详述python的列表、元组、字典、集合的基本语法及其函数

目录 列表: 列表的两种创建方式&#xff1a; 列表的删除&#xff1a; 列表的三种遍历&#xff1a; 列表的基础函数&#xff1a; 列表排序的两种方式&#xff1a; 列表生成式的语法结构&#xff1a; 二维列表的遍历&#xff1a; 元组&#xff1a; 元组的创建&#xff1…

Html 标题加图标

每个网页选项卡都有一个图标&#xff1a; <meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>主页</title><link rel"icon" href"images/记事本.png&…

Spring Boot框架下JavaWeb在线考试系统的创新实现

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

计算机毕业设计 | SpringBoot大型旅游网站 旅行后台管理系统(附源码)

1&#xff0c; 概述 1.1 项目背景 随着互联网技术的快速发展和普及&#xff0c;旅游行业逐渐转向线上&#xff0c;越来越多的游客选择在线预订旅游产品。传统的线下旅行社模式已不能满足市场需求&#xff0c;因此&#xff0c;开发一个高效、便捷的旅游网站成为行业的迫切需求…

15分钟学Go 第3天:编写第一个Go程序

第3天&#xff1a;编写第一个Go程序 1. 引言 在学习Go语言的过程中&#xff0c;第一个程序通常是“Hello, World!”。这个经典的程序不仅教会你如何编写代码&#xff0c;还引导你理解Go语言的基本语法和结构。本节将详细介绍如何编写、运行并理解第一个Go程序&#xff0c;通过…

[旧日谈]关于Qt的刷新事件频率,以及我们在Qt的框架上做实时的绘制操作时我们该关心什么。

[旧日谈]关于Qt的刷新事件频率&#xff0c;以及我们在Qt的框架上做实时的绘制操作时我们该关心什么。 最近在开发的时候&#xff0c;发现一个依赖事件来刷新渲染的控件会导致程序很容易异常和崩溃。 当程序在运行的时候&#xff0c;其实软件本身的负载并不高&#xff0c;所以…

小新学习Docker之Docker--harbor私有仓库部署与管理

目录 一、Harbor简介 1.1、Harbor概述 1.2、Harbor的特性 1.3、Harbor的构成 二、Harbor构建Docker私有仓库 2.1、部署Harbor服务 2.2、启动 Harbor 2.3、查看 Harbor 启动镜像&#xff0c;检查harbor是否安装成功 2.4、创建一个新项目 2.5、非本地主机进行下载镜像 …

爬虫逆向学习(十二):一个案例入门补环境

此分享只用于学习用途&#xff0c;不作商业用途&#xff0c;若有冒犯&#xff0c;请联系处理 反爬前置信息 站点&#xff1a;aHR0cDovLzEyMC4yMTEuMTExLjIwNjo4MDkwL3hqendkdC94anp3ZHQvcGFnZXMvaW5mby9wb2xpY3k 接口&#xff1a;/xjzwdt/rest/xmzInfoDeliveryRest/getInfoDe…

宁德时代25届校招入职Verify测评大揭秘::数字推理25分钟+言语推理19分钟SHL题库

非常感谢您对宁德时代的关注。祝贺您通过宁德时代校园招聘的专业面试环节&#xff0c;现邀请您参与完成以下测评。本轮共两份测评&#xff0c;每份测评对您的最终结果都非常重要&#xff0c;请务必在收到测评后48小时内完成!具体如下:A. 登录信息: 测评包含语言理解数字推理两…

前缀和算法——优选算法

个人主页&#xff1a;敲上瘾-CSDN博客 个人专栏&#xff1a;游戏、数据结构、c语言基础、c学习、算法 一、什么是前缀和&#xff1f; 前缀和是指从数组的起始位置到某一位置&#xff08;或矩阵的某个区域&#xff09;的所有元素的和。这种算法通过预处理数组或矩阵&#xff0c;…

【日志】编辑器开发——修复根据Excel表格数据生成Json文件和配置表代码报错

2024.10.15 又是蕉绿且摆烂的一天&#xff0c;不仅需要克制网瘾&#xff0c;还要努力学习&#xff0c;不然真的会被抛弃啊。但是我还是不想卷&#xff0c;给我的时间大概还有半年&#xff0c;突然好奇半年时间到底能学点什么或者做点什么。 【力扣刷题】 暂无 【数据结构】 …

Python入门笔记(七)

文章目录 第十五章. 下载数据15.1 csv文件15.2 json文件 第十六章. 使用API16.1 requests 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。 点击跳转&#xff1a;人工智能从入门到精通教程 本文电子版获取…

C++初阶学习第七弹——string的模拟实现

C初阶学习第六弹------标准库中的string类_c语言返回string-CSDN博客 通过上篇我们已经学习到了string类的基本使用&#xff0c;这里我们就试着模拟实现一些&#xff0c;我们主要实现一些常用到的函数。 目录 一、string类的构造 二、string类的拷贝构造 三、string类的析构函…

请求的响应----状态码分为五大类(爬虫)

前言 一个爬虫的成功与否&#xff0c;在于你是否拿到了想要的数据&#xff1b;一个请求的成功与否&#xff0c;在于响应的状态码&#xff0c;它标明了当前请求下这个响应的结果&#xff0c;是好还是坏。上节课程学习了HTTPS和HTTP协议的各自优势&#xff0c;本节课程进入到请求…

《Linux从小白到高手》综合应用篇:详解Linux系统调优之服务器硬件优化

List item 本篇介绍Linux服务器硬件调优。硬件调优主要包括CPU、内存、磁盘、网络等关键硬件组。 1. CPU优化 选择适合的CPU&#xff1a; –根据应用需求选择多核、高频的CPU&#xff0c;以满足高并发和计算密集型任务的需求。CPU缓存优化&#xff1a; –确保CPU缓存&#x…

前端学习-css的元素显示模式(十五)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 什么是元素显示模式 块元素 常见的块元素 块元素的特点 注意 行内元素 行内元素的特点 注意 行内块元素 行内块元素的特点 元素显示模式的转换 语法格…

SpringBoot高校学科竞赛平台:性能优化与实践

3系统分析 3.1可行性分析 通过对本高校学科竞赛平台实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本高校学科竞赛平台采用SSM框架&#xff0c;JAVA作为开发语…

Caffeine Cache解析(一):接口设计与TinyLFU

Caffeine is a high performance Java caching library providing a near optimal hit rate. 自动加载value, 支持异步加载基于size的eviction&#xff1a;frequency and recency基于时间的过期策略&#xff1a;last access or last write异步更新valuekey支持weak referenceva…