Skip to main content.

Web Based Programming Tutorials

Homepage | Forum - Join the forum to discuss anything related to programming! | Programming Resources

Teach Yourself Oracle 8 In 21 Days

Teach Yourself Oracle 8 In 21 Days -- Ch 5 -- Managing the Oracle RDBMS


Teach Yourself Oracle 8 In 21 Days

Previous chapterNext chapterContents


- Day 5 -

Managing the Oracle RDBMS

Today you will look at the basics. Here you will see some of the objects that must be set up by the DBA (including the Oracle DBA login account, the DBA roles, and the Oracle SID) as well as some of the tasks that the DBA must perform, including

All these are basic functions that need to be covered before you move on to topics such as creating a database. This day lays a foundation for many of the days to come. It is important that you completely understand these concepts.

The Oracle DBA

On Day 1, "Starting Out with Oracle," you were presented with a list of the duties and responsibilities of the Oracle DBA. Let's refresh your memory with some of the key duties and responsibilities:

The DBA Account

To accomplish these tasks, the DBA must be given special privileges. These privileges allow the DBA to run commands that other Oracle users are not allowed to perform. These privileges are maintained within Oracle itself. As part of the installation of the Oracle RDBMS, several accounts are created with these special privileges. These accounts and their privileges are described here.

INTERNAL

The INTERNAL account is provided mainly for backward compatibility with earlier versions of Oracle, but is still used for key functions such as starting up and shutting down the instance. The INTERNAL account appears as user SYS if you look at the connected sessions, but the INTERNAL account has additional key features: It can start up or shut down the instance. The INTERNAL account is available even when a database has not been created and when no instances are started up.

SYS

The SYS account is automatically created whenever a database is created. This account is used primarily to administer the data dictionary. This account is granted the DBA role, as well as CONNECT and RESOURCE roles.

SYSTEM

The SYSTEM account is also automatically created whenever a database is created. This account is used primarily to create tables and views important to the operation of the RDBMS. This account has been granted the DBA role.

Administrative Users

I recommend that you create individual user accounts and grant the DBA role to those users who will be acting as the DBA. In this way, fewer people access the same account, thus avoiding confusion. Also, if auditing is enabled, there is a record of who made these system changes.


TIP: Avoid using the default administrative accounts. If DBAs are authorized with the proper roles, they can perform the tasks they need to do and maintain their individual accounts. This allows you to determine which DBA or DBAs modified the system and who is currently active on it.

The DBA Roles

Several roles are available and are assigned to the DBAs. As you will see on Day 10, "Administering User Accounts," these roles are sets of privileges assigned to a particular Oracle role. Each role can then be assigned to a user, thus giving that user all the privileges needed for that particular task. The use of roles is covered in detail on Day 10, but it is appropriate to go over the roles and privileges assigned to the Oracle DBA here.

DBA

The DBA role consists of most of the other Oracle roles and privileges. By assigning the DBA role to a user, there is virtually no task that user cannot do. This role should be assigned to trusted users who are active DBAs for this system.

OSOPER

The OSOPER role is one of two special operating system roles. These roles are assigned to special accounts that need OS authentication. It is necessary to have OS authentication for some accounts because Oracle authentication can be done only when the database is open. If the database is shut down, Oracle cannot validate the user permissions.

The OSOPER role allows the user to perform the following operations:

After the database is up and running, other users can be authenticated through Oracle security. These operations require a special authentication method because the database is not available.

OSDBA

The OSDBA role includes the permissions granted to the OSOPER role with some additional permissions. These additional permissions include the CREATE DATABASE command and all system privileges with the ADMIN OPTION. The ADMIN OPTION allows the user to grant these permissions to other roles or users. Without the ADMIN OPTION, you cannot propagate these permissions and roles.

Administrator Authentication

Authenticating the user can be done either through OS authentication using OS accounts and groups or through the use of Oracle password files. Which of these is right for your installation is up to you. These methods are covered in detail on Day 10; until then, all examples are done using Oracle password files.

The SID

As you learned on Day 2, "Exploring the Oracle Architecture," an Oracle instance is an Oracle database, the Oracle processes or threads, and the memory it uses. The instance is the logical term that refers to the components necessary to access the data in the database.

Each Oracle instance is identified by a SID (system identifier), which uniquely identifies this instance and is used by the Oracle utilities and networking components to connect you to the correct instance.

A SID is up to four alphanumeric characters in length and is required in order to connect to an Oracle instance. The SID is set by the ORACLE_SID environment variable. From the NT command line, you can set the SID with the following syntax:

Set ORACLE_SID=ORCL

The default SID value is set in the NT Registry. If you do not set the SID using the environment variable, the Registry entry is used. The TNSNAMES.ORA file also resolves the SID with a service name. As you will see tomorrow, when you create a network entry using a utility such as the Oracle Network Configuration wizard, you will be prompted for a service name that you pick, a network type and address, and an Oracle SID. This service name is used to resolve both the network and the SID. Even the Oracle service name includes the SID as an identifier.

