Prometheus(三)部署Mariadb数据库

2024-06-07 18:38

本文主要是介绍Prometheus(三)部署Mariadb数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1)安装数据库:

[root@localhost ~] yum -y install mariadb-server
[root@localhost ~] systemctl restart mariadb

2)创建数据库授权用户

[root@localhost ~] mysql
MariaDB [(none)]> create user 'mysqld_exporter'@'localhost' identified by '123456';
MariaDB [(none)]> grant process, replication client, select on *.* to 'mysqld_exporter'@'localhost';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> select Host,User from mysql.user;

3)安装mysqld_exporter

[root@localhost opt] ll
total 6956
-rw-r--r--. 1 root root 7121565 May 18  2020 mysqld_exporter-0.12.1.linux-amd64.tar.gz
[root@localhost opt] tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz
[root@localhost opt] cp -r mysqld_exporter-0.12.1.linux-amd64 /usr/local/mysqld_exporter

4)配置数据库认证

[root@localhost ~] cd /usr/local/mysqld_exporter/
[root@localhost mysqld_exporter] vi .mysqld_exporter.cnf 
[client]
user=mysqld_exporter
password=123456

5)启动mysqld_exporter

[root@localhost mysqld_exporter] ./mysqld_exporter --config.my-cnf=".mysqld_exporter.cnf"
[root@localhost ~] netstat -tlunp|grep 9104
tcp6       0      0 :::9104          :::*              LISTEN      12070/./mysqld_expo

在这里插入图片描述
6)创建系统服务启动配置文件mysqld_exporter.service

[root@localhost ~] vi /usr/lib/systemd/system/mysqld_exporter.service
[Unit]
Description=Prometheus MySQL daemon
After=network.target[Service]
User=root
Group=root
Type=simple
Restart=always
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter \--config.my-cnf=/usr/local/mysqld_exporter/.mysqld_exporter.cnf \--collect.global_status \--collect.auto_increment.columns \--collect.info_schema.processlist \--collect.binlog_size \--collect.info_schema.tablestats \--collect.global_variables \--collect.info_schema.innodb_metrics \--collect.info_schema.query_response_time \--collect.info_schema.userstats \--collect.info_schema.tables \--collect.perf_schema.tablelocks \--collect.perf_schema.file_events \--collect.perf_schema.eventswaits \--collect.perf_schema.indexiowaits \--collect.perf_schema.tableiowaits \--collect.slave_status \--web.listen-address=0.0.0.0:9104[Install]
WantedBy=multi-user.target
[root@localhost ~] systemctl daemon-reload
[root@localhost ~] systemctl start mysqld_exporter

启动成功
在这里插入图片描述

7)与prometheus集成

[root@localhost ~] vi /usr/local/prometheus/prometheus.yml- job_name: 'mysqld_exporter'scrape_interval: 10sstatic_configs:- targets: ['192.168.1.20:9104']
#添加一个job
[root@localhost ~] systemctl restart prometheus

在这里插入图片描述
8)web测试
访问:http://IP:9090
1、查询吞吐量
监控任何系统时,我们的主要关注点是确保系统工作有效完成,数据库运行时完成大量的查询操作,所有监控优先级应该确保MySQL按照预期执行查询。MySQL有一个名为Questions的内部计数器,MySQL术语为“服务器状态变量”。对于客户端应用程序发送的所有语句,该计数器都是递增的。
MariaDB [(none)]> show global status like “Questions”;
±--------------±------+
| Variable_name | Value |
±--------------±------+
| Questions | 513 |
±--------------±------+
数学命令行:mysql_global_status_questions
在这里插入图片描述

2、查询执行性能
关于查询执行性能表现方面,可以使用MySQL提供的Slow_queries计数器,每当查询的执行时间超过long_query_time参数指定的秒数时,计数器就会增加。默认阀值为10秒。
MariaDB [(none)]> show global status like “Slow_queries”;
±--------------±------+
| Variable_name | Value |
±--------------±------+
| Slow_queries | 0 |
±--------------±------+
数学命令行:mysql_global_status_slow_queries

3、连接情况
为了防止MySQL服务器的过载运行,数据库管理员需要根据业务进行预评估,以便现在客户端连接MySQL的数量。可以在my.cnf文件中配置最大连接数max_connections=512。
MariaDB [(none)]> show variables like “max_connections”;
±----------------±------+
| Variable_name | Value |
±----------------±------+
| max_connections | 512 |
±----------------±------+
数学命令行:mysql_global_variables_max_connections
在这里插入图片描述

