|
Softpanorama
(slightly skeptical)
Open Source Software Educational Society |
May the
source be with you,
but remember the KISS principle ;-)
|
TEC RIM Layer
RIM is an abbreviation of "database Interface module" and like many IBM
acronyms actually it neither necessary or have much of the value for structuring
the TEC internals space; this is just a database connector but still for
some reason it is obscured by strange terminology in TEC documentation.
When TEC component connects to a database, the RIM starts the
RIM agent process which uses the database client libraries
to communicate with the database and issue SQL statements.
A RIM object contains
information about a specific database used with TEC, such as the database name,
database user ID. A term "RIM host" is a meaningless term that is
equivalent to the event server for all practical purposes; more specifically
this is a place were the database client libraries are installed.
TEC installation wizard creates a RIM object named tec, which
contains database information for connecting to the event database.
The following table list the database information needed for configuring
the TEC event database. This information is also stored in the RIM object.
When installing the event server component from the Install Options
dialog, enter the following database values:
| Database Home |
Equates to the value in the $ORACLE_HOME environment
variable. |
| Database Name |
Type a unique alias name of the event
database used by TEC. Usually
tecdb |
| Database User ID |
The database user that owns the application
database. The default is tec. |
| Database Password |
The password for the database user (for example tec) |
| Database Server ID |
The name of the Oracle listener service in the
tnsnames.ora file. Equates
to the value in the $TWO_TASK
environment variable for a client or
$ORACLE_SID on the database
server or client. |
The following items should be considered for Oracle before beginning
your event database configuration:
During installation, the installation wizard creates a RIM object named
tec. However, in certain case, for example moving from
Oracle 9 to Oracle 11 you need to change that RIM object.
You can perform set of actions on RIM object using builtin commands. For
example
- Obtain information about the RIM object
- Modify the RIM object
- Delete the RIM object
- Test RIM connectivity
To list all RIM objects in your Tivoli environment, enter the following
command on the command line:
wlookup -ar RIM
wlookup -ar RIM
ccm 1034227612.1.1215#RIM::RDBMS_Interface#
inv_query 1034227612.1.1213#RIM::RDBMS_Interface#
invdh_1 1034227612.1.1212#RIM::RDBMS_Interface#
mdist2 1034227612.1.1216#RIM::RDBMS_Interface#
planner 1034227612.1.1214#RIM::RDBMS_Interface#
pristine 1034227612.1.1217#RIM::RDBMS_Interface#
tec 1034227612.1.2670#RIM::RDBMS_Interface#
or
# wlookup -ar RIM
tec 2027672270.1.578#RIM::RDBMS_Interface#
To display configuration information for a specific RIM object, enter
the following command on the command line:
wgetrim RIM_object_name
The following is the general syntax for using the wgetrim command to
list properties a RIM object:
wgetrim rim_name
# wgetrim tec
RIM Host: nti2171
RDBMS User: tec
RDBMS Vendor: Oracle
Database ID: tec
Database Home: /oracle/app/oracle/product/9.2.0
Server ID: TIVOLI_PROD
Instance Home:
Instance Name:
or
root@nti5001:/opt/Scripts # wgetrim tec
RIM Host: nti5001
RDBMS User: tec
RDBMS Vendor: Oracle
Database ID: MIS11D
Database Home: /oracle/app/oracle/product/9.2.0/
Server ID: TIVOLI_DEVL
Instance Home:
Instance Name:
- Note:
- The wgetrim command does not retrieve the application type (-a
option) or the maximum number of connections (-m option) for a RIM
object. To retrieve these attributes, use the idlcall command as
documented within the wgetrim documentation.
You can use the wsetrim
command to modify attributes for a RIM object. With this command, you cannot
change the following:
- The database vendor associated with the RIM object
- The RIM password
- The computer hosting the RIM object (this is usually not an issue
as RIM typically is stored on TMR server)
To change the database vendor or the computer hosting the RIM object,
you must delete and re-create the RIM object using the
wdel
command and the wcrtrim
command, respectively. See
To change the RIM password, you must use the
wsetrimpw
command.
Use the wgetrim and
wsetrim commands to retrieve and set the
attributes for a RIM object. The wgetrim command retrieves the current
values set for the attributes of a RIM object, and the wsetrim command
sets one or more attributes of a RIM object.
Edits the properties of an RDBMS interface module (RIM) object.
Syntax
wsetrim [-n
name] [-d
database] [-u user] [-H
db_home] [-s
server_id] [-I instance_home]
[-t instance_name] [-a
application_label] [-m
max_connections] rim_name
Description
The
wsetrim command changes the database
information for a given RIM object. You can change the database ID, database
user, database home, database server ID, and instance home. To change the
vendor for a RIM object, you must delete the object using the
wdel command and re-create it using the
wcrtrim command. To change the managed node for a
RIM object, you can either move the RIM object using the
wmvrim command or delete and re-create the RIM object. To change the
label for a RIM object, you can either use the
wsetrim
-n command or delete and re-create the RIM object.
Note
When you specify a path that contains a space, you must enclose the path
name in quotation marks (" "). On Windows systems, you can also specify
the MS-DOS path. For example, you can specify the path c:\Program Files\sqllib
in one of the following ways:
Options
- -a
application_label
- Changes the application label for the RIM object.
- -d database
- Changes the name of the database or data source to which the RIM
object connects.
- DB2
- The DB2 database alias or the local DB2 database name.
- Oracle
- The name of the Oracle instance. This name is the
SID option in the configuration connection
file. Corresponds to the value in the ORACLE_SID variable.
- Sybase
- The name of the database that the application will use.
- Microsoft SQL
- The name of the ODBC data source that RIM uses to connect to the
Microsoft SQL Server database.
- Informix
- The name of the data source defined in the .odbc.ini file.
- -H db_home
- Changes the path to the database home directory. This option changes
the value of the variables ORACLE_HOME, SYBASE, and DB2DIR for Oracle,
Sybase, and DB2, respectively.
Note
On Windows operating systems, use one of the following formats when
specifying value for a path that contains spaces:
- "c:\Program Files\sqlib"
- c:\progra~1\sqllib
If you do not enclose the value within double quotation marks (") or
include the tilde (~) in the path name, the parsing of the command
fails.
- -I
instance_home
- For DB2 only, changes the path to the DB2 instance for the specified
RIM object.
- -m
max_connections
- Changes the maximum number of connections between the RIM object and
the RDBMS.
- -n name
- Changes the name of the RIM object to name.
- -s server_id
- Changes the server ID for the database. This option changes the
values of the variables TWO_TASK, DSQUERY, and DB2COMM for Oracle,
Sybase, and DB2, respectively. For Microsoft SQL Server, this is the
name of the RDBMS server machine.
- -t
instance_name
- For DB2 only, changes the name of the DB2 instance for the specified
RIM object.
- -u user
- Changes the name of the database user that the RIM object uses. If
you are using DB2, specify a valid UNIX user.
- rim_name
- Specifies the label of the RIM object to be modified.
Authorization
senior or super in the
Tivoli region
Examples
The following example changes the database ID to inventory, the database
user to tivoli2, the database home directory to /ORACLE, and the database
server ID to invdb2.world for the inventory RIM object.
wsetrim -d inventory -u tivoli2 -H /ORACLE \
-s invdb2.world inventory
To verify the changes, use the
wgetrim command:
wgetrim inventory
RIM Host: amon-sul
RDBMS User: tivoli2
RDBMS Vendor: Oracle
Database ID: inventory
Database Home: /ORACLE
Server ID: invdb2.world
Instance Home:
Note that the output for the Instance Home field is
blank; this field applies only to DB2.
Deleting RIM object is required is you want to change database vendor,
database host or database user (tec)password. When you need to delete a RIM object, use the
wdel
command. The basic syntax for this command is as follows:
wdel @RIM:RIM_object_name
Object name is the first column in wlookup listing:
wlookup -ar RIM listing
For example
wdel @RIM:tec
For details about using the wdel command, refer
to the Tivoli Management Framework Reference Manual.
When you need to create a RIM object, use the wcrtrim
command.
Generally, RIM objects are created during product installation. However,
there might be times where you need to create a RIM object. The only way to
create a RIM object is by using the wcrtrim command. The following is the
general syntax for using the wcrtrim command to create a RIM object:
wcrtrim [-i] -v vendor { -o host_oid
| -h host_name } -d database -u user
-H db_home -s server_id [-I instance_home]
[-a application_label] [-m max_connections]
rim_name
For a complete list of options for the wcrtrim command, refer to the
Tivoli Management Framework Reference Manual.
Creates an RDBMS Interface Module (RIM) object.
Syntax
wcrtrim [-i]
-v vendor {
-o host_oid | -h
host_name } -d
database -u user
-H db_home -s
server_id [-I
instance_home] [-t
instance_name] [-a
application_label] [-m
max_connections] rim_name
Description
The
wcrtrim command creates a new RIM object on a
specific managed node. When you use the
-h or
-o option, specify a managed node that is local to
the Tivoli region where you enter the
wcrtrim
command and where the RIM object will reside. If you do not specify either
the name or the object ID of a managed node, the RIM object is created on
the Tivoli server.
You cannot change the vendor for a RIM object after it
has been created. If you need to change the vendor, you must delete the RIM
object and create a new one.
Notes:
- The -I instance_home
and -t instance_name
options are used only by DB2 databases.
- When you specify a path that contains a space, you must enclose the
path name in quotation marks (" "). On Windows systems, you can also
specify the MS-DOS path. For example, you can specify the path
c:\Program Files\sqllib in one of the following ways:
Options
- -a
application_label
- Specifies the application label for the RIM object.
Note
This argument is not enforced by RIM. It is provided for application
use.
- -d
database
-
- Oracle
- The name of the Oracle database as specified in connection
string. This name is the SID option in the
configuration connection file. Corresponds to the value in the
ORACLE_SID variable.
- Sybase
- The name of the database that the application will use.
- Microsoft SQL
- The name of the ODBC data source that RIM uses to connect to the
Microsoft SQL Server database.
- Informix
- The name of the data source defined in the .odbc.ini file.
- -h
host_name
- Specifies the host name of the managed node where the RIM
object will reside. The managed node must be in the local Tivoli
region. If you do not use this option or the -o
option, the RIM object will not be created. FRWTT0003E An instance named
"NULL" of resource "ManagedNode" was not found" error occurs when saving
properties for a Software Package.This error occurs if the user "nobody"
does not have write permission into the "/tmp" directory where it needs
to put temporary files.
Make sure that the "/tmp" directory has fully permissions (777) in order
to allow the user "nobody" to write into it.
- -H
db_home
- Specifies the full path to the directory where the RDBMS server or
client software is installed on the RIM host.
Note
On Windows systems, use one of the following formats when specifying
value for a path that contains spaces:
- "c:\Program Files\sqlib"
- c:\progra~1\sqllib
If you do not enclose the value within double quotation marks (") or
include the tilde (~) in the path name, the parsing of the command
fails.
- DB2
- The directory where the DB2 software is installed. Equates to
the value in the DB2DIR variable.
- Oracle
- The home directory. Equates to the ORACLE_HOME variable.
- Sybase
- The directory that contains the interfaces file. Equates to the
SYBASE variable.
- Microsoft SQL
- The directory where Microsoft SQL Server is installed.
- Informix
- The directory where the Informix CLI client is installed.
Equates to the value in the INFORMIXDIR variable.
- -i
- Reads the database password from standard input. If you specify this
option, the password can be any length. If you do not specify this
option, you are prompted for a password, which must be eight characters
or less.
- -I
instance_home (DB2 only)
- Specifies the value of the INSTHOME variable. This value is the home
directory where the database instance was created.
- -m
max_connections
- Specifies the maximum number of connections allowed between the RIM
object and the RDBMS. It is recommended that the maximum number of
connections be the same of the number of threads used by the
application.
The range is 1 to 200 connections. The default is 16 connection.
Note
This argument is not enforced by RIM. It is provided for application
use.
- -o
host_oid
- Specifies the object ID of the managed node where the RIM object
will reside. The managed node must be in the local Tivoli region. If you
do not use this option or the -h option, the
RIM object will not be created.
- -s
server_id
- Specifies the server ID for the database. This value enables the RIM
host to connect to the RDBMS.
- DB2
- RIM expects the value to be tcpip. Set
the value of the DB2COMM variable to tcpip.
- Oracle
- The name of the Oracle listener service in the tnsnames.ora
file. Equates to the value in the TWO_TASK variable.
- Sybase
- The name of the Sybase server. Equates to the value in the
DSQUERY variable.
- Microsoft SQL
- The name of the host running Microsoft SQL Server.
- Informix
- The name of the Informix server. Equates to the value in the
INFORMIXSERVER variable.
- -t
instance_name (DB2 only)
- Specifies the value of the DB2INSTANCE variable. If the RIM host is
the same machine as the database server, this value must be the name of
the DB2 server instance. If the RIM host is on a different machine than
the database server, this this value must be the name of the DB2 client
instance.
- -u user
- Specifies the name of the database user that the RIM object will use
to access the database.
- DB2
- An RDBMS user that has permission to use the server instance and
database. The DB2 user ID for the RIM object must match the client
instance name, or the instance_name
attribute for the RIM object must be set to the client instance
name.
- Oracle
- The RDBMS user that owns the application data space.
- Sybase
- The RDBMS user that owns the application data space.
- Microsoft SQL
- The RDBMS user that owns the application data space.
- Informix
- Must be informix.
- -v
vendor
- Specifies the vendor of the RDBMS you are using. Valid entries are
as follows:
- DB2
- Oracle
- Sybase
- MS_SQL
- Informix
- rim_name
- Specifies the label of the RIM object.
Authorization
senior or super in the
Tivoli region
Examples
- The following example interactively creates a RIM object:
wcrtrim -v Oracle -h NTI5001 -d MIS11D -u tec \
-H /oracle/app/oracle/product/9.2.0/ -s TIVOLI_DEVL tec
- The following example creates the same RIM object, but reads the
password from a file:
wcrtrim -i -v Oracle -h amon-sul -d amar -u tec \
-H -s invdb.world inventory \
< ./passwd
- The following example creates the invdh2 RIM object, sets the
application label to invdh, and sets the maximum number of RDBMS
connections to 10:
wcrtrim -v Oracle -h amon-sul -d amar -u tivoli \
-H /tivoli/drm/2/amishra/ORACLE -s invdb.world \
-a invdh -m 10 invdh2
See Also
The RIM object relies on the underlying database client to connect to
the database server. The database client must be able to connect to the
database server for the RIM object to communicate properly.
After the event repository is created for your database, perform the
following procedure to verify RIM connectivity:
- Test connectivity with the database server using the native database
client. When you test client connectivity, you should use the same name
and password that the RIM object uses. For information about obtaining
the RIM configuration information, refer to
Obtaining information about RIM objects.
The following table summarizes the native database clients for each
supported database.
Table 44. Supported native database clients
| Database |
Database Interactive SQL Access |
| DB2 |
db2 |
| Informix |
dbaccess |
| Microsoft SQL Server |
isql |
| Oracle |
sqlplus |
| Sybase |
isql |
- Test connectivity through the RIM object using the following
wrimtest command:
wrimtest -l RIM_object_name
- If you see a Session opened Enter option message,
you have successfully connected to the database server. Enter
x to select the exit option and exit.
For additional information about the wrimtest
command, refer to the IBM Tivoli Enterprise Console Command and Task
Reference. (RIM tracing is not helpful for connection problems because
a connection to the database server must exist for RIM to show tracing.)
The following commands are useful tools for troubleshooting problems
with the RIM database.
For additional information about the RIM commands, refer to the
Tivoli Management Framework Reference Manual.
-
wrimtest
-
Verifies the connectivity and functionality of a RIM object as follows:
wrimtest -l tec
# wrimtest -l tec
Resource Type : RIM
Resource Label : tec
Host Name : server
User Name : tec
Vendor : Oracle
Database : tec
Database Home : /oracle/app/oracle/product/9.2.0
Server ID : TIVOLI_DEVL
Instance Home :
Instance Name :
Opening Regular Session...Session Opened
RIM : Enter Option >x
Releasing session
Here is example of failure
root@nti5001:/opt/Scripts # wrimtest -l tec
Resource Type : RIM
Resource Label : tec
Host Name : nti5001
User Name : tec
Vendor : Oracle
Database : tec
Database Home : /oracle/app/oracle/product/9.2.0
Server ID : TIVOLI_DEVL
Instance Home :
Instance Name :
Opening Regular Session...FRWRA0024E Could not connect to RDBMS server to access database tec
The RDBMS server call's return code was: 1017
The RDBMS server call's error was: ORA-01017: invalid username/password; logon denied
Use the wrimtest command to connect to
a specified database and run RIM methods.
-
wlookup RIM
-
Displays a list of available RIM objects as follows:
wlookup -ar RIM
-
wrimtrace
-
Enables or disables tracing for RIM objects.
The contents of the Inter-Object Message (IOM) packets are passed
between the RIM object and client program. RDBMS errors are then printed
to the RIM log file.
Note:
The RIM tracing function is intended for debugging purposes. If
enabled for extended periods of time, tracing can decrease performance
and considerably slow the processing of RIM calls.
For additional information about RIM Troubleshooting, refer to the
Tivoli Management Framework User's Guide and the Tivoli
Management Framework Maintenance and Troubleshooting Guide.
Additional information about troubleshooting RIM problems and RIM tuning
can be found in the Using Databases with Tivoli Applications
and RIM redbook.
Copyright © 1996-2009 by Dr. Nikolai Bezroukov.
www.softpanorama.org was
created as a service to the UN Sustainable Development Networking Programme (SDNP)
in the author free time.
Submit
comments This document is an industrial compilation designed and created
exclusively for educational use and is placed under the copyright of the
Open Content License(OPL).
Site uses AdSense so you need to be aware of Google privacy policy. Original materials copyright belong to respective owners. Quotes are made
for educational purposes only in compliance with the fair use doctrine.
Disclaimer:
- The statements, views and opinions presented on
this web page are those of the author and are not endorsed by, nor do they necessarily
reflect, the opinions of the author present and former employers, SDNP or any other
organization the author may be associated with.
- We do not warrant the correctness of the information provided or its
fitness for any purpose
- In no way this site is associated with or endorse cybersquatters
using
the term "softpanorama" with other main or country domains (e.g. softpanorama.com) with
bad faith intent to profit from the goodwill belonging to
someone else.
Last modified:
October 29, 2009