You will be seeing more of the use of the Oracle SID in the next few days; for now, it is enough to think of the SID as a unique identifier and a way to connect to an Oracle instance.

The Oracle Enterprise Manager

The Oracle Enterprise Manager is a new tool from Oracle that allows the DBA to graphically administer one or more Oracle instances. By allowing many operations to be performed graphically, the presentation of data can be simplified and more meaningful.

Enterprise Manager allows the administrator to manage one or more Oracle instances either locally or via the network. Enterprise Manager consists of two main components: the graphical console and the intelligent agents.

The Enterprise Manager console is the graphical tool that allows you to graphically administer the Oracle instances. This console communicates to the various systems it administers via the intelligent agents that run on these systems. These intelligent agents allow the console to communicate with the instances. The agents use the SNMP (Simple Network Management Protocol) to take requests from the console and communicate those requests to the Oracle system running on these systems.

Enterprise Manager allows the DBA to perform the following tasks from a central location:

The Oracle Enterprise Manager is a very powerful and flexible tool that can help in many of your daily DBA duties.


NOTE: In many cases I prefer to graphically administer the Oracle system, but in some cases, I still prefer the character-based commands that can be run via the Oracle Server Manager. Throughout this book, both the graphical and character-based administrative methods are shown. I will point out where I feel one tool is more appropriate than another and why, but it is your preference that is important. You will have to decide which tool or set of tools is right for you.

In this section, you will learn how to configure Enterprise Manager and how to invoke its major functions. The individual tools that comprise Enterprise Manager, such as the Instance Manager, the Storage Manager, the Schema Manager, and so on, are presented separately in the lesson where most appropriate.

Configuring Enterprise Manager

The Oracle Enterprise Manager is installed as part of the Oracle server installation process or can be installed as part of the administrator client installation. After Enterprise Manager is installed, you can connect to it by using the NT toolbar and selecting Enterprise Manager from Enterprise Manager program group.

If this is the first time you've invoked Enterprise Manager, you will probably see a screen indicating that the repositories for Enterprise Manager and Software Manager are not installed (see Figure 5.1).

Figure 5.1.

Enterprise Manager and Software Manager repositories are not installed.

In this case, click OK and allow Enterprise Manager to create the repositories. This operation will take some time. During this period you will see indications that the repositories are being created, as shown in Figure 5.2.

Figure 5.2.

The Oracle Repository Manager screen.

When the creation operation is complete, Enterprise Manager will start; you will see the four default panes shown in Figure 5.3.

Figure 5.3.

The Enterprise Manager.

The four panes displayed are

The Event pane--This pane is used to view system events that occur on any node that you are administering from this console. Events are occurrences that trigger some kind of action. This action can be a simple alert or can be some type of action.


NOTE: When Enterprise Manager is invoked, the Administrator toolbar is also invoked (as seen in the center of the Enterprise Manager). This toolbar allows quick access to the Enterprise Manager utilities. Some administrators like to move the toolbar or remove it altogether. This is up to you. I like to use it on occasion, but usually I remove it.

Using the Enterprise Manager

The Enterprise Manager is distinguished from Enterprise Manager applications in this book in that the applications are presented in the section that applies to that application's function. For example, the Schema Manager is covered in the chapter that covers the Oracle schema, the Backup Manager is covered in the chapters covering backup and recovery, and so on. Today's focus is on configuring Enterprise Manager and using the functions associated with the Navigator, Map, Job, and Event panes.

General

A few general setup parameters can be modified with Enterprise Manager. These pertain primarily to how Enterprise Manager looks and acts.

The View Menu

The View drop-down menu can be used to modify the display. Select the View menu as shown in Figure 5.4.

Figure 5.4.

The View menu.

From here you can uncheck the various panes that you do not want to view. For example, if you unselect the Show Map Pane button, the Map pane will be removed from the screen.

The Navigator Menu

The Navigator drop-down menu can be used to invoke the Discover New Services wizard. To access the wizard, select Navigator | Discovery, as shown in Figure 5.5.

Figure 5.5.

The Navigator menu.

Depending on whether a database is selected in the Navigator pane, you will see several available options. One of the options is for the Discover New Services wizard. This wizard finds the available services on specified systems. To use this wizard for this purpose, do the following:

1. Select Discover New Services Wizard, and you will see the first screen of the Discover New Services wizard, as shown in Figure 5.6.

Figure 5.6.

The first screen of the Discover New Services wizard.

2. Click Next to move to the next screen. This screen allows you to specify node names for the discovery process to run on. After the discovery process has run, Enterprise Manager can communicate with that node and manage the various instances available on that node.

3. Type the node name, then click Add. This node will then be ready to be discovered when you click the Finish button (see Figure 5.7).

4. After you click the Next button, you are asked for the time interval at which you want discovery to occur. You can retrieve this information immediately or on a regular basis.

5. Finally, you are presented with a summary of your choices. If you are satisified that everything is correct, you can proceed with the discovery by clicking Finish.

Figure 5.7.

The Discover New Services wizard Add Nodes screen allows you to add nodes to be discovered.

6. After you click the Finish button, the Discover New Services wizard proceeds to discover that node. When it has completed, you will see the discovered status in the Service Discovery Status screen, shown in Figure 5.8.

Figure 5.8.

The Service Discovery Status screen shows you the discovery process in action.


NOTE: Using the Discover New Services wizard is the best way to configure the Enterprise network topology. Enterprise Manager uses a combination of the discovery feature, the Oracle intelligent agents, and the TOPOLOGY.ORA file described later today.

File Menu

The File menu is important to the configuration in that it is where the user preferences setup is found. When you select the user preferences setup, you will see a screen that displays the services found in the discovery process (see Figure 5.9).

Figure 5.9.

The User Preferences screen.

The User Preferences screen allows you to configure the username, password, and role assigned to the connection that the Enterprise Manager will use to that service. This allows you to keep separate passwords and DBA accounts for each system on your network, but still administer all of them from a common console.

Setting the user preferences now will save you a lot of time and aggravation later. It will allow you to connect directly to these services without having to go through the entire login procedure.

Using the Navigator Pane

The Navigator pane is probably where you will do most of your work. As I mentioned, the Navigator pane provides a tree-like presentation with the following top-level branches:

An example of the Navigator pane with the first-level trees expanded is shown in Figure 5.10. Note that all the other panes except the Navigator pane are closed in this figure. Most of the objects here are the default database objects from the installation procedure.

Figure 5.10.

The Navigator pane.

Using the Map Pane

The Map pane is designed to facilitate the administration of systems located worldwide. The Map pane allows you to create groups of systems that can be administered by drilling down on the map. After Enterprise Manager groups are set up, you can drill down into a group by simply clicking the map location.

To create a map, perform the following steps:

1. Select the Map pane from the View | Map Pane menu.

2. Select Map | Create Map.

3. At this point, you will see the Create a New Map screen, shown in Figure 5.11. Fill in the name of the map, choose a bitmap file for the map, and click OK.

After the map is created, you will see a picture of the map (see Figure 5.12). By creating a group, you can then move the icon of the group to the location on the map where those systems reside.

The map can be very useful if you are administering a large number of systems that are geographically disparate. You can even draw your own graphics that depict a building or a floor in a building where these systems reside. Take some time and play around with the Map pane. Most of the features are fairly self-explanatory and easy to use.

Figure 5.11.

Creating a map.

Figure 5.12.

The map.


TIP: Play around with the Map pane. See what kind of configurations you can put together. Using the Navigator pane, you can drag and drop databases into the groups you have created, and they will show up in the Map pane.

Using the Job Pane

The Job pane allows you to create and monitor jobs you have scheduled for one or more systems. This pane can be very useful in scheduling regular activities such as coalescing tablespaces, gathering statistics, or any other type of job that you would like to schedule.

The Job pane allows you to schedule all types of jobs, including

The Job pane is described in much more detail on Day 15, "Managing Job Queues and Using Oracle Auditing."

Using the Event Pane

The Event pane is used for monitoring events anywhere under the administration of Enterprise Manager. Enterprise Manager uses SNMP (Simple Network Management Protocol) to allow the intelligent agents to signal the console if an event has occurred.

Enterprise Manager allows you to configure the system to monitor whatever you want, and to alert you if anything it is monitoring has passed a threshold. Enterprise Manager can be configured to alert you via the console itself, e-mail, pager, and so on.

This allows you to set up Enterprise Manager to monitor your installation even when you are not there.

Using Server Manager

Server Manager provides a character-based interface into the Oracle instance. Invoke Server Manager by running it directly from the NT command line or by clicking the executable from NT Explorer. Server Manager is available under all operating systems in one form or another.

You can invoke Server Manager from the command prompt by typing the program name as shown here:

D> Svrmgr30

After Server Manager has been invoked, you will see the initial connection information, as shown in Figure 5.13.

Figure 5.13.

Server Manager.

As you can see, Server Manager provides a command-line interface that can be used to directly input SQL statements. Because Server Manager is designed as an administrative tool, it supports a superset of the SQL commands that are accepted through other SQL interfaces such as SQL*Plus. An example of some of these additional commands is the show parameter command, which can be used to show the current value of the Oracle initialization parameter that is requested. Listing 5.1 contains an example of this.

INPUT:

Listing 5.1. Using Enterprise Manager to display some tunable parameters.

D:\>svrmgr30

Oracle Server Manager Release 3.0.3.0.0 - Production

(c) Copyright 1997, Oracle Corporation.  All Rights Reserved.

Oracle8 Enterprise Edition Release 8.0.3.0.0 - Production
With the Partitioning and Objects options
PL/SQL Release 8.0.3.0.0 - Production 

SVRMGR> connect internal
Password:
Connected.
SVRMGR> show parameter block

OUTPUT:

NAME                                TYPE    VALUE
----------------------------------  ------  -----------------------------
db_block_buffers                    integer 100
db_block_checkpoint_batch           integer 8
db_block_checksum                   boolean FALSE
db_block_lru_extended_statistics    integer 0
db_block_lru_latches                integer 1
db_block_lru_statistics             boolean FALSE
db_block_size                       integer 2048
db_file_multiblock_read_count       integer 8
delayed_logging_block_cleanouts     boolean TRUE
hash_multiblock_io_count            integer 8
log_block_checksum                  boolean FALSE
SVRMGR>

ANLYSIS:

In this example, I requested the value of all of the parameters that had the word block in them. As you can see, I got back a number of parameters with block in their names.

This is useful for determining the default values of all the Oracle parameters on your system. By using the command SHOW PARAMETERS with no qualifiers, you will see a listing of all the Oracle tunable parameters (see Listing 5.2).

INPUT:

Listing 5.2. See a listing of the Oracle tunable parameters.

D:\>svrmgr30

Oracle Server Manager Release 3.0.3.0.0 - Production

(c) Copyright 1997, Oracle Corporation.  All Rights Reserved.

Oracle8 Enterprise Edition Release 8.0.3.0.0 - Production
With the Partitioning and Objects options
PL/SQL Release 8.0.3.0.0 - Production 

SVRMGR> connect internal
Password:
Connected.
SVRMGR> show parameters

OUTPUT:

NAME                                TYPE    VALUE
----------------------------------  ------  -----------------------------
O7_DICTIONARY_ACCESSIBILITY         boolean TRUE
allow_partial_sn_results            boolean FALSE
always_anti_join                    string  NESTED_LOOPS
aq_tm_processes                     integer 0
arch_io_slaves                      integer 0
audit_trail                         string  NONE
.
. Parameters Omitted due to length
.
timed_os_statistics                 string  off
timed_statistics                    boolean FALSE
transaction_auditing                boolean TRUE
transactions                        integer 66
transactions_per_rollback_segment   integer 11
user_dump_dest                      string  %RDBMS80%\trace
utl_file_dir                        string
SVRMGR>

ANLYSIS:

This represents all the Oracle tunable parameters. Throughout this book, you will see most of these parameters again, and a full listing of all these parameters appears in Appendix B, "Oracle Tuning Parameters."

When this book shows an operation done with a SQL statement, it is being done via Server Manager. Server Manager provides the flexibility to use SQL commands with all the available options. These commands can be put into a script file, with the extension .SQL and can be run from within Server Manager. Simply put an @ before the filename of the SQL script and it will be run. It is not necessary to add the .SQL extension to the name when running it. For example, to run a SQL script called build.sql in the c:\database directory, you can use the syntax shown in Listing 5.3 within Server Manager.

Input/Output:

Listing 5.3. Using Server Manager to invoke a SQL script.

D:\>svrmgr30

Oracle Server Manager Release 3.0.3.0.0 - Production

(c) Copyright 1997, Oracle Corporation.  All Rights Reserved.

Oracle8 Enterprise Edition Release 8.0.3.0.0 - Production
With the Partitioning and Objects options
PL/SQL Release 8.0.3.0.0 - Production


SVRMGR> connect internal
Password:
Connected.
SVRMGR> @c:\database\build
...
... Data Returned
...
SVRMGR> 

As you will see throughout the book, there are certain operations that I prefer to do within a SQL script. By scripting these operations, I have certain advantages, including the following:


TIP: By keeping your build scripts, you will be able to quickly rebuild your database in the event of a catastrophic failure.

Throughout this book, you will see numerous examples in which Server Manager is needed for some operations.

Managing a Bootstrap Instance Under NT

With the NT operating system, the Oracle bootstrap instance must be created before the database can be created. Because it is a service, the instance is a little different from the Oracle instance on other operating systems. A service called OracleServiceSID (where SID is the system identifier) is created when the instance is created. This service or instance service is used to bootstrap the more traditional Oracle instance. Because the Oracle server is a service under NT, you cannot connect to Oracle or create the database without this service's being started. The instance is created via the NT Instance Manager. This utility should not be confused with the Enterprise Manager's Instance Manager; they are separate utilities.

Creating an Instance with the Oracle Database Assistant

When you invoke the Database Assistant from the Oracle for Windows NT workgroup, you will see the Database Assistant Welcome screen. This will remain until the Database Assistant has loaded. After the Database Assistant has loaded, you will be prompted with the initial choice as to the function you want to perform (see Figure 5.14).

