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数据库

  1. 查看数据库各表的存储大小

    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;
  2. 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;
    ​```
  3. 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数据库的更多相关文章

  1. zabbix数据库mariadb从服务器迁移到云mysql数据库的操作

    zabbix数据库mariadb从本机迁移到云mysql数据库的操作 1.将zabbix数据库导出,并导入到云数据库中 由于数据库较大,如果直接使用shell会话中断会导致数据库导出或者导入失败,使用 ...

  2. 15.5 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表

    点击返回:自学Zabbix之路 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表  1. Actions表 actions表记录了当触发器触发时,需要采用的动作. 2.Aler ...

  3. zabbix数据库分表的实现

    前提条件是主从同步操作完成(主从同步的前提是两个数据库表结构必须一样) 先看一下mysql配置文件 vi /usr/local/mysql/my.cnf 配置内容:------------------ ...

  4. 自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表、Hosts_groups表、Interface表

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表.Hosts_grou ...

  5. 自学Zabbix之路15.2 Zabbix数据库表结构简单解析-Items表

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.2 Zabbix数据库表结构简单解析-Items表 Items表记录了i ...

  6. 自学Zabbix之路15.3 Zabbix数据库表结构简单解析-Triggers表、Applications表、 Mapplings表

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.3 Zabbix数据库表结构简单解析-Triggers表.Applica ...

  7. 自学Zabbix之路15.4 Zabbix数据库表结构简单解析-Expressions表、Media表、 Events表

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.4 Zabbix数据库表结构简单解析-Expressions表.Medi ...

  8. 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表  1. Actions表 ...

  9. zabbix 数据库分表操作

    近期zabbix数据库占用的io高,在页面查看图形很慢,而且数据表已经很大,将采用把数据库的数据目录移到新的磁盘,将几个大表进行分表操作 一.数据迁移: 1.数据同步到新的磁盘上,先停止mysql(不 ...

  10. zabbix数据库需要多大硬盘?我告诉你

    本次案例:100台服务器,每台服务器有30个监控项,每个监控项60秒刷新一次,需要多大的硬盘呢?众所周知,zabbix基本都是通过web配置,这些配置数据也是存放到数据库里的,但是它对硬盘容量的要求基 ...

随机推荐

  1. MindSpore梯度进阶操作

    技术背景 在MindSpore深度学习框架中,我们可以使用mindspore.grad对函数式编程的函数直接计算自动微分,也可以使用mindspore.ops.GradOperation求解Cell类 ...

  2. pageoffice6 在线编辑 word 文件时禁止拷贝到外部

    有些特殊情况下,希望用户可以在线编辑Word文档,也允许用户拷贝本地电脑或网络上的资料到Word文档中进行编辑,但是不希望用户把在线Word文档中的内容另存到本地或选择并拷贝出去,此时只是禁用另存.禁 ...

  3. java rgb转hsv

    public static double[] toHSV(int r, int g, int b) { Color color = new Color(r, g, b); float[] hsv = ...

  4. NumPy 正态分布与 Seaborn 可视化指南

    正态分布(高斯分布) 简介 正态分布(也称为高斯分布)是一种非常重要的概率分布,它描述了许多自然和人为现象的数据分布情况.正态分布的形状呈钟形,其峰值位于平均值处,两侧对称下降. 特征 正态分布可以用 ...

  5. 【c++】const 限定符

    #include <iostream> int main() { using namespace std; cout << "Hello World!\n" ...

  6. C# Datagridview combox列 初始化颜色

    DataGridView 初始化完成后,在combox里显示颜色,如这样: DataGridView 注册 cellPainting事件: private void m_dataGridView_Ce ...

  7. Flyway简单迁移失败问题

    因为我是初学者,所以问题 只是一些细节性问题,现在看看V开头创建数据库迁移时的错误 问题一: flyway 命名规则问题这个绝对的细节中的细节问题 问题一解决方案: 命名规则:一定要遵循flyway的 ...

  8. C# wpf 使用GDI+实现截屏

    wpf截屏系列第一章 使用GDI+实现截屏(本章)第二章 使用DockPanel制作截屏框第三章 实现截屏框实时截屏第四章 使用ffmpeg命令行实现录屏 文章目录wpf截屏系列前言一.引用Syste ...

  9. Visual Studio 智能代码插件:CodeGeeX

    前言 在软件开发领域,高效的编程助手一直是提升开发者效率和质量的关键.随着人工智能技术的不断发展,智能编程助手逐渐成为开发者们不可或缺的工具.其中,CodeGeeX作为一款专为Visual Studi ...

  10. docker基础使用和资源限制

    为什么使用容器 docker设计目标: 提供简单的应用打包工具 开发人员和运维人员职责逻辑分离 多环境保持一致性 轻量级 kubernetes设计目标: 集中管理所有容器 资源编排 资源调度 弹性伸缩 ...