/usr/local/zabbix-3.2.6

/usr/local/php-5.6.3

/usr/local/mysql-5.7.26

安装mysql

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup  #先把yum源换成国内的阿里云镜像源(当然不换也可以),先备份一下原来的源镜像文件,以免出错后可以恢复

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  #下载新的CentOS-Base.repo 到/etc/yum.repos.d/

更改/etc/yum.repos.d/CentOS-Media.repo使其为不生效:

enabled=0

运行yum makecache生成缓存:

yum clean all
yum makecache
yum update

安装MySQL 5.7版本,官网http://dev.mysql.com/downloads/repo/yum/

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

可以看到已经有了,并且5.7版本已经启用,可以直接安装:

root@192 yum.repos.d]# yum repolist all | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community 启用: 24
mysql-connectors-community-source MySQL Connectors Community - Sourc 禁用
mysql-tools-community/x86_64 MySQL Tools Community 启用: 38
mysql-tools-community-source MySQL Tools Community - Source 禁用
mysql-tools-preview/x86_64 MySQL Tools Preview 禁用
mysql-tools-preview-source MySQL Tools Preview - Source 禁用
mysql55-community/x86_64 MySQL 5.5 Community Server 禁用
mysql55-community-source MySQL 5.5 Community Server - Sourc 禁用
mysql56-community/x86_64 MySQL 5.6 Community Server 禁用
mysql56-community-source MySQL 5.6 Community Server - Sourc 禁用
mysql57-community/x86_64 MySQL 5.7 Community Server 启用: 146
mysql57-community-source MySQL 5.7 Community Server - Sourc 禁用
mysql80-community/x86_64 MySQL 8.0 Community Server 禁用
mysql80-community-source MySQL 8.0 Community Server - Sourc 禁用
[root@192 yum.repos.d]#

如果没有开启,或者你想要选择需要的版本进行安装,修改 /etc/yum.repos.d/mysql-community.repo,选择需要的版本把enable改为1即可,其它的改为0:

修改好后查看可用的安装版本:

[root@192 yum.repos.d]# yum repolist enabled | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community 24
mysql-tools-community/x86_64 MySQL Tools Community 38
mysql57-community/x86_64 MySQL 5.7 Community Server 146

不用犹豫,开始安装吧!

yum -y install mysql-community-server

开始启动mysql:

service mysqld start
Redirecting to /bin/systemctl start mysqld.service

开机启动设置:

systemctl enable mysqld
systemctl daemon-reload

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:

[root@192 yum.repos.d]# grep 'temporary password' /var/log/mysqld.log
2016-10-23T14:51:45.705458Z 1 [Note] A temporary password is generated for root@localhost: a&sqr7dou7N_
mysql -uroot -p

修改root密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Wang****992!';

修改不了密码是因为这个版本增加了安全级别插件,可以把安全策略去掉

vim /etc/my.cnf
添加一下字段值

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
validate_password=off #停止密码策略

flush privileges; #刷新系统授权表
systemctl restart mysqld  #重启

添加远程登录用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我们添加一个新的帐户:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'evai'@'%' IDENTIFIED BY '@evai2016' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

这样远程就可以用账户名为evai,密码为@evai2016来登录数据库了,运行 select host, user from mysql.user 查看下:

mysql> select host,user from mysql.user;

关联【mysql】

cd /usr/local/zabbix-3.2.6/database/mysql   #进入mysql数据库创建脚本目录

ls #列出文件,可以看到有schema.sql、images.sql、data.sql这三个文件

mysql -u root -p  #进入数据库密码Wang****992!

create database zabbix character set utf8; 

alter user 'zabbix'@'localhost' identified by 'Wang***992!';  #新建账户

grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'Wang****992!' with grant option; #允许账户zabbix能从本机连接到数据库zabbix

flush privileges; #刷新系统授权表

use zabbix  #进入数据库

source /usr/local/zabbix-3.2.6/database/mysql/schema.sql  #导入脚本文件到zabbix数据库