You have the choice of creating or deleting a database. For the sake of example, let's create a database. To do so, perform the following steps:

1. You can perform either a typical or a custom database creation, as shown in Figure 5.15. A typical database creation creates the standard starter database, whereas the custom installation lets you change parameters such as instance and datafile names. In this example, let's perform the typical database creation. The custom database creation is shown oon Day 6, "Administering Databases and Datafiles."

Figure 5.14.

Database Assistant.

Figure 5.15.

Performing a typical database creation with Database Assistant.

2. As shown in Figure 5.16, you will be asked whether you want to add replication support to this database. If you will be using advanced replication, select the Advanced Replication button. This adds the extra stored-procedure packages used by advanced replication. Replication is covered in detail on Day 18, "Administering Oracle Replication."

3. You will be asked whether you can take advantage of the timesaving feature of copying database files from your CD-ROM rather than creating them, as shown in Figure 5.17. If you do not have the CD-ROM available, you need to create the files.

Figure 5.16.

Select Advanced Replication if you want to add replication support to this database.

Figure 5.17.

Create new database files using Database Assistant.

4. Click the Finish button; the database will be created for you. As usual, you have one last chance to change your mind, as shown in Figure 5.18. If the directory looks correct, click Yes; the database will be created.

Figure 5.18.

Confirm that you want to proceed with the database-creation process.

5. One final screen asks for input and informs you that the database named oracle will be created with the SID orcl. If this is suitable, click OK (see Figure 5.19).

Figure 5.19.

This dialog identifies the new database's name and SID.

Creating the Instance from the Command Line

Creating the instance from the command line uses the same program as the GUI version, but with command-line arguments. The Instance Manager is actually the program named ORADIM80.EXE. To obtain help on the various parameters of ORADIM80, use the command ORADIM80 -?.

Creating the Instance

To create an instance using ORADIM80.EXE, run it with the following arguments:

ORADIM80 -NEW -SID SID -INTPWD password [-MAXUSERS number] 
[-STARTMODE AUTO or MANUAL] [-PFILE pfile_name]

The values for SID and password are mandatory, whereas the values for MAXUSERS, STARTMODE, and PFILE have defaults. Here is an example of creating an instance called dogs:

ORADIM80 -NEW -SID dogs -INTPWD oracle

This will create the instance dogs with a default PFILE of initDOGS.ora and manual startup.

Starting and Stopping the Instance

The instance can be started or stopped from the command line through the use of the following arguments to ORADIM80.EXE:

ORADIM80 -STARTUP -SID SID -PFILE pfile_name 
[-USRPWD password] -STARTTYPE SRVC or INST

or

ORADIM80 -SHUTDOWN -SID SID -PFILE pfile_name 
[-USRPWD password] -SHUTTYPE SRVC or INST -SHUTMODE a,i,n

where the shutdown modes are a=abort, i=immediate, and n=normal.

Modifying the Instance

At times, it becomes necessary to modify the instance you have created. This can be done with the NT Instance Manager or with the ORADIM80.EXE program. Both methods use the executable ORADIM80.EXE. If you do not provide command-line options, the graphical tool will be invoked.


NOTE: The Oracle Database Assistant can be used only to create and delete a database, not to modify one.

Modifying an Instance with the GUI

You can edit an instance by selecting the instance name and then clicking the Edit button (see Figure 5.20).

Figure 5.20.

Select Edit in the Instance Manager.

This will take you to the Edit Instance screen. You have several options available from the Edit screen; from here, you can change the administrative password or the startup mode by clicking a button or typing a value.

Editing the Instance with ORADIM80.EXE

To edit an instance, use the same command with the -EDIT flag like so:


ORADIM80 -EDIT -SID SID -INTPWD password [-MAXUSERS number] 
[-STARTMODE AUTO or MANUAL] [-PFILE pfile_name]

The parameters are the same.

Deleting an Instance Under NT

It is occasionally necessary to delete an instance under Windows NT. This can be accomp-lished via the NT Instance Manager or with the ORADIM80 command, as demonstrated previously.

Deleting an Instance

To delete an instance, select the instance you want to delete and click OK. This deletes the instance and its services from the system.

Deleting the Instance with ORADIM80.EXE

Using ORADIM80.EXE, you can delete an instance or a service. This is done using the -DELETE option like so:

ORADIM80 -DELETE -SID SID

or

ORADIM80 -DELETE -SRVC service

Starting Up the Instance

The Oracle instance can be started manually, automatically, through a graphical tool, or from the command line. In this section, you will look at all the different ways the Oracle instance can be started.

Starting the Instance Automatically