4、缓存池使用情况
当MySQL默认的存储引擎是InnoDB时,会使用缓存池来缓存表和索引的数据。可以在my.cnf中配置innodb_buffer_pool_size=128M。这是InnoDB最重要的参数,主要作用是缓存innodb表和索引、数据和插入数据,默认值为128M。
MariaDB [(none)]> show global status like “Innodb_buffer_pool_reads”;
±-------------------------±------+
| Variable_name | Value |
±-------------------------±------+
| Innodb_buffer_pool_reads | 144 |
±-------------------------±------+
数学命令行:mysql_global_status_innodb_buffer_pool_reads

这篇关于Prometheus(三)部署Mariadb数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1039981

相关文章

UnrealScriptIDE调试环境部署

先安装vs2010   再安装VSIsoShell.exe, 下载地址 https://pan.baidu.com/s/10kPNUuDGTbWXbz7Nos-1WA       fd3t   最后安装unside,下载地址 https://archive.codeplex.com/?p=uside  安装中间有一步选择Binary文件夹要选对路径。   安装好以后,启动 UDKDe

关于如何更好管理好数据库的一点思考

本文尝试从数据库设计理论、ER图简介、性能优化、避免过度设计及权限管理方面进行思考阐述。 一、数据库范式 以下通过详细的示例说明数据库范式的概念,将逐步规范化一个例子,逐级说明每个范式的要求和变换过程。 示例:学生课程登记系统 初始表格如下: 学生ID学生姓名课程ID课程名称教师教师办公室1张三101数学王老师101室2李四102英语李老师102室3王五101数学王老师101室4赵六103物理陈

数据库期末复习知识点

A卷 1. 选择题(30') 2. 判断范式(10') 判断到第三范式 3. 程序填空(20') 4. 分析填空(15') 5. 写SQL(25') 5'一题 恶性 B卷 1. 单选(30') 2. 填空 (20') 3. 程序填空(20') 4. 写SQL(30') 知识点 第一章 数据库管理系统(DBMS)  主要功能 数据定义功能 (DDL, 数据定义语

给数据库的表添加字段

周五有一个需求是这样的: 原来数据库有一个表B,现在需要添加一个字段C,我把代码中增删改查部分进行了修改, 比如insert中也添入了字段C。 但没有考虑到一个问题,数据库的兼容性。因为之前的版本已经投入使用了,再升级的话,需要进行兼容处理,当时脑子都蒙了,转不过来,后来同事解决了这个问题。 现在想想,思路就是,把数据库的表结构存入文件中,如xxx.sql 实时更新该文件: CREAT

SQL Server中,查询数据库中有多少个表,以及数据库其余类型数据统计查询

sqlserver查询数据库中有多少个表 sql server 数表:select count(1) from sysobjects where xtype='U'数视图:select count(1) from sysobjects where xtype='V'数存储过程select count(1) from sysobjects where xtype='P' SE

SQL Server中,添加数据库到AlwaysOn高可用性组条件

1、将数据添加到AlwaysOn高可用性组,需要满足以下条件: 2、更多具体AlwaysOn设置,参考:https://msdn.microsoft.com/zh-cn/library/windows/apps/ff878487(v=sql.120).aspx 注:上述资源来自MSDN。

SQL Server中,用Restore DataBase把数据库还原到指定的路径

restore database 数据库名 from disk='备份文件路径' with move '数据库文件名' to '数据库文件放置路径', move '日志文件名' to '日志文件存放置路径' Go 如: restore database EaseWe from disk='H:\EaseWe.bak' with move 'Ease

数据库原理与安全复习笔记(未完待续)

1 概念 产生与发展:人工管理阶段 → \to → 文件系统阶段 → \to → 数据库系统阶段。 数据库系统特点:数据的管理者(DBMS);数据结构化;数据共享性高,冗余度低,易于扩充;数据独立性高。DBMS 对数据的控制功能:数据的安全性保护;数据的完整性检查;并发控制;数据库恢复。 数据库技术研究领域:数据库管理系统软件的研发;数据库设计;数据库理论。数据模型要素 数据结构:描述数据库

MySQL数据库(四):视图和索引

在数据库管理中,视图和索引是两种关键工具,它们各自发挥独特的作用以优化数据查询和管理。视图通过简化复杂查询、提高数据安全性和提供数据抽象,帮助用户轻松访问数据。而索引则通过加速查询、确保数据唯一性以及优化排序和分组操作,显著提升数据库性能。理解和合理运用这两者,对数据库系统的高效运行至关重要。 目录 一、视图概念(面试) 二、视图的作用(面试) 三、视图的创建和使用 3.1

青龙面板部署通用教程,含服务器、路由器、X86等部署方法

1. 拉取镜像/更新镜像 docker pull whyour/qinglong:latest 2. 删除镜像 docker rmi whyour/qinglong:latest 3. 启动容器 普通服务器 docker run -dit \-v $PWD/ql/config:/ql/config \-v $PWD/ql/log:/ql/log \-v $PWD/ql/db: