数据库监控及结合zabbix运维与询查管理记要(mysql,sql server,oralce)

mysql的最大连接数默认是100, 最大可以达到16384

在Windows下常用的有两种方式修改最大连接数。

第一种:命令行修改。

>mysql -u user -p password

mysql>show variables like 'max_connections';(查可以看当前的最大连接数)

msyql>set global max_connections=1000;(设置最大连接数为1000)

mysql>exit

这种方式只在mysql当前有效,一旦mysql重启,又会恢复到初始状态。

第二种:修改配置文件。

修改MySQL配置文件my.ini 或 my.cnf的参数max_connections,将其改为max_connections=1000,然后重启MySQL即可。但是有一点最难的就是 my.ini这个文件在哪找。通常有两种可能,一个是在安装目录下(这是比较理想的情况),另一种是在数据文件的目录下,安装的时候如果没有人为改变目录的话,一般就在C:/ProgramData/MySQL的目录下。

与连接数相关的几个参数:

在修改最大连接数的时候会有这样一个疑问—这个值是不是越大越好,或者设置为多大才合适?这个参数的大小要综合很多因素来考虑,比如使用的平台所支持的线程库数量(windows只能支持到2048)、服务器的配置(特别是内存大小)、每个连接占用资源(内存和负载)的多少、系统需要的响应时间等。可以在 global或session范围内修改这个参数。连接数的增加会带来很多连锁反应,需要在实际中避免由此引发的负面影响。

 

sqlserver数据库最大连接数默认是0。(0 表示不限制,但不表示无限)

select @@max_connections(数据库允许的最大连接数)

它总是返回32767,实际上它表示user connections 最大可设置为多少。由于它的最大值是32767,那么user connections 为0 时,最大连接数也就是32767 了,并不是无限。

 

Oracle数据库默认的最大连接数是:150

select value from v$parameter where name ='processes'(数据库允许的最大连接数)

Oracle的连接数理论上是没有上限的,设置多少都可以。实际上与服务器的配置有关.

修改Oracle最大连接数的方法

  1、以sysdba身份登陆PL/SQL

  2、查询目前连接数

     show parameter processes;

  3、更改系统连接数

     alter system set processes=1000 scope=spfile;

  4、创建pfile

     create pfile from spfile;

 5、重启Oracle服务或重启Oracle服务器

-----------------------------------------------------------------------------------------------

Zabbix监控SQL Server数据库

1、使用模板监控SQLSERVER

1.1、安装Zabbix Agent

使用4.0版本的Agent客户端

下载链接:https://assets.zabbix.com/downloads/4.0.9/zabbix_agent-4.0.9-win-amd64-openssl.msi

1.2、选择监控模板

1. 到官方下载模版

下载地址:https://share.zabbix.com/databases/microsoft-sql-server/template-ms-sql-2012

2. 修改agentd.conf

修改zabbix_agent.conf文件

添加下边这行到配置文件最后
UserParameter=sqldatabasename.discovery,powershell -NoProfile -ExecutionPolicy Bypass -File C:\zabbix\scripts\SQLBaseName_To_Zabbix.ps1

将powershell脚本放在目录下

将SQLBaseName_To_Zabbix.ps1脚本放在C:\zabbix\scripts\目录下

3. .重启agentd

4. 导入模板文件

导入模板MS SQL 2012.xml

重启zabbix agent

重启客户端zabbix agent服务

导入模板文件

导入模板MS SQL 2012.xml

主机关联模板

注:SQLServer性能计数器:

1、Access Methods(访问方法) 用于监视访问数据库中的逻辑页的方法。

Forwarded Records/sec

每秒通过正向记录指针提取的记录数。

Page splits/sec(页分割/秒)

由于数据更新操作引起的每秒页分割的数量。

Workfiles Created/sec:

每秒创建的工作文件数。 例如,工作文件可用于存储哈希联接和哈希聚合的临时结果。

Worktables Created/sec

每秒创建的工作表数。 例如,工作表可用于存储查询假脱机、LOB 变量、XML 变量和游标的临时结果。

Full Scans/sec(全表扫描/秒)

每秒不受限的完全扫描数。可以是基本表扫描或全索引扫描。如果这个计数器显示的值比1或2高,应该分析你的查询以确定是否确实需要全表扫描,以及S Q L查询是否可以被优化。

2、Buffer Manager(缓冲器管理器):

 

  • 存储数据页的内存。

  • 用于监视 SQL Server 读取和写入数据库页时的物理 I/O 的计数器。

  • 用于借助高速非易失性存储(如固态硬盘 (SSD))扩展缓冲区高速缓存的缓冲池扩展。

    监视 SQL Server 使用的内存和计数器有助于确定:

  • 是否存在物理内存不足的瓶颈。 如果 SQL Server 无法将经常访问的数据存储在缓存中,则必须从磁盘检索数据。

  • 是否可以通过添加更多内存或增加数据缓存或 SQL Server 内部结构的可用内存来提高查询性能。

  • SQL Server 需要从磁盘读取数据的频率。 与其他操作(例如内存访问)相比,物理 I/O 会消耗大量时间。 尽可能减少物理 I/O 可以提高查询性能。

 

Buffer Cache Hit Ratio

