→软件包

mkdir /soft/

cd /soft

♦下载以下软件包

nginx-1.14.2.tar.gz

wget http://nginx.org/download/nginx-1.14.2.tar.gz 

mysql-boost-5.7.25.tar.gz

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.25.tar.gz

boost_1_59_0.tar.gz

wget https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

php-7.1.27.tar.gz

wget http://cn2.php.net/get/php-7.1.27.tar.gz/from/this/mirror

zabbix-4.0.5.tar.gz

wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/4.0.5/zabbix-4.0.5.tar.gz/download 

mv download zabbix-4.0.5.tar.gz

→解压

tar zxvf nginx-1.14.2.tar.gz
tar zxvf mysql-boost-5.7.25.tar.gz
tar zxvf boost_1_59_0.tar.gz
tar zxvf php-7.1.27.tar.gz
tar zxvf zabbix-4.0.5.tar.gz

→安装nginx

♦安装依赖

yum install -y  pcre* openssl*

♦预编译

[root@localhost nginx-1.14.2]# ./configure --prefix=/usr/local/nginx \
> --with-http_ssl_module \
> --with-http_stub_status_module \
> --with-pcre \

♦编译安装

[root@localhost nginx-1.14.2]# make && make install

♦创建网站目录

[root@localhost nginx-1.14.2]# mkdir /var/www/html -p

→安装PHP

♦安装依赖

[root@localhost nginx-1.14.2]# yum install -y gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel php-mysql php-bcmath

♦ 预编译

[root@localhost php-7.1.27]# ./configure --prefix=/usr/local/php \
> --with-config-file-path=/usr/local/php/etc \
> --with-bz2 \
> --with-curl \
> --enable-ftp \
> --enable-sockets \
> --disable-ipv6 \
> --with-gd \
> --with-jpeg-dir=/usr/local \
> --with-png-dir=/usr/local \
> --with-freetype-dir=/usr/local \
> --enable-gd-native-ttf \
> --with-iconv-dir=/usr/local \
> --enable-mbstring \
> --enable-calendar \
> --with-gettext --with-libxml-dir=/usr/local \
> --with-zlib \
> --with-pdo-mysql=mysqlnd \
> --with-mysqli=mysqlnd \
> --with-mysql=mysqlnd \
> --enable-dom \
> --enable-xml \
> --enable-fpm \
> --with-libdir=lib64

♦编译安装

[root@localhost php-7.1.27]# make && make install

♦配置PHP

cp php.ini-production /usr/local/php/etc/php.ini
[root@localhost php-7.1.27]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

♦参数配置PHP(zabbix硬性要求)

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

max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone = Asia/Shanghai

♦启动php-fpm

[root@localhost php-7.1.27]# mv /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
[root@localhost php-7.1.27]# /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini

♦确定php启动

[root@localhost php-7.1.27]# ss -lnt | grep 9000
LISTEN 0 128 127.0.0.1:9000 *:*

♦配置nginx配置文件,供测试php,以及zabbix页面配置

[root@localhost php-7.1.27]# cat /usr/local/nginx/conf/nginx.conf

#user  nobody;
worker_processes 1; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; events {
worker_connections 1024;
} http {
include mime.types;
default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout 0;
keepalive_timeout 65; #gzip on; server {
listen 80;
server_name localhost; #charset koi8-r; access_log /usr/local/nginx/logs/host.access.log main;
root /var/www/html;
index index.htm index.html index.php;
location / {
try_files $uri $uri/ /index.php?$args;
} location ~ .*\.(php)?$ {
expires -1s;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
} #error_page 404 /404.html; # redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
} # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#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_params;
#} # deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
} # another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias; # location / {
# root html;
# index index.html index.htm;
# }
#} # HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost; # ssl_certificate cert.pem;
# ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on; # location / {
# root html;
# index index.html index.htm;
# }
#} }

♦检测一下,并启动

