3 Getting Started with Database Administration

This chapter provides a brief roadmap for administering your database, and introduces you to Oracle Enterprise Manager Database Control (Database Control), the Web-based interface for managing an Oracle database.

Managing Your Database: A Roadmap

This section provides an overview of the tasks involved in managing an Oracle database instance. Each task is described in detail in a different chapter in this guide.

To manage your Oracle database:

Start the database instance. At the end of the installation, your instance is already started and your database is open. In the future, there will be times, perhaps for doing database maintenance or because of a power or media failure, that you shut down your database instance and later restart it.

Database Management Features

Using Database Control, you can perform administrative tasks such as creating schema objects (tables, views, indexes, and so on), managing user security, managing database memory and storage, backing up and recovering your database, and importing and exporting data. You can also view performance and status information about your database.

Database Home Page

The main Database Control page for database administration is called the Database Home page. This is the page that loads when you log in to Database Control.

Online Help

You can access context-sensitive online Help by clicking the Help link displayed at the top of every page. On any Help page, click Contents for links to all Help topics. A search facility enables you to search the contents of Help.

Navigational Features

Navigational features of the Database Home page include the following:

Subpage links at the top of the page. These links take you to the various Database Control subpages that organize management tasks into distinct categories. For example, you click Availability to perform tasks associated with backing up and recovering your data.

Starting and Stopping the Database Control Console Process

To access Oracle Enterprise Manager Database Control (Database Control) from a client browser, the Database Control console process dbconsole needs to be running on the database host computer. The dbconsole process is automatically started after installation. However, in the event that the system needs to be restarted, you can start it manually at the command line or start it as a service in Windows. You can also run commands to stop the dbconsole process or view its status. If the dbconsole process is stopped, it must be manually restarted before you use the Database Control console.

To start or stop, or to view the status of the dbconsole process from the command line:

Open a operating system command window and go to your Oracle_home/bin directory.

Do one of the following:

To start the dbconsole process, run the following command:

./emctl start dbconsole

To stop the dbconsole process, run the following command:

./emctl stop dbconsole

To view the status of the dbconsole process, run the following command:

./emctl status dbconsole

To start or stop dbconsole as a service on Microsoft Windows:

Do one of the following:

On Windows XP and Windows Server 2003, click Start, and then select Control Panel.

On Windows 2000 Server, click Start, select Settings, and then select Control Panel.

The Control Panel window opens.

Double-click the Administrative Tools icon, and then double-click the Services icon.

The Services window opens. Oracle Database services begin with Oracle. The dbconsole service is listed as OracleDBConsoleOracle_sid, where Oracle_sid is the system identifier (SID) for your database instance. The status of this process (either Started or Stopped) is listed in the Status column.

Double-click the OracleDBConsoleOracle_sid service.

The service properties window opens.

In the Startup Type list, ensure that either Manual or Automatic is selected.

Do one of the following:

To start dbconsole, click Start, and then click OK.

To stop dbconsole, click Stop, and then click OK.

Accessing the Database Home Page

The Database Home page is the main database management page in Oracle Enterprise Manager Database Control (Database Control).

To access the Database Home page:

Ensure that the dbconsole process is running on the database host computer.

For example, if you installed the database on a host computer named comp42.example.com, and the installer indicated that your Enterprise Manager Console HTTP port number is 1158, enter the following URL:

https://comp42.example.com:1158/em

You can determine the port number for Database Control on Linux and UNIX systems by viewing the Oracle_home/install/portlist.ini file. On Microsoft Windows systems, you can determine the URL for Database Control by viewing the Database Control Properties window. To view this window, use the Start menu, navigate to the Database Control entry in the Oracle home folder, then right-click this entry and select Properties.

When you access Database Control, if the database is running, it displays the Login page. If the database is down and needs to be restarted, Database Control displays the Startup/Shutdown and Perform Recovery page.

You must do the following to start the database:

Click Startup/Shutdown, enter the host login user name and password, and then enter the database login user name and password.

For the database user name and password, use SYS and the password that you specified during installation.

Click OK to start the database, and then in the Confirmation page, click Yes to start the database in open mode.

Log in to the database with a user account that is authorized to access Database Control. This initially could be SYS or SYSTEM, with the password that you specified during database installation.

For typical day-to-day administrative tasks, it is recommended that you log in with the SYSTEM account. If you want to back up, recover, or upgrade the database, you must log in with the SYS account.

The subpage links across the top of the page enable you to access performance, availability, and other administration pages to manage your database. The features provided by these pages are discussed in other sections of this guide.

