Learning Visually with Examples [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Learning Visually with Examples [Electronic resources] - نسخه متنی

Raul F. Chong, Clara Liu, Sylvia F. Qi, Dwaine R. Snow

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید










5.2. The DB2 Environment


The DB2 environment consists of environment variables and DB2 profile registry variables. These manage, monitor, and control the behavior of a DB2 system.

5.2.1. Environment Variables


You set the

environment variables at the operating system level. Most environment variables applicable to DB2 are set automatically during the DB2 installation. For example, the PATH environment variable is updated to point to the DB2 executable code directory.

The two most important environment variables applicable to DB2 are

  • DB2INSTANCE, which determines the active instance in your machine, and

  • DB2NODE, which determines the active database partition in a multi-partitioned environment.


To review the contents of an environment variable like DB2INSTANCE, you can do the following.

On Windows:


echo %DB2INSTANCE%

or


set DB2INSTANCE

On Linux/UNIX:


export | grep DB2INSTANCE

or


set | grep DB2INSTANCE

To change the value of an environment variable

temporarily , use the

set operating system command on Windows or

export on Linux/UNIX as shown in the following examples.

On Windows:


set DB2INSTANCE=myinst

On Linux/UNIX it would depend on the shell that is used:

  • For the Korn shell:


    DB2INSTANCE=myinst

    export DB2INSTANCE

  • For the Bourne shell:


    export DB2INSTANCE=myinst

  • For the C shell:


    setenv DB2INSTANCE myinst


This setting will be lost after you close the window or end the session.

NOTE

A common mistake when using the

set (Windows) or

export (Linux/UNIX) commands is to leave spaces before and/or after the equal sign (=). No spaces must be used!

To create a new or modify an existing environment variable

permanently , you can do the following.

  • On Windows platforms, use the Control Panel. Figure 5.2 shows an example using Windows 2000 and the environment variable DB2INSTANCE. In the figure,

    System was selected followed by the

    Advanced tab, and then the

    Environment Variables button.

    Figure 5.2. Setting an environment variable permanently in Windows

    [View full size image]

  • On Linux and UNIX platforms you can permanently change an environment variable by adding the

    export command in the .login or .profile startup scripts. However, rather than making this change directly, edit the script that comes with DB2 to set up the default DB2 environment, and then invoke this script from .login or .profile. DB2 provides the scripts

    db2profile (for the Bourne and Korn shells) and

    db2cshrc (for the C shell), which contain all the required commands to set up this default DB2 environment. These script files are located under the

    INSTHOME /sqllib directory, where

    INSTHOME represents the instance owner's home directory.


Figure 5.3 shows part of the

db2profile script. Note that the DB2INSTANCE environment variable is set in the script file.

Figure 5.3. Part of the db2profile script file for a Linux/UNIX machine


#############################################################################

# NAME: db2profile

#

# FUNCTION: This script sets up a default database environment for

# Bourne shell or Korn shell users.

#

# USAGE: . db2profile

# This script can either be invoked directly as above or

# it can be added to the user's .profile file so that the

# database environment is established during login.

#

# #### DO NOT EDIT THIS FILE ####

#############################################################################

# Default DB2 product directory

DB2DIR="/opt/IBM/db2/V8.1"

# Function to avoid repetitive environment variable entries

AddtoString()

{

var=$1

addme=$2

awkval='$1 != "'${addme?}'"{print $0}'

newval=`eval echo \\${$var} | awk "${awkval?}" RS=:`

eval ${var?}=`echo $newval | sed 's/ /:/g'`:${addme?}

unset var addme awkval newval

}

#-----------------------------------------------------------------------

# DB2INSTANCE [Default null, values: Any valid instance name]

# Specifies the instance that is active by default.

#-----------------------------------------------------------------------

DB2INSTANCE=db2inst1

export DB2INSTANCE

INSTHOME=/home/db2inst1

#-----------------------------------------------------------------------

# First remove any sqllib entries from the user's path.

# Add the directories:

# INSTHOME/sqllib/bin - database executables

# INSTHOME/sqllib/adm - sysadm executables

# INSTHOME/sqllib/misc - miscellaneous utilities

# to the user's PATH.

#-----------------------------------------------------------------------

AddtoString PATH ${INSTHOME?}/sqllib/bin

AddtoString PATH ${INSTHOME?}/sqllib/adm

AddtoString PATH ${INSTHOME?}/sqllib/misc

export PATH

#-----------------------------------------------------------------------

# UDB Extender initialization

#-----------------------------------------------------------------------

if [ -f ${INSTHOME}/dmb/dmbprofile ]; then

. ${INSTHOME}/dmb/dmbprofile

fi

#-----------------------------------------------------------------------

# The following variables are used for JDBC support

#-----------------------------------------------------------------------

CLASSPATH=${CLASSPATH:-"}

if [ -f ${INSTHOME?}/sqllib/java/db2java.zip ]; then

AddtoString CLASSPATH ${INSTHOME?}/sqllib/java/db2java.zip

fi

...

For the DB2 instance owner, a line to invoke the

db2profile /

db2cshrc script file is automatically added during the instance creation. If you work with DB2 but are not the instance owner, add the following line to your .login or .profile startup scripts:

.

INSTHOME/sqllib/db2profile (for Bourne and Korn shells)

or

source

INSTHOME/sqllib/db2cshrc (for C shell)

Executing the above commands will guarantee that your database environment is configured to use DB2.

5.2.2. DB2 Profile Registries


Most DB2-specific information is stored in a centralized repository called the

DB2 profile registry . Depending on the operating system platform where DB2 is installed, variables stored in the DB2 profile registries may be different. The DB2 profile registry variables are commonly referred to as

DB2 registry variables .

NOTE

The word "Registry" always causes confusion when working with DB2 on the Windows platform. The DB2 profile registry variables have no relationship to the Windows registry variables.

The DB2 profile registry consists of the following registries.

  • The DB2 Instance-Level Profile Registry: Variables set at this level apply only to a specific instance.

  • The DB2 Global-Level Profile Registry: Variables set at this level apply globally to all instances.

  • The DB2 Instance Node-Level Profile Registry: Variables at this level apply to a specific partition in a multi-partitioned environment.

  • The DB2 Instance Profile Registry: Contains a list of all instances in the system. The command

    db2ilist , which lists all instances in a system, uses this registry as input.


NOTE

All variables in the DB2 registries

except those in the DB2 Instance Profile Registry are the same. The difference is at which level you set the variable. For example, you can set the DB2COMM registry variable at the instance-level, global-level, or node-level profile registries.

The DB2 registries are stored as binary or text files in different locations depending on the operating system. To modify these registries, do not edit these files directly; instead, use the

db2set command. Figure 5.4 shows the

db2set command with the -

all option, which lists all of the currently set DB2 profile registry variables.

Figure 5.4. The db2set -all command

[View full size image]

Notice that each registry variable is prefixed with a letter in square brackets. This indicates in which level the variable is set.

  • [i] indicates the variable has been set at the DB2 Instance-Level Profile Registry using the

    -i option (which is the default). For example, in Figure 5.4

    [i] DB2COMM= appc,tcpip,npipes was set using the following command in instance

    myinst :


    db2set DB2COMM=appc,tcpip,npipes -i myinst

  • [g] indicates the variable has been set at the DB2 Global-Level Profile Registry using the

    -g option. This setting applies to all instances defined on the DB2 server. For example, in Figure 5.4,

    [g] DB2COMM=netbios was set using this command:


    db2set DB2COMM=netbios -g

  • [e] indicates a DB2 registry variable has been set as an environment variable using the

    set command (Windows) or

    export command (Linux/UNIX). For example, in Figure 5.4

    [e] DB2COMM=tcpip was set using this command:


    set DB2COMM=tcpip


Although most DB2 registry variables can be set as an environment variable, we recommend setting them as DB2 registry variables using the

db2set command. Changes to DB2 registry variables do not require a server reboot, while changes to environment variables may require a reboot.

To set a registry variable at the DB2 instance node-level profile registry level, use a command with this syntax:


db2set

registry_variable

=value -i

instance_name partition_number

NOTE

Like the

set operating system command, do not leave spaces before and/or after the equal sign (=) when using the

db2set command.

In Figure 5.4 the DB2COMM registry variable was set three times with different values each at the [e], [i], and [g] levels. When a registry variable is defined at different levels, DB2 will choose the value using this search order.

  1. Environment variable set using the

    set /

    export operating system commands.

  2. DB2 Instance Node-Level Profile Registry

  3. DB2 Instance-Level Profile Registry

  4. DB2 Global-Level Profile Registry

Based on this search order, for the example in Figure 5.4, the value

tcpip for the DB2COMM registry variable is the one that takes precedence as it has been set temporarily at the environment level.

Table 5.1 summarizes other options commonly used with the

db2set command.

Table 5.1. Common db2set Command Options

Command

Explanation

db2set -all

Lists all the currently set DB2 registry variables

db2set -lr

Lists all the DB2 registry variables that can be set

db2set -h

Displays help information about the

db2set command

db2set

DB2_registry_variable

=

Deletes a variable from the DB2 registry. Note that a blank space follows the equal sign (=).

Some registry variables require that you stop and start the instance (

db2stop /

db2start ) for the change to take effect. Refer to the

DB2 UDB Administration Guide: Performance for a list of variables that have this requirement.


/ 312