在“缓冲池”(Buffer Cache/Buffer Pool)中没有被读过的页占整个缓冲池中所有页的比率。可在高速缓存中找到而不需要从磁盘中读取的页的百分比。这一比率是高速缓存命中总数除以自 SQL Server 实例启动后对高速缓存的查找总数。经过很长时间后,这一比率的变化很小。由于从高速缓存中读数据比从磁盘中读数据的开销要小得多,一般希望这一数值高一些。通常,可以通过增加 SQL Server 可用的内存数量来提高高速缓存命中率。计数器值依应用程序而定,但比率最好为90% 或更高。增加内存直到这一数值持续高于90%,表示90% 以上的数据请求可以从数据缓冲区中获得所需数据。

  

Lazy Writes/sec(惰性写/秒)

惰性写进程每秒写的缓冲区的数量。值最好为0。

Page Reads/sec:

每秒发出的物理数据库页读取数。这一统计信息显示的是在所有数据库间的物理页读取总数。由于物理 I/O 的开销大,可以通过使用更大的数据高速缓存、智能索引、更高效的查询或者改变数据库设计等方法,使开销减到最小。

Page Writes/sec (.写的页/秒)

每秒执行的物理数据库写的页数。

3、Locks(锁) 提供有关个别资源类型上的 SQL Server 锁的信息。

 

  锁加在 SQL Server 资源上(如在一个事务中进 行的行读取或修改),以防止多个事务并发使用资源。例如,如果一个排它 (X) 锁被一个事务加在某一表的某一行上,在这个锁被释放前,其它事务都不可以修改这一行。尽可能少使用锁可提高并发性,从而改善性能。可以同时监视 Locks 对象的多个实例,每个实例代表一个资源类型上的一个锁。

Number of Deadlocks/sec

(死锁的数量/秒) 导致死锁的锁请求的数量

Average Wait Time(ms)

(平均等待时间(毫秒)) 线程等待某种类型的锁的平均等待时间

Lock Requests/sec

(锁请求/秒) 每秒钟某种类型的锁请求的数量。

Lock Timeouts/sec

每秒超时的锁请求数,包括对 NOWAIT 锁的请求。

--------------------------------------------------------------------------------------------------------------------------------------------------------

zabbix 对 Oracle 监控

orabbix是一个用来监控oracle数据库性能的zabbix插件工具,通过安装在被监控服务器上客户端上收集数据并传给zabbix服务器端,然后通过调用图形显示。

一、安装 jdk

二、创建 Oracle监控账号

#创建监控用户zabbix语句

CREATE  USER zabbix IDENTIFIED BYzabbix DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;

GRANT  ALTER SESSION TO zabbix;

GRANT CREATE SESSION TO zabbix;

GRANT CONNECT TO zabbix;

ALTER USER zabbix DEFAULT ROLE ALL;

GRANT SELECT ON V_$INSTANCE TO zabbix;

GRANT SELECT ON DBA_USERS TO zabbix;

GRANT SELECT ON V_$LOG_HISTORY TO zabbix;

GRANT SELECT ON V_$LOG TO zabbix;

GRANT SELECT ON V_$PARAMETER TO zabbix;

GRANT SELECT ON SYS.DBA_AUDIT_SESSION TO zabbix;

GRANT SELECT ON V_$LOCK TO zabbix;

GRANT SELECT ON DBA_REGISTRY TO zabbix;

GRANT SELECT ON V_$LIBRARYCACHE TO zabbix;

GRANT SELECT ON V_$SYSSTAT TO zabbix;

GRANT SELECT ON V_$PARAMETER TO zabbix;

GRANT SELECT ON V_$LATCH TO zabbix;

GRANT SELECT ON V_$PGASTAT TO zabbix;

GRANT SELECT ON V_$SGASTAT TO zabbix;

GRANT SELECT ON V_$LIBRARYCACHE TO zabbix;

GRANT SELECT ON V_$PROCESS TO zabbix;

GRANT SELECT ON DBA_DATA_FILES TO zabbix;

GRANT SELECT ON DBA_TEMP_FILES TO zabbix;

GRANT SELECT ON DBA_FREE_SPACE TO zabbix;

GRANT SELECT ON V_$SYSTEM_EVENT TO zabbix;

GRANT SELECT ON V_$locked_object TO zabbix;

GRANT SELECT ON dba_objects TO zabbix;

GRANT SELECT ON dba_tablespaces TO zabbix;

GRANT SELECT ON v_$SESSION TO zabbix;

 

#如果是Oracle11g版,需要再执行下面的语句

exec dbms_network_acl_admin.create_acl(acl => 'resolve.xml',description=> 'resolve acl', principal =>'ZABBIX', is_grant => true, privilege => 'resolve');

exec dbms_network_acl_admin.assign_acl(acl => 'resolve.xml', host =>'*');

commit;

 

三、安装部署Orabbix

#可以安装在oralce服务器上,也可以在其他有java环境的机器上!

*注意:DatabaseList=CRMDB指的是被监控服务器的名称,该名称要和zabbix server界面中的机器名称保持一致,该配置文件中后续所引用的设定都以该名称为准。

CRMDB.Url=jdbc:oracle:thin:@192.168.0.209:1521:orcl指定的是被监控服务器的连接信息(例如采用jdbc的联接方式,oracle服务器地址是192.168.0.209,oracle的端口是1521,orcl指的是数据库的实例)

# 启动orabbix

#chkconfig orabbix on

# /etc/init.d/orabbix start

四、WEB端设置

# zabbix 模板文件路径:

# ls /usr/local/orabbix/template

Orabbix_export_full.xml    Orabbix_export_items.xml

Orabbix_export_graphs.xml  Orabbix_export_triggers.xml

-----------------------------------------------------------------------------------------------------------------------------

MS SQL采用odbc文件监控

yum install -y unixODBC unixODBC-devel freetds

相关配置网上很多自查

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值