source /usr/local/zabbix-3.2.6/database/mysql/images.sql  #导入脚本文件到zabbix数据库

source /usr/local/zabbix-3.2.6/database/mysql/data.sql  #导入脚本文件到zabbix数据库

exit #退出

cd /usr/lib64/mysql  #32位系统为/usr/lib/mysql

ln -s libmysqlclient_r.so.18.1.0 libmysqlclient_r.so #添加软连接
ln -s libmysqlclient.so.18.1.0 libmysqlclient.so #添加软连接

  

安装【zabbix】

yum install net-snmp-devel curl curl-devel mysql-devel  #安装依赖包

cd /usr/local/src #这是软件包下载目录

tar zxvf zabbix-3.2.6.tar.gz #解压

cd /usr/local/src/zabbix-3.2.6/  #进入zabbix安装目录
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config  #选择安装目录/usr/local/zabbix,并关联mysql
make #编译 make install #安装 ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系统软连接 ln -s /usr/local/zabbix/bin/* /usr/local/bin/   #添加系统软连接 groupadd zabbix #创建用户组zabbix
useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中

  

#find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel

#确认服务对应端口

添加zabbix服务对应的端口

vi /etc/services #编辑,在最后添加以下代码

# Zabbix

zabbix-agent 10050/tcp # Zabbix Agent

zabbix-agent 10050/udp # Zabbix Agent

zabbix-trapper 10051/tcp # Zabbix Trapper

zabbix-trapper 10051/udp # Zabbix Trapper

:wq! #保存退出

  

修改zabbix配置文件(服务端)

vim /usr/local/zabbix/etc/zabbix_server.conf

DBName=zabbix #数据库名称

DBUser=zabbix #数据库用户名,或者root,在web页面填写zabbix信息时要保持一致,否则报错

DBPassword=Wangz****! #数据库密码,可以修改简单密码,要进入数据库修改密码策略

ListenIP=127.0.0.1 #数据库ip地址
ListenPort=10051  #这个必填 AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录 :wq! #保存退出

  

修改zabbix配置文件(客户端)

vim /usr/local/zabbix/etc/zabbix_agentd.conf

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

UnsafeUserParameters=1 #启用自定义key

:wq! #保存退出

  

修改zabbix脚本权限和启动项

cp /usr/local/zabbix-3.2.6/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服务端 添加开机启动脚本
cp /usr/local/zabbix-3.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客户端 添加开机启动脚本
chmod +x /etc/rc.d/init.d/zabbix_server #服务端 #添加脚本执行权限
chmod +x /etc/rc.d/init.d/zabbix_agentd #客户端 #添加脚本执行权限
chkconfig zabbix_server on #服务端 #添加开机启动
chkconfig zabbix_agentd on #客户端 #添加开机启动 chmod +x /etc/rc.d/init.d/zabbix_server #添加脚本执行权限 chmod +x /etc/rc.d/init.d/zabbix_agentd #添加脚本执行权限 chkconfig zabbix_server on #添加开机启动 chkconfig zabbix_agentd on #添加开机启动

  

#修改zabbix开机启动脚本中的zabbix安装目录

vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件

BASEDIR=/usr/local/zabbix/ #zabbix安装目录

:wq! #保存退出

 

#编辑客户端配置文件 

vi /etc/rc.d/init.d/zabbix_agentd

BASEDIR=/usr/local/zabbix/ #zabbix安装目录

:wq! #保存退出
#修改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
always_populate_raw_post_data = -1
#注释以下
;mbstring.func_overload = 2
:wq!

#若bcmath检查项failed,需要执行此步骤:

动态安装模块bcmath

cd /usr/local/src/php-5.6.30/ext/bcmath/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/bcmath.so /usr/local/src/php-5.6.30/ext/bcmath/
vim /usr/local/php/etc/php.ini
extension=bcmath.so
killall php-fpm
ps -ef | grep php-fpm

rm -rf /usr/local/php/var/run/php-fpm.pid
  /usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf -c /usr/local/php/etc/php.ini  #这样才能够让zabbix重新检测到php.ini配置文件