The Oracle instance can be configured to start automatically when NT Server is booted. Configure the instance to start this way by specifying the automatic startup option when the instance is created, as shown in the section called "Creating an Instance with the Oracle Database Assistant." After the instance has been created, you can edit the service OracleStartSID by editing the service properties from the NT Service Manager program.

After you select the service with NT Service Manager, click the Startup button. Here you can change the startup type from Automatic to Manual, as shown in Figure 5.21.

Figure 5.21.

Changing the startup type to Manual.

This invokes the Oracle bootstrap instance at startup, but does not start the main Oracle instance. This can be accomplished as shown in the next section.

Starting the Instance with Enterprise Manager

After the bootstrap instance has been created, you can use Enterprise Manager's Instance Manager to start up and shut down the instance. Invoke the Instance Manager by clicking the Instance tab on the Oracle Enterprise Manager toolbar or through the Enterprise Manager program group, or by using Enterprise Manager. You will be presented with the Instance Manager user information screen shown in Figure 5.22.

Figure 5.22.

The Instance Manager Login Information screen.

Here you need to log on with the internal username and the appropriate password. If you are connecting to an instance that is not the default instance as assigned in the NT Registry, you should specify the service that connects to the desired Oracle instance.

After you connect, you will see the Instance Manager startup screen on the right side and database information screen on the left side, as shown in Figure 5.23. In this example, you will see that the Oracle instance is currently not up.

Figure 5.23.

The Instance Manager main screen provides information about the state of the instance.

To get to the Startup screen, click the Startup tab on the right side of the screen; you will then see the Startup screen, shown in Figure 5.24.

From this screen, you can specify the startup options. The available options are

Figure 5.24.

The Startup screen.

You also have the option of accessing an internally saved configuration file (available only if the instance is started), or specifying a parameter file. Specifying the parameter file allows you to use the parameter file you created for this instance. This is covered in more detail on Day 6.

Clicking the Startup button starts the Oracle instance with the options you have specified.

Starting the Instance with Server Manager

From Server Manager or from a SQL script, you can use the command STARTUP.

The Syntax for STARTUP

The STARTUP command is used to start an Oracle instance and has the following syntax:

SYNTAX:

STARTUP
[PFILE=parameter_file]
[MOUNT or NOMOUNT]
[PEN]
[EXCLUSIVE]
[RESTRICT]
[FORCE]
[RECOVER]

These options, which are approximately the same as with the Instance Manager described previously, are

As you can see, the startup options are the same whether you are using the Instance Manager or the character-based Server Manager. The advantage of using Server Manager is that this can be scripted into the same file as the database-creation scripts.

Shutting Down the Instance

Because much of the data that has been changed in the Oracle database might still be residing in the database buffer cache, a disorderly database shutdown can result in a significant recovery period when the database is started up again. To avoid this, an orderly shutdown should always be performed. Four different types of shutdowns can be performed by Oracle:

The abort shutdown should be used only as a last resort when no other options are available. The immediate shutdown should be used only when it is critical that the instance be shut down as soon as possible. You will typically use the normal shutdown option.

