Network Working Group D. Brower, Editor Request for Comments: 1697 The ASK Group, INGRES DBMS Development Category: Standards Track B. Purvy, RDBMSMIB Working Group Chair Oracle Corporation A. Daniel Informix Software, Inc. M. Sinykin J. Smith Oracle Corporation August 1994 Relational Database Management System (RDBMS) Management Information Base (MIB) using SMIv2 Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Table of Contents 1. Introduction .............................................. 1 2. The SNMPv2 Network Management Framework ................... 2 2.1 Object Definitions ....................................... 2 3. Overview .................................................. 2 3.1 Terminology .............................................. 3 3.2 Structure and Features ................................... 4 3.2.1 Tables ................................................. 4 3.2.2 Writable objects ....................................... 5 3.2.3 Traps .................................................. 5 4. Definitions ............................................... 6 5. Acknowledgements .......................................... 35 6. References ................................................ 36 7. Security Considerations ................................... 37 8. Authors' Addresses ........................................ 37 1. Introduction This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects used for managing relational database (RDBMS) implementations. Brower, Purvy, Daniel, Sinykin & Smith [Page 1] RFC 1697 RDBMS-MIB August 1994 2. The SNMPv2 Network Management Framework The SNMPv2 Network Management Framework consists of four major components. They are: o RFC 1442 [1] which defines the SMI, the mechanisms used for describing and naming objects for the purpose of management. o STD 17, RFC 1213 [2] defines MIB-II, the core set of managed objects for the Internet suite of protocols. o RFC 1445 [3] which defines the administrative and other architectural aspects of the framework. o RFC 1448 [4] which defines the protocol used for network access to managed objects. o RFC 1443 [5] which describes textual conventions for the framework. The framework permits new objects to be defined for the purpose of experimentation and evaluation. In particular, the RDBMS-MIB can be seen as an extension of o RFC 1565 [6] which defines the MIB for monitoring network service applications. 2.1. Object Definitions Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the subset of Abstract Syntax Notation One (ASN.1) defined in the SMI. In particular, each object type is named by an OBJECT IDENTIFIER, an administratively assigned name. The object type together with an object instance serves to uniquely identify a specific instantiation of the object. For human convenience, we often use a textual string, termed the descriptor, to refer to the object type. 3. Overview The RDBMS-MIB contains objects that may be used to manage relational database implementations. Specifically, it contains information on installed databases, servers, and on the relation of databases and servers. The terms used in this database are described below. Brower, Purvy, Daniel, Sinykin & Smith [Page 2] RFC 1697 RDBMS-MIB August 1994 3.1. Terminology Vendors and Products are providers of database systems on a host. These vendors may have more than one database product that is manageable through this MIB. On a host, there may be systems from multiple vendors, multiple systems from a single vendor, or any other combination. There may be a private MIB for each vendor, and this may be located using the PrivateMibOID objects in some of the tables. Databases are collections of interrelated data organized according to a schema to serve one or more applications. A database is, for purposes of this MIB, a collection of tables whose organization is based on the relational model. There may be one or more databases available in each system on the host from each product. In the MIB, data about databases is captured in the rdbmsDbTable and the rdbmsDbInfoTable, each with one row per database. Relational Database Management System (RDBMS) A collection of integrated services which support database management and together support and control the creation, use and maintenance of relational databases. Servers as defined in this MIB provide the functions of the RDBMS. Servers are entities that provide access to databases. For this MIB, servers are defined to be entities that may exist independently of other servers. A server may or may not be a single process, based on its independence from other processes. In this MIB, information about servers is captured in the rdbmsSvrTable, the rdbmsSvrInfoTable, each with one row per server extending the applTable from the APPLICATION-MIB of RFC 1565. The rdbmsSvrTable and rdbmsSvrInfoTable are both indexed by the applIndex of that MIB. Associations Inbound associations are local or remote conversations, usually instances of the SQL CONNECT statement, as made visible in servers. The MIB does not currently reveal individual associations; there are association counters in the dbmsSvrInfoTable and the applTable. There are also relationships between servers and databases. All obvious relationships are possible and supported: Brower, Purvy, Daniel, Sinykin & Smith [Page 3] RFC 1697 RDBMS-MIB August 1994 o 1 database : 1 server o 1 database : many servers o many databases : 1 server o many databases : many servers 3.2. Structure and Features The information in this MIB module is organized into nine tables, twelve potentially writable objects, and two traps, as follows. 3.2.1. Tables o databases installed on a host/system (rdbmsDbTable) o actively opened databases (rdbmsDbInfoTable) o database configuration parameters (rdbmsDbParamTable) o database limited resources (rdbmsDbLimitedResourceTable) o database servers installed on a system (rdbmsSrvTable) o active database servers (rdbmsSrvInfoTable) o configuration parameters for a server (rdbmsSrvParamTable) o server limited resources (rdbmsSrvLimitedResourceTable) o relation of servers and databases on a host (rdbmsRelTable) These entities have broad applicability among database systems, and are enough for many monitoring tasks. They are far from adequate for detailed management or performance monitoring of specific database products. This gap is expected to be filled with vendor and product specific MIBs addressing the entities that have not been codified here. Brower, Purvy, Daniel, Sinykin & Smith [Page 4] RFC 1697 RDBMS-MIB August 1994 3.2.2. Writable objects The MIB requires no writable objects for conformance. There is no expectation that RDBMS systems may be actively managed through this MIB. However, the RDBMS-MIB supports the capability to modify the following objects if the implementor so chooses. o rdbmsDbContact o rdbmsDbInfoSizeAllocated o rdbmsDbParamCurrValue o rdbmsDbParamComment rdbmsDbLimitedResourceLimit o rdbmsDbLimitedResourceDescription o rdbmsSrvContact o rdbmsSrvInfoMaxInboundAssociations o rdbmsSrvParamCurrValue o rdbmsSrvParamComment o rdbmsSrvLimitedResourceLimit o rdbmsSrvLimitedResourceDescription 3.2.3. Traps The RDBMS-MIB contains two traps: o rdbmsStateChange o rdbmsOutOfSpace Brower, Purvy, Daniel, Sinykin & Smith [Page 5] RFC 1697 RDBMS-MIB August 1994 4. Definitions RDBMS-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Counter32, Gauge32, Integer32 FROM SNMPv2-SMI DisplayString, DateAndTime, AutonomousType FROM SNMPv2-TC applIndex, applGroup FROM APPLICATION-MIB mib-2 FROM RFC1213-MIB; rdbmsMIB MODULE-IDENTITY LAST-UPDATED "9406150655Z" ORGANIZATION "IETF RDBMSMIB Working Group" CONTACT-INFO " David Brower Postal: The ASK Group, INGRES DBMS Development 1080 Marina Village Parkway Alameda, CA 94501 US Tel: +1 510 748 3418 Fax: +1 510 748 2770 E-mail: daveb@ingres.com" DESCRIPTION "The MIB module to describe objects for generic relational databases." ::= { mib-2 39 } rdbmsObjects OBJECT IDENTIFIER ::= { rdbmsMIB 1 } ---------------------------------------------------------------- rdbmsDbTable OBJECT-TYPE SYNTAX SEQUENCE OF RdbmsDbEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table of databases installed on a system." ::= { rdbmsObjects 1 } Brower, Purvy, Daniel, Sinykin & Smith [Page 6] RFC 1697 RDBMS-MIB August 1994 rdbmsDbEntry OBJECT-TYPE SYNTAX RdbmsDbEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry for a single database on the host. Whether a particular database is represented by a row in rdbmsDbTable may be dependent on the activity level of that database, according to the product's implementation. An instance of rdbmsRelState having the value active, other, or restricted implies that an entry, corresponding to that instance, will be present." INDEX { rdbmsDbIndex } ::= { rdbmsDbTable 1 } RdbmsDbEntry ::= SEQUENCE { rdbmsDbIndex INTEGER, rdbmsDbPrivateMibOID OBJECT IDENTIFIER, rdbmsDbVendorName DisplayString, rdbmsDbName DisplayString, rdbmsDbContact DisplayString } rdbmsDbIndex OBJECT-TYPE SYNTAX INTEGER (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A numeric index, unique among all the databases from all products on this host. This value is a surrogate for the conceptually unique key, which is {PrivateMibOID, databasename}" ::= { rdbmsDbEntry 1 } rdbmsDbPrivateMibOID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The authoritative identification for the private MIB for this database, presumably based on the vendor, e.g., { enterprises 111 } for Oracle databases, {enterprises 757 } for Ingres databases, { enterprises 897 } for Sybase databases, etc. If no OBJECT IDENTIFIER exists for the private MIB, attempts Brower, Purvy, Daniel, Sinykin & Smith [Page 7] RFC 1697 RDBMS-MIB August 1994 to access this object will return noSuchName (SNMPv1) or noSuchInstance (SNMPv2)." ::= { rdbmsDbEntry 2 } rdbmsDbVendorName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The name of the vendor whose RDBMS manages this database, for informational purposes." ::= { rdbmsDbEntry 3 } rdbmsDbName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The name of this database, in a product specific format. The product may need to qualify the name in some way to resolve conflicts if it is possible for a database name to be duplicated on a host. It might be necessary to construct a hierarchical name embedding the RDBMS instance/installation on the host, and/or the owner of the database. For instance, '/test-installation/database-owner/database-name'." ::= { rdbmsDbEntry 4 } rdbmsDbContact OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current DESCRIPTION "The textual identification of the contact person for this managed database, together with information on how to contact this person. Note: if there is no server associated with this database, an agent may need to keep this in other persistent storage, e.g., a configuration file. Note that a compliant agent does not need to allow write access to this object." ::= { rdbmsDbEntry 5 } Brower, Purvy, Daniel, Sinykin & Smith [Page 8] RFC 1697 RDBMS-MIB August 1994 ---------------------------------------------------------------- rdbmsDbInfoTable OBJECT-TYPE SYNTAX SEQUENCE OF RdbmsDbInfoEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table of additional information about databases present on the host." ::= { rdbmsObjects 2 } rdbmsDbInfoEntry OBJECT-TYPE SYNTAX RdbmsDbInfoEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information that must be present if the database is actively opened. If the database is not actively opened, then attempts to access corresponding instances in this table may result in either noSuchName (SNMPv1) or noSuchInstance (SNMPv2). 'Actively opened' means at least one of the rdbmsRelState entries for this database in the rdbmsRelTable is active(2)." INDEX { rdbmsDbIndex } ::= { rdbmsDbInfoTable 1 } RdbmsDbInfoEntry ::= SEQUENCE { rdbmsDbInfoProductName DisplayString, rdbmsDbInfoVersion DisplayString, rdbmsDbInfoSizeUnits INTEGER, rdbmsDbInfoSizeAllocated INTEGER, rdbmsDbInfoSizeUsed INTEGER, rdbmsDbInfoLastBackup DateAndTim