The various sections of the Database Home page provide information about the environment and status of the database. For example, the Alerts and Diagnostic Summary sections warn you of errors and performance problems that are impacting the operation of your database. You can click the provided links to see more detail about the problem areas, and, in some cases, to obtain recommendations for resolving the problems. This is discussed in Chapter 10, "Monitoring and Tuning the Database".

Granting Access to Database Control for Nonadministrative Users

As a database administrator, you can log in to Oracle Enterprise Manager Database Control (Database Control) with the SYS or SYSTEM user account to perform administrative and other tasks. Nonadministrative users may also want to log in to Database Control. For example, application developers may want to take advantage of the Database Control graphical user interface to create or modify tables, indexes, views, and so on. You must grant access to Database Control to these users before they can log in.

Creating Database Control Administrative Users

When you log in to Oracle Enterprise Manager Database Control (Database Control) using the SYS, SYSTEM, or SYSMAN user accounts, you are logging in as the Database Control super user. These are the only accounts that are automatically granted the roles and privileges required to administer Database Control itself. Examples of Database Control administration tasks include the following:

Selecting database policies to apply, so that Database Control can show alerts if a policy is violated. (An example policy is "A nonsystem user cannot use the SYSTEM or SYSAUX tablespace as its default tablespace.")

Defining blackouts, which are time periods in which database monitoring is suspended so that maintenance operations do not skew monitoring data or generate needless alerts.

You can create Database Control administrative users who have enough privileges to administer Database Control itself, but lack the high-level database administration privileges of the SYS and SYSTEM users. This enables you to assign the minimum privileges required for other Database Control administrators to do their jobs, which is a best practice for database security. You can also create a Database Control administrative account for yourself, thus avoiding logging in as SYS or SYSTEM until you must perform database administration tasks.

Using the following procedure, you can assign Database Control administrative privileges to an existing database user or create a new Database Control administrative user. When you create a new Database Control administrative user, a user account is created for that user for the database. You must then decide which system privileges, object privileges, or roles to grant the user, if any, to perform database administration tasks.

About Database Control Preferences

Oracle Enterprise Manager Database Control (Database Control) enables you to set user preferences in the following areas:

Notification

These settings enable Database Control to e-mail you alerts. Alerts are notifications that the database is in an undesirable state and needs your attention. By default, the Database Home page lists all alerts. However, setup is required for e-mail notification. For more information about alerts and setting up notifications, see "Setting Up Direct Alert Notification".

Blackout Administration

Blackouts suspend the collection of database monitoring data and the sending of alerts by Database Control. This enables you to perform scheduled maintenance on the database without receiving needless alerts and without skewing the monitoring data. For example, you can stop data collections during a database backup or a hardware upgrade. If you continue monitoring during these periods, the collected data will show trends and other monitoring information that are not the result of typical day-to-day operations. To get a more accurate, long-term picture of database performance, you can use blackouts to exclude these special-case situations from data analysis. See "Defining Blackout Periods" for more information.

Preferred Credentials

Database Control can automatically execute many routine administrative tasks, such as backups. This is done using a job scheduling system built into Database Control. To keep your environment secure, setting up tasks for automatic execution in Enterprise Manager requires you to provide login information for the host computer and database. To avoid entering this information every time you create or run a job or task, Database Control enables you to save this information as preferred credentials. Preferred credentials are stored in the database in encrypted mode to protect them from unauthorized use. See "Setting Preferred Credentials".

Defining Blackout Periods

You can define one or more one-time or repeating blackout periods during which collection of database monitoring information and the sending of alerts are suspended.

Setting Preferred Credentials

When you set preferred credentials, Database Control automatically fills in host computer and database login credentials for you at times when it usually prompts for these credentials, or when it is about to run a job that requires credentials.

To set preferred credentials for the database:

From any Database Control page, at the top of the page, click Preferences.

In the table row for the Database Instance, click the icon under Set Credentials.

The Preferred Credentials page appears.

Enter database credentials for Normal Username/Password and SYSDBA Username/Password, and enter host credentials for Host Username/Password. For example, you might typically connect as the user SYSTEM, use the SYS account for SYSDBA access, and use oracle for the host user name.

Note:

The host user may require certain host privileges to run background jobs such as database backups. For example, on UNIX and Linux, the host user must belong to the OSDBA group (typically dba), and on Windows, the host user must be a member of the Administrators group and must be granted the Logonasbatchjob logon right. See your platform documentation for more information.

Click Test to test your credentials.

A confirmation message is displayed if your credentials can be verified.

Click Apply to apply the changes.

About SQL and SQL-Based Management Tools