service php-fpm start

#若zabbix报错 PHP gettext off Warning:

动态安装模块gettext

cd /usr/local/src/php-5.6.30/ext/gettext/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/gettext.so /usr/local/src/php-5.6.30/ext/gettext/
vim /usr/local/php/etc/php.ini
#最后一行粘贴
extension=gettext
:wq!
killall php-fpm
ps -ef | grep php-fpm
rm -rf /usr/local/php/var/run/php-fpm.pid
/usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf -c /usr/local/php/etc/php.ini  #这样才能够让zabbix重新检测到php.ini配置文件 service php-fpm start

#若报错Databaseerror:

The frontend does not match Zabbix database. Current database version (mandatory/optional): 3000000/3020000. Required mandatory version: 3020000. Contact your system administrator.

进入数据库:
mysql> show databases;
mysql> use zabbix;
mysql> update dbversion set mandatory=3020000;
mysql> flush privileges;

重新刷新web页面zabbix即可

#web页面填写zabbix读写数据库信息时:

DBHost=192.168.1.12(localhost)
DBPort=0(默认端口3306)
DBName=zabbix(数据库名)
DBUser=root(数据库用户)
DBPassword=Wangz****!
  • Database type
    MySQL
  • Database server
    localhost
  • Database port
    default
  • Database name
    zabbix
  • Database user
    root
  • Database password
  • Zabbix server
    localhost
  • Zabbix server port
    10051
  • Zabbix server name
    zabbix-server

#若报错Unable to create the configuration file:

设置 web服务器用户在zabbix网页的conf/目录具有写权限,配置文件会自动保存。

chmod -R 777 /usr/local/nginx/html/zabbix/conf/

问题:Failed to restart zabbix-agent.service: Unit not found.
问题:Unit zabbix-server.service could not be found.
问题:/usr/local/etc/zabbix_agentd.conf.d: [2] No such file or directory
解决:Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
问题:linux上 zabbix-server服务启动了但是没有开启10051端口
解决:cat /tmp/zabbix_server.log #登录mysql ,set password=password("123456");  #在配置文件中把端口注释那一项去掉,

#检查web页面初始化设置时候的php设置。

find / -name zabbix.conf.php (Linux下的全局搜索命令)

vim /usr/local/nginx/html/zabbix/conf/zabbix.conf.php

$DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = 'localhost';
$DB['PORT'] = '0';
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'root';
$DB['PASSWORD'] = 'Wangzq';

上面的信息与数据库信息也要同步

因为一开始zabbix初始化IP设置是另一个IP

查看php初始化配置是否一致

[root@nginx ~]# netstat -lntp | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 38838/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 96922/zabbix_server
[root@nginx ~]# ps -ef | grep zabbix
... ... ... ... ...
... ... ... ... ...
以上起来就OK

#配置web站点关联nginx

cd /usr/local/src/zabbix-3.2.6

cp -r /usr/local/src/zabbix-3.2.6/frontends/php /usr/local/nginx/html/zabbix

chown www.www -R /usr/local/nginx/html/zabbix

备注:/usr/local/nginx/html为Nginx默认站点目录 www为Nginx运行账户

service zabbix_server start #启动zabbix服务端

service zabbix_agentd start #启动zabbix客户端

  

#修改php配置文件参数关联php

1、vi /usr/local/php/etc/php.ini #编辑修改

post_max_size =16M

max_execution_time =300

max_input_time =300

date.timezone = "Asia/Shanghai"

:wq! #保存退出

2、vi /usr/local/php/etc/php-fpm.conf #编辑修改

request_terminate_timeout = 300

:wq! #保存退出

  

service php-fpm reload #重启php-fpm # 命令失败就添加一下代码

#添加一下启动脚本代码

vim /etc/init.d/php-fpm  #添加开机启动