Similar to the instance startup, the instance shutdown can be done graphically (through Enterprise Manager's tools) or via the character-based Server Manager. Both options are presented here.

Shutting Down the Instance Automatically

The Oracle instance can be configured to start automatically when the NT Server is booted, as shown previously. When the instance is configured this way, NT automatically shuts down services that were automatically started. In this way, you might see quite a delay when shutting down NT, but an orderly database shutdown is occurring.

Shutting Down the Instance with the Instance Manager

From the Instance Manager, click the Shutdown tab on the right side of the screen. This invokes the Shutdown screen shown in Figure 5.25.

Figure 5.25.

The Shutdown screen.

Here you can choose Normal, Immediate, or Abort. Normal is the preferred option, although in the event of an urgent shutdown, the Immediate option should be selected. SHUTDOWN ABORT should be used only as a last resort.

Shutting Down the Instance with Server Manager

Shutting down the database with Server Manager can be accomplished through the use of the SHUTDOWN command. This can be useful when you want to shut down the instance from within a script.

The Syntax for SHUTDOWN

The SHUTDOWN command is used to shut down an Oracle instance and has the following syntax:

SYNTAX:

SHUTDOWN
[NORMAL]
or [IMMEDIATE]
or [TRANSACTIONAL]
or [ABORT]

These options, approximately the same as with the Instance Manager, are

I like using the SHUTDOWN command from Server Manager when I am scripting an operation such as a database creation. In this way, the entire procedure can be scripted.

Configuring the Network

After the instance has been created, you must configure the network so you can connect to it. The network configuration serves two purposes:

Let's look at the LISTENER.ORA configuration, then at the client-side configuration.

LISTENER.ORA Configuration

The LISTENER.ORA file is created for each network protocol at installation time. This file defines not only the network protocols, but the Oracle SIDs that can be accessed through the listener. By default, the SID defined in the LISTENER.ORA file is ORAC (from the starter database). The initial LISTENER.ORA file looks like this:

 1: ################
 2: # Filename......: listener.ora
 3: # Node..........: local.world
 4: # Date..........: 24-MAY-94 13:23:20
 5: ################
 6: LISTENER =
 7:   (ADDRESS_LIST =
 8:         (ADDRESS=
 9:           (PROTOCOL= IPC)
10:           (KEY= oracle.world)
11:         )
12:         (ADDRESS=
13:           (PROTOCOL= IPC)
14:           (KEY= ORCL)
15:         )
16:         (ADDRESS=
17:           (COMMUNITY= NMP.world)
18:           (PROTOCOL= NMP)
19:           (SERVER= EDW)
20:           (PIPE= ORAPIPE)
21:         )
22:         (ADDRESS=
23:           (COMMUNITY= TCP.world)
24:           (PROTOCOL= TCP)
25:           (Host= edw)
26:           (Port= 1521)
27:         )
28:         (ADDRESS=
29:           (COMMUNITY= TCP.world)
30:           (PROTOCOL= TCP)
31:           (Host= edw)
32:           (Port= 1526)
33:         )
34:   )
35: STARTUP_WAIT_TIME_LISTENER = 0
36: CONNECT_TIMEOUT_LISTENER = 10
37: TRACE_LEVEL_LISTENER = ADMIN
38: SID_LIST_LISTENER =
39:   (SID_LIST =
40:     (SID_DESC =
41:       (SID_NAME = ORCL)
42:     )
43:   )
44: PASSWORDS_LISTENER = (oracle)

To add an additional SID onto the SID list, simply copy the section of the LISTENER.ORA that describes the SID as shown here and paste it to the LISTENER.ORA file after the ORCL SID definition. The following should be placed on line 43:

(SID_DESC =
      (SID_NAME = ORCL)
    )

Be sure to keep the parentheses correct. Change the SID value to the value of the SID that you have added to your system.

Oracle Net8 Easy Config

In order to administer the TNSNAMES.ORA file, you can use the Oracle Net8 Easy Config utility found in the Oracle for NT tools:

1. When you invoke the Net8 Easy Config utility, you will be greeted with the main screen of the Oracle Service Name wizard. From here you can choose to create a new service or to modify, delete, or test an existing configuration. If you are adding a new service, type the service name and click Next (see Figure 5.26).

Figure 5.26.

Choose to modify, delete, or test a configuration.

2. You will be prompted for the network protocol for this service, as shown in Figure 5.27. Highlight the protocol that you want and click Next.

3. The next screen, shown in Figure 5.28, prompts you for the hostname (if you chose TCP/IP protocol). Enter the hostname of the system. You can change the port number if you want, but that is not recommended.

4. The next screen, shown in Figure 5.29, prompts you for the SID of the instance being configured. If the instance name is correct, click Next.

Figure 5.27.

The Oracle Service Name wizard allows you to choose a network protocol to use for this service.

Figure 5.28.

The Oracle Service Name wizard allows you to change the hostname and port number.

Figure 5.29.

The Oracle Service Name wizard allows you to specify the SID.

5. In the screen shown in Figure 5.30, you can test the newly created service. Although you can skip this step, I don't recommend it. Just click the Test Service button.

Figure 5.30.

The Oracle Service Name wizard lets you decide whether you want to test the connection.

6. Test the connection in the Connection Test screen. If the test is successful, you will be duly informed (see Figure 5.31).

Figure 5.31.

The Connection Test screen allows you to test the connection before saving it.

7. After you finish testing the service, return to the previous screen and click Next to see the final screen of the wizard (see Figure 5.32). If everything was successful, click the Finish button to save the configuration.

Figure 5.32.

Finishing with the Oracle Service Name wizard.

After you click Finish, the application will exit. Your new network configuration is ready to use. You can also manage the network through the Oracle Net8 Assistant.

Modifying the State of the System

During the normal operation of the RDBMS, it is often necessary to modify the state of the instance. These operations actually modify the state of the instance or cause events to occur in the Oracle instance.

Modifying the instance can be done only using the ALTER SYSTEM command. There is currently no way to run these commands via a graphical utility.

Modifying the System using the ALTER SYSTEM Command

Using the ALTER SYSTEM command, you can alter the state of the system or cause some event to occur in the Oracle instance.

The Syntax for ALTER SYSTEM

The ALTER SYSTEM command is run with the following syntax:

SYNTAX:

ALTER SYSTEM
[ENABLE RESTRICTED SESSION]
[DISABLE RESTRICTED SESSION]
[FLUSH SHARED_POOL]
[CHECPOINT [GLOBAL or LOCAL]]
[CHECK DATAFILES [GLOBAL or LOCAL]]
[SWITCH LOGFILE]
[ENABLE DISTRIBUTED RECOVERY]
[DISABLE DISTRIBUTED RECOVERY]
[ARCHIVE LOG archive_log_clause]
[KILL SESSION `SID, serial_no']
[SET ??]

where the options that can be used by the set parameter are

SET
[RESOURCE_LIMIT = TRUE or FALSE]
[GLOBAL_NAMES = TRUE or FALSE]
[SCAN_INSTANCES = number]
[CACHE_INSTANCES = number]
[MTS_SERVERS = number]
[MTS_DISPATCHERS = `protocol' , `number']
[LICENSE_MAX_SESSIONS = number]
[LICENSE_SESSIONS_WARNING = number]
[LICENSE_MAX_USERS = number]
[REMOTE_DEPENDENCIES_MODE = TIMESTAMP]
or  [REMOTE_DEPENDENCIES_MODE = SIGNATURE]

The parameters used to alter the system are defined as follows:


TIP: This can be very useful for temporarily restricting new users from logging onto the system if you think there might be some sort of problem or a load issue. By restricting the sessions, you are not causing problems to current users; you are simply preventing new users from logging on. You can reverse this without shutting down the instance.


TIP: If you anticipate that the system might need to be shut down or you feel you might be in danger of losing power, you can checkpoint the system, thus shortening any recovery time you might need in the event of a failure.


TIP: This can be useful for stuck or nonresponding sessions. This can also be done through the Instance Manager.

Summary

This lesson covers quite a bit of material that introduces the Oracle administrative duties and tools. The day begins by looking at the various duties of the DBA. It later presents the various default accounts used by the DBA to connect to the Oracle instance and how they are used.

A major part of this chapter looks at the tools of the trade. I am really happy with the work Oracle has done to create Enterprise Manager and the applications that go with it. Along with Enterprise Manager are tools such as Instance Manager, Storage Manager, Schema Manager, Security Manager, and Backup Manager. You will see these in more detail later on in this book.

You saw how to invoke Enterprise Manager and how to configure the different panes, as well as how to use the Discover New Services wizard to determine the services available for administration by Enterprise Manager.

For those of you running on the Windows NT platform, this chapter demonstrates how to create the Oracle bootstrap instance. Because Oracle is a service under NT, it needs this bootstrap instance to allow you to connect, and to start up and shut down the Oracle instance.

You also learned how to use the various network tools to configure the TOPOLOGY.ORA and TNSNAMES.ORA files, as well as how to configure the LISTENER.ORA file. These are the key components to the Oracle networking system.

Finally, you learned how to alter the instance. This is not typically done, but is occasionally necessary to initiate a checkpoint by hand or to manually archive a redo log file. In any case, it is good to know how to perform these operations when necessary.

What's Next?

Tomorrow you will learn how to create an Oracle database. This is the first of two days that take you through the process of creating redo log files, control files, and datafiles, and building the initial database. In the second of these days, you will learn how to build on that initial starter database and add your own tablespaces and datafiles. After you finish Days 6 and 7, "Administering Tablespaces," you will be able to create your own database.

Q&A

Q What is the primary duty of the DBA?

A The primary duty of the DBA is to protect the database and provide continuous (if required) access to that data for the user community.

Q Should all DBAs use the SYS account?

A A lot of installations have their DBAs use the SYS account, but I think it is better to provide all the DBAs with accounts that have the proper level of permissions. User permissions are discussed on Day 10.

Q Is it better to use the graphical tools or Server Manager?

A Both tools have their place. The Enterprise Manger tools are absolutely great. I really like using them, but there are times when I just can't get the job done without using Server Manager.

Q Why does an instance need to be created before the database can be created?

A This is unique to Windows NT. The Windows NT system uses services to run the Oracle instance. The bootstrap instance must be created so Instance Manager or Server Manager can connect to it to start up the full instance.

Workshop

The workshop provides quiz questions to help you solidify your understanding of the material covered and exercises to provide you with experience in using what you've learned. Find the answers to quiz questions in Appendix A, "Answers."

Quiz

1. What two accounts are created by default when a database is created?

2. What are some duties of the DBA?

3. How can you protect the system against data loss?

4. What two OS roles are created by default when a database is created?

5. What is the bootstrap instance?

6. What is the TNSNAMES.ORA file for?

7. How do you administer the TNSNAMES.ORA file?

8. What tool is used to modify the state of the system (that is, cause a checkpoint to occur, and so on)?

Exercises

1. Create a new Oracle instance using the NT Instance Manager.

2. Create a new Oracle instance using the ORADIM80 command.

3. Add this instance to the TNSNAMES.ORA file using the Oracle Network Configuration wizard.

4. Add this instance to the TOPOLOGY.ORA file using the Network Topology Generator.


Previous chapterNext chapterContents


© Copyright, Macmillan Computer Publishing. All rights reserved.