To perform many of its operations, Oracle Enterprise Manager Database Control (Database Control) submits structured query language (SQL) statements to the database. SQL (pronounced like sequel) is an industry-standard English-like computer programming language for querying and updating databases.

The following is an example of a SQL query that lists information about countries in a countries table, which is owned by user hr:

SELECT COUNTRY_ID, COUNTRY_NAME FROM HR.COUNTRIES;

SQL is a powerful language that can also be used to perform a variety of database administration tasks. The following SQL statement creates the database user nick and assigns him a password of your choosing, represented by password:

CREATE USER nick IDENTIFIED BY password;

When performing an administrative task in Database Control, you can click Show SQL to see the SQL statements that Database Control generates and submits.

In addition to using the graphical management pages presented in Database Control, you can use other Oracle tools such as SQL Developer and SQL*Plus to issue SQL statements. These tools enable you to perform database management operations, and to query, insert, update, or delete data directly in the database. The following sections provide details:

About SQL*Plus

SQL*Plus is a command-line program that you use to submit SQL and PL/SQL statements to an Oracle database. You can submit statements interactively or as SQL*Plus scripts. SQL*Plus is installed with the database and is located in your Oracle_home/bin directory.

You can start SQL*Plus from the command line, or on Microsoft Windows, from the Start menu.

When SQL*Plus loads, it issues the SQL prompt, which looks like this:

SQL>

At the SQL prompt, you can enter statements that perform administrative tasks such as shutting down the database or creating a new user, or you can query, insert, update, and delete data.

You can enter a single SQL statement on multiple lines. You must end each statement with a semicolon (;). For most statements, you can rerun a statement by entering a forward slash (/) on a line by itself.

Starting SQL*Plus and Connecting to the Database

The section describes how to start SQL*Plus and connect to the database from both the command line and the Windows start menu.

To start SQL*Plus and connect to the database from the command line:

Open a command window.

(Linux and UNIX systems only) Set the required environment variables (ORACLE_HOME and ORACLE_SID) by running the script oraenv (for the Bourne, Korn, or Bash shell) or coraenv (for the C shell).

These scripts are typically located in the /usr/local/bin directory. They may prompt you for the desired value of the ORACLE_SID environment variable. If so, supply the system ID (SID) that you chose when you installed Oracle Database. The default SID that the installer typically suggests is orcl.

(Linux and UNIX systems only) Either ensure that the Oracle_home/bin directory is in your PATH environment variable, or change to the Oracle_home/bin directory.

Enter the following command:

sqlplus {username | /} [as sysdba]
Enter password: password

SQL*Plus connects you to the default database instance (Microsoft Windows) or the database instance specified by the environment variables (Linux and UNIX).

For username, you can use the SYS or SYSTEM administrative users. At the prompt, enter the password that you set up during installation. If you use the SYS user, you must include as sysdba after the username.

When you enter SYS or a slash (/) as the user name and provide the assysdba clause, you are authenticating using operating system authentication. Operating system authentication uses your Windows, UNIX, or Linux host user account to authenticate you to Oracle Database. You must have logged in to the host computer with a user account that is a member of a special host user group. On UNIX and Linux, this user group is typically dba. This type of authentication enables you to connect to an Oracle database that is not yet started, so that you can start it up. See Oracle Database Administrator's Guide for more information.

To start SQL*Plus and connect to the database from the Windows Start menu:

Click Start, select Programs (or All Programs), then Oracle -HOME_NAME, then ApplicationDevelopment, and then SQL*Plus.

When prompted, enter the user name and password for the account that you want to use to connect to the database.

For the user name, you can use the SYS or SYSTEM administrative accounts, and you can use the password that you set up during installation.

If you use SYS or / as the user name, follow them with a space and then the clause assysdba, as shown in the following examples:

When you enter SYS or a slash (/) as the user name and provide the assysdba clause, you are authenticating using operating system authentication. Operating system authentication uses your Windows, UNIX, or Linux host user account to authenticate you to Oracle Database. You must have logged in to the host computer with a user account that is a member of a special host user group. On UNIX and Linux, this user group is typically dba for the sysdba privilege. This type of authentication enables you to connect to an Oracle database that is not yet started, so that you can start it up. See Oracle Database Administrator's Guide for more information.

About SQL Developer

SQL Developer provides another graphical user interface for accessing your Oracle database. SQL Developer supports development in both the SQL and PL/SQL languages. It is available in the default installation of Oracle Database.

With SQL Developer, you can browse database objects, run SQL statements and SQL scripts, and edit and debug PL/SQL statements. You can also run any number of provided reports, as well as create and save your own.