Zabbix 使用同一ODBC监控不同版本MySQL

news2024/10/6 20:28:59

一、ODBC介绍

  ODBC是Open Database Connect 即开发数据库互连的简称,它是一个用于访问数据库的统一界面标准。ODBC引入一个公共接口以解决不同数据库潜在的不一致性,从而很好的保证了基于数据库系统的应用程序的相对独立性。ODBC 概念由 Microsoft 开发,后来移植到其他平台。

      Zabbix 可以查询 ODBC 支持的任何数据库。Zabbix 不直接连接到数据库,而是使用 ODBC 接口和在 ODBC 中设置的驱动程序。此功能允许更有效地监控不同数据库的多种用途——例如,检查特定的数据库队列、使用统计信息等。

二、数据库创建监控用户

CREATE USER 'zbxmon'@'%' IDENTIFIED BY 'Zabbix1234$';
GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbxmon'@'%';

 注:此处以Mysql8.0为例。不同Mysql数据库版本授权语句可能存在差异,请根据版本自行百度。

三、安装数据库驱动

      相信大家使用过ODBC监控过Mysql数据库的人都清楚Mysql根据各个版本情况驱动可能存在上下不兼容的情况。那么此情况可能会导致部分不兼容的设备监控失效。当然不会根据Proxy部署不同的驱动文件进而增加维护难度。如何使用相同的驱动进行适配。如下所示:

1、安装 unixODBC

  下载unixODBC文件如下:

   http://www.unixodbc.org/

   编译unixODBC

tar  -zvxf unixODBC-2.3.11.tar.gzcd unixODBC-2.3.11./configure --prefix=/opt/unixODBC-2.3.11 --includedir=/usr/include --libdir=/usr/lib -bindir=/usr/bin --sysconfdir=/etcmake && make install

2、odbcinst -j 输出配置信息

安装完成后如出现错误如下:

odbcinst: error while loading shared libraries: libodbcinst.so.2: cannot open shared object file: No such file or directory

解决办法

共享库文件安装到了/lib或/usr/lib目录下, 执行一下ldconfig命令

ldconfig命令的用途, 主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下, 搜索出可共享的动态链接库(格式如lib*.so*), 进而创建出动态装入程序(ld.so)所需的连接和缓存文件。

3、安装mariadb驱动

tar -xvzf mariadb-connector-odbc-3.1.4-ga-rhel7-x86_64.tar.gz   ##提前下载mariadb驱动

sudo install lib64/libmaodbc.so /usr/lib64/

4、配置驱动

odbcinst.ini配置文件用于ODBC 数据库驱动程序配置信息

vim /etc/odbcinst.ini
[MySql]

Description=ODBC for MySQL

Driver=/usr/lib64/libmaodbc.so

Setup=/usr/lib64/libodbcmyS.so

FileUsage=1

odbc.ini配置文件用于数据源配置信息

vim  /etc/odbc.ini

[mysql]

Description=MySQL test database

Driver=MySQL

Server=127.0.0.1

User=zbxmon

Password=Zabbix1234$

Port=3306

Database=zabbix

5、验证 ODBC 连接 

isql -v mysql

四、服务端驱动说明

1、需要使用unixODBC功能,编译Zabbix/Proxy安装时需要添加--with-unixodbc 参数,系统需要安装如下依赖:

yum -y install unixODBC unixODBC-devel

2、修改服务端配置文件

Zabbix 使用ODBC 监控数据库性能需要使用 odbc poller进程,使用StartODBCPollers参数激活 ODBC 轮询器如下:

StartODBCPollers=3

五、关联监控模板

此处不做过多展示简单说明一下。添加主机并关联“MySQL by ODBC”监控模板,修改{$MYSQL.DNS}宏变量,用户密码宏变量可根据自身设置在ODBC配置文件中配置或在ODBC配置文件中去掉使用前端宏变量配置即可。

博主可能不能及时回答疑问,如技术问题欢迎加入交流。