[root@localhost php-7.1.27]# /usr/local/nginx/sbin/nginx -t
[root@localhost php-7.1.27]# /usr/local/nginx/sbin/nginx

♦测试php页面

[root@localhost php-7.1.27]# cat /var/www/html/info.php
<?php
phpinfo();
?>

♦测试php

[root@localhost php-7.1.27]# curl 127.0.0.1/info.php

→安装mysql数据库

♦安装前准备

[root@localhost soft]# rpm -qa | grep mariadb

[root@localhost soft]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

[root@localhost soft]# rpm -e --nodeps mariadb-5.5.60-1.el7_5.x86_64

[root@localhost soft]# rpm -e --nodeps mariadb-server-5.5.60-1.el7_5.x86_64

♦安装依赖

yum -y install gcc gcc-c++ ncurses ncurses-devel cmake bison

♦将解压的boost_1_59_0移动

mv boost_1_59_0 /usr/local/boost

♦新建MySQL用户和用户组,创建/data/mysql 目录存放mysql数据

[root@localhost soft]# groupadd -r mysql && useradd -r -g mysql -s /sbin/nologin -M mysql
[root@localhost soft]# mkdir -pv /data/mysql

♦预编译

[root@node03 mysql-5.7.17]#
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock\
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BOOST=/usr/local/boost \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \

♦编译安装

[root@localhost mysql-5.7.25]# make && make install

♦目录授权

[root@localhost mysql-5.7.25]# chown -R root.mysql /usr/local/mysql/
[root@localhost mysql-5.7.25]# chown -R root.mysql /data/mysql/

♦初始化数据库

[root@localhost mysql-5.7.25]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

♦配置mysql配置文件

[root@localhost mysql-5.7.25]# cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
port=3306
socket=/data/mysql/mysql.sock

♦启动mysql服务

[root@localhost mysql-5.7.25]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
[root@localhost mysql-5.7.25]# ss -lnt | grep 3306
LISTEN 0 80 :::3306 :::*

♦连接数据库出现问题

[root@localhost mysql-5.7.25]# /usr/local/mysql/bin/mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data/mysql/mysql.sock-DENABLED_LOCAL_INFILE=1' (2)

解决方法

[root@localhost mysql-5.7.25]# ln -s /data/mysql/mysql.sock /data/mysql/mysql.sock-DENABLED_LOCAL_INFILE=1

♦改mysql密码

[root@localhost mysql-5.7.25]# /usr/local/mysql/bin/mysql -u root -p
Enter password: mysql> alter user 'root'@'localhost' identified by 'WWW.1.com';
mysql> flush privileges;

♦设置源码mysql服务开机自启动

[root@localhost mysql-5.7.25]# vim /etc/rc.d/rc.local
/usr/local/mysql/bin/mysqld_safe --user=mysql & [root@localhost mysql-5.7.25]# chmod a+x /etc/rc.d/rc.local

♦复制mysql服务启动脚本

[root@localhost mysql-5.7.25]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql-5.7.25]# chmod a+x /etc/init.d/mysqld
[root@localhost mysql-5.7.25]# chkconfig --add mysqld
[root@localhost mysql-5.7.25]# chkconfig --level 2345 mysqld on

♦测试启动脚本状态

[root@localhost mysql-5.7.25]# service mysqld status
SUCCESS! MySQL running (20020)
[root@localhost mysql-5.7.25]# service mysqld stop
Shutting down MySQL.2019-03-16T17:02:05.231334Z mysqld_safe mysqld from pid file /data/mysql/localhost.localdomain.pid ended
SUCCESS!
[1]+ 完成 /usr/local/mysql/bin/mysqld_safe --user=mysql
[root@localhost mysql-5.7.25]# ss -lnt | grep 3306
[root@localhost mysql-5.7.25]# service mysqld start
Starting MySQL. SUCCESS!
[root@localhost mysql-5.7.25]# ss -lnt | grep 3306
LISTEN 0 80 :::3306 :::*

安装zabbix