#! /bin/sh
# Comments to support chkconfig on CentOS
# chkconfig: 2345 65 37
#
set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="php-fpm daemon"
NAME=php-fpm
DAEMON=/usr/local/php/sbin/$NAME CONFIGFILE=/usr/local/php/etc/php-fpm.conf
PIDFILE=/usr/local/php/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME # Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0 d_start() {
$DAEMON -y $CONFIGFILE || echo -n " already running"
} d_stop() {
kill -QUIT `cat $PIDFILE` || echo -n " not running"
} d_reload() {
kill -HUP `cat $PIDFILE` || echo -n " can't reload"
} case "$1" in
start)
echo -n "Starting $DESC is success"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC is success"
d_stop
echo "."
;;
reload)
echo -n "Reloading $DESC configuration..."
d_reload
echo "reloaded."
;;
restart)
echo -n "Restarting $DESC is success"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac 

chmod -R 777 /etc/init.d/php-fpm  #赋予最大权限

/etc/init.d/php-fpm reload  #重启php

#或者这样重启

ps aux|grep php-fpm #查看php-fpm的master进程号
kill -USR2 42891 #重启

五、安装web

在浏览器中打开:

http://192.168.1.12/zabbix/setup.php

#zabbix忘记登陆账号密码

[root@nginx zabbix]# mysql -uroot -p -e "select * from zabbix.users\G"
Enter password:
*************************** 1. row ***************************
userid: 1
alias: Admin
name: Zabbix
surname: Administrator
passwd: 5fce1b3e34b520afeffb37ce08c7cd66
url:
autologin: 1
autologout: 0
lang: en_GB
refresh: 30
type: 3
theme: default
attempt_failed: 0
attempt_ip:
attempt_clock: 0
rows_per_page: 50
*************************** 2. row ***************************
userid: 2
alias: guest
name:
surname:
passwd: d41d8cd98f00b204e9800998ecf8427e
url:
autologin: 0
autologout: 900
lang: en_GB
refresh: 30
type: 1
theme: default
attempt_failed: 0
attempt_ip:
attempt_clock: 0
rows_per_page: 50

#通过mysql修改zabbix密码

[root@abcdocker ~]# mysql -uroot -p
由于密码是md5加密的,我们可以查看默认的zabbix密码的md5
mysql> use zabbix;
mysql> update users set passwd='5fce1b3e34b520afeffb37ce08c7cd66' where userid='1';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
解释:5fce1b3e34b520afeffb37ce08c7cd66 = zabbix
因为zabbix默认密码就是zabbix

登录 Web

用户名:Admin
密码:zabbix

安装zabbix-agent(客户端)

还是使用zabbix-3.2.6.tar.gz这个包进行安装,与server共用安装目录,不会冲突
cd /usr/local/src/zabbix-3.2.6/
./configure --prefix=/usr/local/zabbix --enable-agent
make
make install
ln -s /usr/local/zabbix/sbin/zabbix_agent /usr/local/sbin/
source /etc/profile #刷新下,不然可能执行zabbix_agent命令不生效
2、修改zabbix_agentd.conf配置文件,指定server IP,等信息。
vim /usr/local/zabbix/etc/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix-agent-12 3、将zabbix_agentd启动脚本cp至/etc/init.d/中,zabbix_agentd默认监听10050端口
cd zabbix-3.2.6/
cp ./misc/init.d/tru64/zabbix_agentd /etc/init.d/
chmod o+x /etc/init.d/zabbix_agentd
4、若安装客户端时,需要创建zabbix用户,server已创建
useradd -M -s /sbin/nologin zabbix
5、启动agent(默认也是用zabbix用户启动)
/etc/init.d/zabbix_agentd start
或:service zabbix_agentd start
6、查看是否启动
ps -ef|grep zabbix_agentd

