zabbix数据库
1. 安装MySQL 5.6
操作系统为CentOS7 X64
MySQL文件下载地址 http://dev.mysql.com/downloads/repo/yum/
卸载已存在文件
rpm -qa|grep mariadb|xargs rpm -e --nodeps # 卸载CentOS 7自带的mariadb
rpm -qa|grep -i mariadb #查看是否卸载完毕
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
安装yum仓库文件
/etc/yum.repos.d/ 目录下新增 mysql-community.repo 、mysql-community-source.repo
yum localinstall mysql-community-release-el7-5.noarch.rpm
安装MySQL软件包
yum install mysql-community-server
2. 安装完成后无需启动
确保/var/lib/mysql/目录为空,因为会重新初始化
3. 创建目录
mkdir -p /var/lib/mysql/innodb_file/
mkdir -p /var/lib/mysql/data/
mkdir -p /var/lib/mysql/log/error_log
mkdir -p /var/lib/mysql/log/relay_log
mkdir -p /var/lib/mysql/log/general_log/
mkdir -p /var/lib/mysql/log/binary_log
mkdir -p /var/lib/mysql/log/slow_query_log/
chown -R mysql:mysql /var/lib/mysql
mysql_install_db --datadir=/var/lib/mysql/data/ --user=mysql
4. 初始化数据库
mysql_install_db --datadir=/var/lib/mysql/data/ --user=mysql
5.配置mysql参数
git clone https://github.com/zabbix-book/MySQL_conf.git
拷贝my.cnf至server端/etc/my.cnf中 编辑参数/etc/my.cnf中的内存参数 innodb_buffer_pool_size=20G
cp my.cnf-5.6.md /etc/my.cnf
6. 启动 mysql 服务
systemctl start mysqld.service #启动 mysql
systemctl enable mysqld.service #设置 mysql 开机启动
zabbix数据库
查看数据库各表的存储大小
mysql> SELECT table_name AS "Tables",
-> round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB"
-> FROM information_schema.TABLES
-> WHERE table_schema = 'zabbix'
-> ORDER BY (data_length + index_length) DESC;
zabbix数据库表分区脚本
# 下载分区脚本
git clone https://github.com/zabbix-book/partitiontables_zabbix.git # configration
Before run this scripts,maybe you should modify it
修改脚本中的账号信息,如下所示
```
# MySQL connect information
ZABBIX_USER="zabbix"
ZABBIX_PWD="zabbix"
ZABBIX_DB="zabbix"
ZABBIX_PORT="3306"
ZABBIX_HOST="127.0.0.1"
MYSQL_BIN="mysql"
# How days you will keep history days,default is 30 历史数据存储保留时间
HISTORY_DAYS=30
# How months you will keep trend days,default is 12 趋势数据存储保留时间
TREND_MONTHS=12 # 脚本添加执行权限
chmod +x partitiontables_zabbix.sh # 运行脚本
sh partitiontables_zabbix.sh & # 为防止网络中断引起脚本运行中断而造成数据库故障,添加“&”去后台执行 # 验证脚本是否执行成功
mysql -uzabbix -pzabbix zabbix
show create table history\G; # 当看到PARTITION的时候,说明分区已创建成功。 # 设置定时任务每天创建新分区
crontab -e
1 0 * * * /usr/sbin/partitiontables_zabbix.sh # 运行此脚本的时候,Zabbix库有存量数据,此时,建议清空想表的数据,然后再执行此脚本
```
mysql> use zabbix;
mysql> truncate table history;
mysql> optimize table history;
mysql> truncate table history_str;
mysql> optimize table history_str;
mysql> truncate table history_uint;
mysql> optimize table history_uint;
mysql> truncate table trends;
mysql> optimize table trends;
mysql> truncate table trends_uint;
mysql> optimize table trends_uint;
```
zabbix数据库备份
```
备份zabbix数据库防止数据库因意外损坏导致所有配置丢失,这里对单表进行备份,而非全部备份。排除以下表(原因是这几张表的数据为监控的历史数据,非配置类数据)
```
# history* 、trends*、Acknowledges、Alters、Auditlog、Events、service_alarms
# 获取备份脚本
git clone https://github.com/zabbix-book/zabbix-mysql-backup.git
# 添加执行权限
chmod 700 /usr/sbin/zabbix_mysqldump.sh
# 脚本使用
1)备份数据
/usr/sbin/zabbix_mysqldump.sh mysqldump
2)恢复数据
/usr/sbin/zabbix_mysqldump.sh mysqlimport
# 设置定时任务每天备份
0 3 * * * /usr/sbin/zabbix_mysqldump.sh mysqldump
zabbix数据库的更多相关文章
- zabbix数据库mariadb从服务器迁移到云mysql数据库的操作
zabbix数据库mariadb从本机迁移到云mysql数据库的操作 1.将zabbix数据库导出,并导入到云数据库中 由于数据库较大,如果直接使用shell会话中断会导致数据库导出或者导入失败,使用 ...
- 15.5 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表
点击返回:自学Zabbix之路 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表 1. Actions表 actions表记录了当触发器触发时,需要采用的动作. 2.Aler ...
- zabbix数据库分表的实现
前提条件是主从同步操作完成(主从同步的前提是两个数据库表结构必须一样) 先看一下mysql配置文件 vi /usr/local/mysql/my.cnf 配置内容:------------------ ...
- 自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表、Hosts_groups表、Interface表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表.Hosts_grou ...
- 自学Zabbix之路15.2 Zabbix数据库表结构简单解析-Items表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.2 Zabbix数据库表结构简单解析-Items表 Items表记录了i ...
- 自学Zabbix之路15.3 Zabbix数据库表结构简单解析-Triggers表、Applications表、 Mapplings表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.3 Zabbix数据库表结构简单解析-Triggers表.Applica ...
- 自学Zabbix之路15.4 Zabbix数据库表结构简单解析-Expressions表、Media表、 Events表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.4 Zabbix数据库表结构简单解析-Expressions表.Medi ...
- 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表 1. Actions表 ...
- zabbix 数据库分表操作
近期zabbix数据库占用的io高,在页面查看图形很慢,而且数据表已经很大,将采用把数据库的数据目录移到新的磁盘,将几个大表进行分表操作 一.数据迁移: 1.数据同步到新的磁盘上,先停止mysql(不 ...
- zabbix数据库需要多大硬盘?我告诉你
本次案例:100台服务器,每台服务器有30个监控项,每个监控项60秒刷新一次,需要多大的硬盘呢?众所周知,zabbix基本都是通过web配置,这些配置数据也是存放到数据库里的,但是它对硬盘容量的要求基 ...
随机推荐
- [FAQ] JS 实现暂停(睡眠) Sleep 与 倒计时 ?
想要暂停/睡眠一秒,可以参考使用以下方式: async () => { await (new Promise((resolve) => setTimeout(resolve, 1000)) ...
- Win32 使用 CreateProcess 方法让任务管理器里的命令行不显示应用文件路径
本文记录一个 Win32 的有趣行为,调用 CreateProcess 方法传入特别的参数,可以让任务管理器里的命令行不显示应用文件路径 开始之前,先看看下面这张有趣的图片 可以看到我编写的 Svca ...
- Nginx 简单应用(Windows os)
实际问题如下: 我的电脑上有vm虚拟机,我有两个网络,一个叫137,一个叫102 ,我现在vm的网络是102的网络(137不允许被vm使用),但是别人都是137的网络,如何让137的局域网访问我的vm ...
- 一个在线下载地图XYZ瓦片的网站实现
1. 什么是XYZ瓦片 XYZ瓦片是一种在线地图数据格式,常见的地图底图如Google.OpenStreetMap 等互联网的瓦片地图服务,都是XYZ瓦片,严格来说是ZXY规范的地图瓦片 ZXY规范的 ...
- 八、Dataphin
Dataphin是阿里巴巴集团OneData数据治理方法论内部实践的云化输出,一站式提供数据采.建.管.用全生命周期的大数据能力,以助力企业显著提升数据治理水平,构建质量可靠.消费便捷.生产安全经济的 ...
- Go:基于 MongoDB 构建 REST API — Fiber 版
本文主要在于带着大家完成一个基本的 CRUD 工作,让大家熟悉 Fiber + MongoDB 构建 RESTful API,熟悉工作流程.同时了解相关库的使用. 本文的完整代码见:https://g ...
- 深入理解Django:中间件与信号处理的艺术
title: 深入理解Django:中间件与信号处理的艺术 date: 2024/5/9 18:41:21 updated: 2024/5/9 18:41:21 categories: 后端开发 ta ...
- C语言:将txt文件的单词导入链表&&删除链表重复单词
文章目录 前言 主要分为两个实现部分,按个人需求浏览 首先明确几个任务 先过一遍如何操作的流程. ①全局变量和结构体代码部分 ②实现:将文件单词导入链表 a: 寻找txt文件中最长单词的函数 b: 导 ...
- Hello Laravel! 准备
Hello Laravel! 准备 目录 Hello Laravel! 准备 什么是 Laravel? 为什么选择 Laravel? 优雅的语法 丰富的功能 强大的社区支持 安全性 易于扩展 Lara ...
- salesforce零基础学习(一百三十八)零碎知识点小总结(十)
本篇参考: https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_5level_SOQLqueries.htm& ...