♦创建账号,为安全起见禁止登录

[root@localhost mysql]# groupadd zabbix
[root@localhost mysql]# useradd -g zabbix -s /sbin/nologin zabbix

♦预编译

[root@localhost zabbix-4.0.5]# ./configure  --prefix=/usr/local/zabbix \
> --enable-server \
> --with-mysql \
> --enable-agent

♦报错

configure: error: MySQL library not found

解决

yum install mysql-devel -y

♦报错

configure: error: Unable to use libevent (libevent check failed)

解决

yum install libevent-devel  -y

♦出现下面说明预编译成功

***********************************************************
* Now run 'make install' *
* *
* Thank you for using Zabbix! *
* <http://www.zabbix.com> *
***********************************************************

♦编译安装

make && make install

♦将php脚本复制到html目录下

[root@localhost zabbix-4.0.5]# cp -r frontends/php/* /var/www/html/

♦该权限

[root@localhost zabbix-4.0.5]# chmod -R 777 /var/www/html

♦登陆数据库并创建zabbix库,跟zabbix用户

mysql> create database zabbix character set utf8;
mysql> flush privileges;

♦按顺序导入zabbix自带的数据库

[root@localhost zabbix-4.0.5]# /usr/local/mysql/bin/mysql -uroot -pWWW.1.com zabbix < database/mysql/schema.sql
[root@localhost zabbix-4.0.5]# /usr/local/mysql/bin/mysql -uroot -pWWW.1.com zabbix < database/mysql/images.sql
[root@localhost zabbix-4.0.5]# /usr/local/mysql/bin/mysql -uroot -pWWW.1.com zabbix < database/mysql/data.sql

♦配置zabbix

LogFile=/tmp/zabbix_server.log
DBName=zabbix
DBUser=root
DBPassword=WWW.1.com
DBSocket=/data/mysql/mysql.sock
DBPort=3306
Timeout=4
LogSlowQueries=3000

♦zabbix页面配置报错

解决方法

cd /soft/php-7.1.27/ext/mysqli
/usr/local/php/bin/phpize
./configure --prefix=/usr/local/mysqli --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
make
make install
vim /usr/local/php/etc/php.ini
extension=mysqli.so killall php-fpm
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini
[root@localhost bcmath]# /usr/local/php/bin/phize
[root@localhost bcmath]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@localhost bcmath]# make
[root@localhost bcmath]# make install
[root@localhost bcmath]# vim /usr/local/php/etc/php.ini
extension=bcmath.so [root@localhost bcmath]# killall php-fpm
[root@localhost bcmath]# /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini

zabbix,php,nginx,mysql源码安装 神仙操作的更多相关文章

  1. 部署zabbix监控平台(源码安装)

    案例:部署Zabbix监控平台 1 问题 本案例要求部署一台Zabbix监控服务器,一台被监控主机,为进一步执行具体的监控任务做准备: 安装LNMP环境 源码安装Zabbix 安装监控端主机,修改基本 ...

  2. maridb\mysql 源码安装,以10.1.26版本为例

    mysql 源码安装(mariadb 10.1.26) 1.环境部署 1 安装cmake 源码安装三部曲或者yum install cmake2安装依赖包yum install -y ncurses- ...

  3. Nginx unit 源码安装初体验

    Nginx unit 源码安装初体验 上次介绍了从yum的安装方法(https://www.cnblogs.com/wang-li/p/9684040.html),这次将介绍源码安装,目前最新版为1. ...

  4. Linux MySQL源码安装缺少ncurses-devel包

    在Red Hat Enterprise Linux Server release 5.7 上用源码安装MySQL-5.6.23时,遇到了" remove CMakeCache.txt and ...

  5. 编译nginx的源码安装subs_filter模块

    使用nginx的反向代理功能搭建nuget镜像服务器时,需要针对官方nuget服务器的响应内容进行字符串替换,比如将www.nuget.org替换为镜像服务器的主机名,将https://替换为http ...

  6. nginx 的源码安装

    安装nginx之前要做的准备工作有:安装如下库 (1)gzip模块需要 zlib 库 (2)rewrite模块需要 pcre 库 (3)ssl 功能需要openssl库 还有一种简单的方法就是 yum ...

  7. mysql源码安装(5.1)

    下载mysql源码包并解压.wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.73.tar.gztar -zxvf mysql-5 ...

  8. Linux(CentOS或RadHat)下MySQL源码安装

    安装环境: CentOS6.3 64位 软件: Mysql-5.6 所需包: gcc/g++ :MySQL 5.6开始,需要使用g++进行编译.cmake  :MySQL 5.5开始,使用cmake进 ...

  9. NFS, web,负载均衡,Nginx yum 源码安装

    作业一:nginx服务1.二进制安装nginx 2.作为web服务修改配置文件 3.让配置生效,验证配置  [root@localhost ~]# systemctl stop firewalld.s ...

随机推荐

  1. Scrum到底是个神马玩意儿

    从前有一种非常火爆的体育运动,对阵双方各派出11位猛男,在宽阔的草皮球场内争抢一颗可怜的小皮球.哪方能够通过团队协作拿到皮球,并且运送到对方场地的特定位置即得分. 没错,你没有走错片场,快到超级碗里来 ...

  2. 微服务SpringCloud—Config Server对称加密

    配置内容的加解密在Git仓库中明文存储配置属性的.很多场景下,对于某些敏感的配置内容(例如数据库账号.密码等),应当加密存储. Config对称加解密1.安装JCE默认情况下我们的JRE自带了JCE, ...

  3. 爬虫入门(三)——动态网页爬取:爬取pexel上的图片

    Pexel上有大量精美的图片,没事总想看看有什么好看的自己保存到电脑里可能会很有用 但是一个一个保存当然太麻烦了 所以不如我们写个爬虫吧(๑•̀ㅂ•́)و✧ 一开始学习爬虫的时候希望爬取pexel上的 ...

  4. [三]java8 函数式编程Stream 概念深入理解 Stream 运行原理 Stream设计思路

    Stream的概念定义   官方文档是永远的圣经~     表格内容来自https://docs.oracle.com/javase/8/docs/api/   Package java.util.s ...

  5. 巨杉数据库入选Gartner数据库报告,中国首家入选厂商

    SequoiaDB巨杉数据库入选Gartner数据库报告,成为国内首批入选Gartner报告的数据库厂商. “SequoiaDB, 总部位于中国广州,是一款分布式.多模型(Multimodel).高可 ...

  6. Mongodb副本集--Out of memory: Kill process 37325 (mongod)

    1.Mongodb副本集--Out of memory: Kill process 37325 (mongod) 场景描述: 恢复一个22TB数据的mongodb实例的时候. 将备用结点加入mongo ...

  7. 消息队列中间件(二)使用 ActiveMQ

    ActiveMQ 介绍 Active MQ 是由 Apache 出品的一款流行的功能强大的开源消息中间件,它速度快,支持跨语言的客户端,具有易于使用的企业集成模式和许多的高级功能,同时完全支持 JSM ...

  8. [PHP] 简单多进程并发

    企邮搬家进程管理逻辑,经过简化后的功能实现 <?php //守护进程 umask(0); //把文件掩码清0 if (pcntl_fork() != 0){ //是父进程,父进程退出 exit( ...

  9. Java高阶语法---Volatile

    背景:听说Volatile Java高阶语法亦是挺进BAT的必经之路. Volatile: volatile同步机制又涉及Java内存模型中的可见性.原子性和有序性,恶补基础一波. 可见性: 可见性简 ...

  10. Linux基础学习(全)

    使用的Linux发行版本为Redhat 1.Linux(RedHat)基础学习-命令行使用入门 2.Linux(RedHat)基础学习-文件寻址与管理 3.Linux(RadHat)基础学习-vim编 ...