博主具有丰富的模板资源和开发能力及项目落地管理经验分享欢迎加入交流

微信号:king_songax

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【AI视野·今日Robot 机器人论文速览 第五十三期】Thu, 12 Oct 2023

AI视野今日CS.Robotics 机器人学论文速览 Thu, 12 Oct 2023 Totally 25 papers 👉上期速览✈更多精彩请移步主页 Daily Robotics Papers Pixel State Value Network for Combined Prediction and Planning in Interactive Environments Authors Sascha Rosbach, St…

Python学习记录——이십이 Bytes和字符集编码

文章目录 根据ANSI标准,各国对于各国的文字有自己的编写方法,中国发展的就是gbk编码,国际上有个unicode码,适用于所有语言,依据这个标准出来utf-8标准。像ascii,我们见到的就是8个bit位,总共存放…

SOP8封装 NV400F的语音芯片在电动车充电桩的应用

充电桩作为电动汽车的配套设施,为其提供充电服务,功能类似加油站里的加油机。一般安装在公共建筑和居民小区内供电动车车主使用。随着国家对节能减排和保护环境越来也重视。在城市中,新能源的电动车得到了空前的发展,电动汽车零污…

二十二、【形状工具组】

文章目录 基础图形多边形直线工具自定义形状工具 形状工具组画的图形是矢量图形,在放大和缩小后像素不变看起来不会模糊,位图和矢量图形的存储方式不一样,位图的存储方式是按各个像素的数据来进行存储的,而矢量图形是根据算法来进…

蓝桥杯——递增序列和货物摆放

文章目录 前言一、递增序列二、货物摆放总结 前言 多多练习 一、递增序列 解题思路&#xff1a; 代码实现&#xff1a; 当然我的这个代码也不是很正确 发这道题就是向大家集思广益&#xff0c;我的就只作为一个参考啦~ #include <stdio.h> #include <stdlib.h>…

【数据结构】排序--插入排序(希尔排序)

目录 一 基本思想 二 直接插入排序 三 希尔排序 一 基本思想 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中&#xff0c;直到所有的记录插入完为 止&#xff0c;得到一个新的有序序列 。 实际中我们玩扑克牌时&#xff0c;就用了插入排序的思想 二…

前端 js导出excel