关联安装 mysql ,zabbix , nginx, php的更多相关文章

  1. Docker安装Mysql和Nginx

    1. 序言 将应用容器化更方便于管理,昨天辛辛苦苦安装在宿主机上的,今天狠心重置服务器,学下docker练练手. 2. Get start 2.1 安装Docker 公司的云用的是ubuntu,我自己 ...

  2. ubuntu 下编译安装 mysql php nginx 及常见错误 (持续添加)

    mysql mysql 可以使用mysql 官方提供的apt源进行安装 参见这里 php 安装前先安装一些常见库 sudo apt-get install libpng16-16 libpng16-d ...

  3. Docker安装mysql、nginx、redis、tomcat

    拉取mysql 5.7官方镜像 docker pull mysql:5.7 启动容器 docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PAS ...

  4. 新服务器搭建-总结: 下载nginx,jdk8,docker-compose编排(安装mysql,redis) 附安装

    三明SEO: 前言 如题, 公司新买了一条4核16G的服务器, 不得不重新搭建环境, 只能一一重来, 做个记录 1.nginx : 手动安装 2.jdk8: 手动安装 3. 安装docker 及doc ...

  5. .net安装包自动安装Mysql数据库

    原文:.net安装包自动安装Mysql数据库 在制作.Net安装包的时候,如果项目有用到数据库,怎么能够把数据库打包安装呢?网上已经有很多自动安装Sql Server数据库的例子,但是自动安装mysq ...

  6. 编译安装mysql和zabbix,xtrabackup数据库备份

    xtrabackup参考文章 https://www.cnblogs.com/linuxk/p/9372990.html 下载5.7的mysql 社区版包 https://cdn.mysql.com/ ...

  7. nginx+php+mysql+zabbix服务器安装

    好久没有接触监控类的软件了,今天抽空搭建了下 首先系统环境 zabbix-server-1    centos7.2 本次所需的第三方软件包 以下软件包通过官网下载 zabbix-3.0.3.tar. ...

  8. CentOS 7 用户怎样安装 LNMP(Nginx+PHP+MySQL)

    关于 Nginx (发音 “engine x”)这是一款免费.开源.高效的 HTTP 服务器,Nginx是以稳定著称,丰富的功能,结构简单,低资源消耗.本教程演示如何在CentOS 6.5服务器(适用 ...

  9. 在CentOS中快速安装PHP,MySQL,Nginx和phpMyAdmin

    安装环境 yum install -y autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig zlib-devel vim 安装p ...

随机推荐

  1. Java基础系列 - 查找数组的最大值和最小值

    package com.test6; public class test5 { public static void main(String[] args) { int[] arr = {1, 2, ...

  2. stdu1309(不老的传说)

    题目链接:http://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Index/problemdetail/pid/1309.html 不老的传说问题 Ti ...

  3. pimpleFoam求解器 vs simpleFoam求解器 vs pisoFoam求解器 vs icoFoam

    翻译自:CFD-online 帖子地址:http://www.cfd-online.com/Forums/openfoam-solving/68072-pimplefoam-vs-simplefoam ...

  4. ICEM-一种三维Y型网格

    ​原视频下载地址:https://yunpan.cn/cLHD9ewat8v9a  访问密码 0f0f

  5. JS-七大查找算法

    顺序查找 二分查找 插值查找 斐波那契查找 树表查找 分块查找 哈希查找 查找定义:根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录).查找算法分类:1)静态查找和动态查找:注 ...

  6. ubuntu dnsmasq

    /var/run/NetworkManager/resolv.conf 而你真实的dns服务器地址,是被这个服务管理维护着的/ local process -> local dnsmasq -& ...

  7. php手记之03-tp5渲染视图

    // 渲染视图 模块@文件/文件名 // return view('index@index/test'); // return view('index@test/test'); // return $ ...

  8. Kafka、RabbitMQ、RocketMQ、ActiveMQ消息中间件的对比--多年生产经验实践总结

    引言 分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦.现在开源的消息中间件有很多,前段时间我们自家的产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注. ...

  9. Googletest - Google Testing and Mocking Framework

    Googletest - Google Testing and Mocking Framework https://github.com/google/googletest

  10. Java并发包异步执行器CompletableFuture

    前言 CompletableFuture是对Future的一种强有力的扩展,Future只能通过轮询isDone()方法或者调用get()阻塞等待获取一个异步任务的结果,才能继续执行下一步,当我们执行 ...