一、导出效果 二、导出代码 download() {let data [{name: aaaa,age: 10,address: 广东,phone: 1,wechart: 1},{name: bbbb,age: 11,address: 广西,phone: 2,wechart: 2},{name: cccc,age: 12,address: 山东,phone: 3,wechart: 3}]if (!data.length) {this.$Message.warnin…

内存泄漏检测组件的实现

通过宏定义来包装 malloc 和 free 函数&#xff0c;以便在每次内存分配和释放时记录相关信息&#xff0c;如文件名和行号。这使得你能够跟踪哪个函数在哪里分配和释放内存。 #define _GNU_SOURCE #include <dlfcn.h>#include <stdio.h> #include <stdlib.h>…

LaTeX 公式与表格绘制技巧

LaTeX 公式与绘图技巧公式基本可以分为 单一公式单一编号单一公式按行编号单一公式多个子编号单一公式部分子编号分段公式现在给出各自的代码单一公式单一编号 公式1&#xff1a;equationaligned\begin{equation}\begin{aligned}a&bc\\b&a2\\c&b-3\end{aligned}\en…

Windows terminal美化工具Oh-My-Posh

1、前言 windows电脑上的终端工具Window terminal大家应该都不陌生&#xff0c;这里介绍一款美化工具&#xff0c;从此告别windows terminal的黑与白。 2、Oh-My-Posh Oh My Posh 是一个命令行提示工具&#xff0c;通常用于美化和自定义终端提示符。它允许用户创建自定义的终…

Windows:Arduino IDE 开发环境配置【保姆级】

参考官网&#xff1a;Arduino - Home Arduino是一款简单易学且功能丰富的开源平台&#xff0c;包含硬件部分&#xff08;各种型号的Arduino开发板&#xff09;和软件部分&#xff08;Arduino IDE)以及广大爱好者和专业人员共同搭建和维护的互联网社区和资源。 Arduino IDE软件…

【玩机】如何修改iPhone充电提示音!最详细简单保姆级教程~ 学费了可替换任意音频做你的专属充电提示音!——后厂村路灯

其实方法很简单&#xff0c;利用快捷指令&#xff0c;获得base64 位的音频文本&#xff0c;然后再充电时播放即可。 视频教程 【玩机】如何修改iPhone充电提示音&#xff01;最详细简单保姆级教程 具体操作如下&#xff1a; 1.首先&#xff0c;网上找到需要设定的音频&#xf…

深度学习中的一些概念

回归问题 在深度学习中&#xff0c;回归问题是一种机器学习任务&#xff0c;其目标是预测连续数值的输出。与分类问题不同&#xff0c;其中目标是将输入数据分为不同的类别&#xff0c;回归问题的目标是根据输入数据来预测一个连续的数值。回归问题通常涉及到建立一个数学模型…

mysql面试题53:一个6亿的表a,一个3亿的表b,通过外间tid关联,你如何最快的查询出满足条件的第50000到第50200中的这200条数据记录

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:一个6亿的表a,一个3亿的表b,通过外间tid关联,你如何最快的查询出满足条件的第50000到第50200中的这200条数据记录 可以按照以下步骤进行: 确保…

rust: function

///file: nestd.rs ///ide: RustRover 233.8264.22 /// /// /// /***自定义函数*/ pub fn function() {println!("called my::nested::function()"); }#[allow(dead_code)] fn private_function() {println!("called my::nested::private_function()"); }/…

vue-rouer 路由

安装/配置: //进入项目目录:(在搭建项目的时候安装了) cnpm install vue-router --save旧版路由 需要自己配置 //项目中载入,一般在main.js中载入:import VueRouter from vue-routerVue.use(VueRouter)let router new VueRouter({}) //其中配置路径和地址//在Vue中引入:n…

YB4058是一款经济高效、完全集成的高输入电压单电池锂离子电池充电器

高输入电压充电器支持I2C和OVP保护 概述&#xff1a; YB4058是一款经济高效、完全集成的高输入电压单电池锂离子电池充电器。充电器使用了锂离子电池所需的CC/CV充电曲线。充电器可接受高达27V的输入电压&#xff0c;但当输入电压超过OVP时禁用阈值&#xff0c;通常为6.8V&am…

【神印王座】悲啸洞穴中隐藏的人有多强?实力不如魔神皇,靠一绝招魔神皇都怕

Hello,小伙伴们&#xff0c;我是小郑继续为大家深度解析国漫资讯。 神印王座动漫现在已经更到龙皓晨等人深入魔族地界抵达悲啸洞穴的阶段。而刚到悲啸洞穴龙皓晨等人就被悲啸声所阻&#xff0c;龙皓晨生怕队友进入其中后有人会死亡&#xff0c;所以决定自己一个人进去探索。而小…

树模型(2)随机森林

随机森林属于集成学习中bagging算法的延展&#xff0c;所以先来介绍一下集成学习。 **集成学习&#xff1a;**对于训练数据集&#xff0c;我们通过训练一系列个体学习器&#xff0c;并通过一定的结合策略将它们组合起来&#xff0c;形成一个强有力的学习器 **个体学习器&…

cartographer中的扫描匹配

cartographer中的扫描匹配 cartographer中使用了两种扫描匹配方法&#xff1a;CSM&#xff08;相关性扫描匹配方法&#xff08;暴力匹配&#xff09;&#xff09;、ceres优化匹配方法 CSM可以简单地理解为暴力搜索&#xff0c;即每一个激光数据与子图里的每一个位姿进行匹配&…