1 Introduction

Oracle Database XE is easy to install. The installation has the following components:

Oracle Database XE Server: The Oracle Database XE Server component provides both an Oracle database and tools for managing this database. It also includes the client component of Oracle Database XE, so that you can connect to the database from the same computer on which you installed the server component, and then administer the database and develop Java, .NET, PHP, and Oracle Application Express applications.

Oracle Database XE Client: You install the Oracle Database XE client component on remote computers from which you want to connect to Oracle Database XE. Oracle Database Client provides drivers, networking components, and tools that enable you to remotely administer the database and to develop Java, .NET, PHP, and Oracle Application Express applications. Use this installation executable only on remote computers—that is, only on computers on which you do not install Oracle Database XE Server.

computers

After you install Oracle Database XE, you can manage it by using the Oracle Database XE graphical user interface management console, described in Oracle Database Express Edition 2 Day DBA.

In addition, you can use PHP with Oracle Database XE. PHP is an open-source server-side embedded scripting language that is designed for Web development and can be embedded in HTML. You can use either of the following PHP products:

2.1.3 Server Component Kernel Parameter Requirements

The Oracle Database XE installation checks your system for the following kernel parameter settings. If the kernel parameters of your system are less than the values listed in Table 3, then the installation will modify the kernel parameter setting to use the values in this table.

Table 3 Kernel Parameter Settings Required for Oracle Database XE

Kernel Parameter

Setting

semmsl

250

semmns

32000

semopm

100

semmni

128

shmmax

536870912

shmmni

4096

shmall

2097152

file-max

65536

ip_local_port_range

1024–65000

2.2 Permissions Requirement for Installing Oracle Database XE

You must have root permissions to install Oracle Database XE.

2.3 Web Browser Requirements

For both the server and client components of Oracle Database XE, ensure that the Web browsers you plan to use support JavaScript and the HTML 4.0 and CSS 1.0 standards. Ensure also that cookies are enabled. The following browsers meet this requirement:

Netscape Navigator 7.2 or later

Mozilla 1.7 or later

Firefox 1.0 or later

Oracle Application Express does not support the Corel SVG Viewer.

2.4 Configuring Your Web Browser

Before you can run Oracle Database XE, you need to configure your Web browser so that it can connect to the Oracle Database XE Database Home Page.

3.1 Oracle Database XE CPU Limitations

If Oracle Database XE Server is installed on a computer with more than one CPU (including dual-core CPUs), then it will consume, at most, processing resources equivalent to one CPU. For example, on a computer with two CPUs, if two Oracle database clients try to simultaneously execute CPU-intensive queries, then Oracle Database 10g Standard Edition, Oracle Database 10g Standard Edition One, or Oracle Database 10g Enterprise Edition will use both CPUs to efficiently process the queries. However, with Oracle Database XE Server, the Oracle database will process the queries at the rate of a single CPU even if concurrent processing on two CPUs would be faster. To use the full processing resources of your computer, upgrade to Oracle Database 10g Standard Edition, Oracle Database 10g Standard Edition One, or Oracle Database 10g Enterprise Edition.

3.2 Oracle Database XE Installation and Execution Restrictions

On a single computer, only one installation of the Oracle Database XE software can be performed. This does not affect any existing installation or new installations of Oracle Database 10g Standard Edition, Oracle Database 10g Standard Edition One, or Oracle Database 10g Enterprise Edition. In addition, users can run only one instance of the Oracle Database XE database on each individual computer. To run more than one Oracle Database server instance or install more than one copy of the database software, upgrade to Oracle Database 10g Standard Edition, Oracle Database 10g Standard Edition One, or Oracle Database 10g Enterprise Edition.

3.4 Oracle Database XE Server RAM Limitation

The maximum amount of RAM that an Oracle Database XE Server database uses cannot exceed 1 gigabyte, even if more is available. Table 1, "Oracle Database XE Requirements" provides the minimum and recommended RAM that you should use. The exact amount of RAM that Oracle Database XE uses is the sum of the System Global Area (SGA) and the aggregate Program Global Area (PGA). To find this value, follow these steps after you have installed Oracle Database XE:

Click the Main menu (on Gnome) or the K menu (on KDE), select Oracle Database 10g Express Edition, and then select Go to Database Home Page.

3.5 HTTPS Support

HTTPS is not supported natively with the HTTP listener built into Oracle Database XE. If you want HTTPS support, use an alternative Web listener, such as Apache, that does provide HTTPS support, and provide proxies for the URLs provided by Oracle Database XE.

For information how you can manage security in Oracle Database XE, refer to Oracle Database Express Edition 2 Day DBA.

4 Installing Oracle Database XE Server

The Oracle Database XE Server installer creates both server and client components in one installation. If you plan to use Oracle Database XE as a standalone product, you only need to install this server component, not the client component that is described under "Installing Oracle Database XE Client".

4.1 Procedure for Installing Oracle Database XE Server

If you have an existing version of Oracle Database XE, you can save your data by exporting it to data files. After you install the new version of Oracle Database XE, you can import this data into the new database. For more information, see Oracle Database Express Edition 2 Day DBA.

Click Free Download and follow the instructions to select and download the Linux version of Oracle Database XE Server.

Run one the following Oracle Database XE executables to either install or upgrade Oracle Database XE server:

For Linux operating systems that use Debian:

Universal character set: oracle-xe-universal_10.2.0.1-1.0_i386.deb

Western European character set: oracle-xe_10.2.0.1-1.0_i386.deb

For all other supported Linux operating systems:

Universal character set: oracle-xe-univ-10.2.0.1-1.0.i386.rpm

Western European character set: oracle-xe-10.2.0.1-1.0.i386.rpm

For example, if you downloaded the oracle-xe-universal_10.2.0.1-1.0_i386.deb executable into a directory called downloads, you would enter the following command:

$ dpkg -i downloads/oracle-xe-universal_10.2.0.1-1.0_i386.deb

If you downloaded the oracle-xe-univ-10.2.0.1-1.0.i386.rpm executable, you would enter this command:

$ rpm -ivh downloads/oracle-xe-univ-10.2.0.1-1.0.i386.rpm

The installation displays a status of its progress.

When prompted, run the following command:

$ /etc/init.d/oracle-xe configure

Enter the following configuration information:

A valid HTTP port for the Oracle Database XE graphical user interface (the default is 8080)

A valid port for the Oracle database listener (the default is 1521)

A password for the SYS and SYSTEM administrative user accounts

Whether you want the database to start automatically when the computer starts

If you enter Yes, then the database starts immediately

If you need to change the configuration settings, then you can do so by running the following command:

$ /etc/init.d/oracle-xe configure

To start the database manually, run this command:

$ /etc/init.d/oracle-xe start

To stop the database manually, use the following command:

$ /etc/init.d/oracle-xe stop

Note:

You can find the database creation logs in $ORACLE_HOME/config/log/*.

4.2 Performing a Silent Installation

To perform a silent installation of Oracle Database XE Server, you need to create a response file and a wrapper shell script to perform the silent installation. The silent installation response file handles the configuration information

After you complete the silent installation, set the Oracle Database XE Server environment variables, which is described next.

Note:

You can find the database creation logs in $ORACLE_HOME/config/log/*.

4.3 Setting the Oracle Database XE Server Environment Variables

After you have installed and configured Oracle Database XE Server, users must set their environment before they use Oracle Database XE. They do not need to log on with root permissions to do so. Oracle Database XE provides a script that sets the necessary environment variables.

Follow these steps:

Go to the following directory:

/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin

Look for the following scripts:

oracle_env.csh (for C or tcsh shell)

oracle_env.sh (for Bourne, Bash, or Korn shell)

Run the appropriate script for your shell. For example:

Bourne, Bash, or Korn shell:

$ . ./oracle_env.sh

C or tcsh shell:

% source oracle_env.csh

You may also want edit your login or profile files so that these environment variables are set properly each time you log in or open a new shell.

For Bourne, Bash, or Korn shell, enter the following line into the .bash_profile (to log in) or .bashrc file (to open a new shell):

4.4 Making Oracle Database XE Server Available to Remote Clients

After you install Oracle Database XE Server, its graphical user interface is only available from the local server, not remotely.

Security Note:

With remote HTTP access to Oracle Database XE, all information exchanged between the browser and the database is in clear text—that is, unencrypted—including database user names and passwords. If this is cause for concern, do not enable remote HTTP connection to the database.

If you want to use a Web browser, follow these steps:

Start Oracle Database XE.

Click the Application menu (on Gnome) or the K menu (on KDE), then point to Oracle Database 10g Express Edition, and then Go To Database Home Page.

In the Database Login page, log in as SYSTEM, enter the password, and then click Login.

In the Oracle Database XE home page, click Administration.

Under Tasks, click Manage HTTP Access.

Under Manage HTTP Access, select Available from local server and remove clients.

Click Apply Changes.

If you prefer to use the SQL Command Line, follow these steps:

Start SQL*Plus and log in as SYSTEM:

$ sqlplus system
Enter password: SYSTEM_password

Or, if you are logging in remotely:

$ sqlplus system@xe_server_host_name
Enter password: SYSTEM_password

At the SQL prompt, enter the following command:

SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);

For more information on enabling a remote connection to the Oracle Database XE database, see Oracle Database Express Edition 2 Day DBA.

4.5 Compiling the Oracle ODBC Driver Demos

If you plan to compile and run the Oracle ODBC Driver demos, then follow these steps:

If you do not have unixODBC DriverManager installed, then download it from the following Web site:

Click Downloads and follow the instructions to download one of the following installation executables:

For Linux operating systems that use Debian: oracle-xe-client_10.2.0.1-1.0_i386.deb

For all other supported Linux operating systems: oracle-xe-client-10.2.0.1-1.0.i386.rpm

Run the executable to either install Oracle Database XE Client or upgrade to a newer version.

For example, for Linux operating systems that use Debian, you would enter the following command:

$ dpkg -i oracle-xe-client_10.2.0.1-1.0_i386.deb

For all other Linux operating systems, you would enter this command:

$ rpm -ivh oracle-xe-client-10.2.0.1-1.0.i386.rpm

The installation will display a status of its progress.

5.2 Setting the Oracle Database XE Client Environment Variables

After you have installed and configured Oracle Database XE Client, users must set their environment before they use Oracle Database XE. They do not need to log on with root permissions to do so. Oracle Database XE provides a script that sets the necessary environment variables.

Follow these steps:

Go to the following directory:

/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/bin

Look for the following scripts:

oracle_env.csh (for C or tcsh shell)

oracle_env.sh (for Bourne, Bash, or Korn shell)

Run the appropriate script for your shell. For example:

Bourne, Bash, or Korn shell:

$ . ./oracle_env.sh

C or tcsh shell:

% source oracle_env.csh

You may also want edit your login or profile files so that these environment variables are set properly each time you log in or open a new shell.

For Bourne, Bash, or Korn shell, enter the following line into the .bash_profile (to log in) or .bashrc file (to open a new shell):

5.3 Connecting to the Database from Oracle XE Client

6 Starting Oracle Database XE

After you have installed Oracle Database XE, the database is up and running and you can begin using it right away. To start using Oracle Database XE, you can go to the Database Home Page in the Oracle Database XE graphical user interface.

Follow these steps:

To access the Database Home Page, click the Main menu (on Gnome) or the K menu (on KDE), select Oracle Database 10g Express Edition, and then select Go to Database Home Page.

If Oracle Database XE Server is installed on another computer, then you can access it from the following URL:

http://host:port/apex/

In this URL:

host is the host name or IP address of the computer where Oracle Database XE Server is installed. If Oracle Database XE Server is on your local computer, then you can enter localhost as the host name.

Note that the URL in the browser by default points to the localhost IP address 127.0.0.1. If you want another user to access your Oracle Database XE installation, then provide the host name or IP address of your computer.

port is the TCP port that the Oracle Database XE HTTP listener is listening on. The person installing Oracle Database XE set this port number during configuration. Normally it is set to 8080.

For example, if Oracle Database XE Server was installed on a computer with the host name shobeen with the default port number 8080, you would access the Database Home Page at this URL:

http://shobeen:8080/apex/

Log in to the database using the user name SYSTEM, and supply the password that you created during configuration.

To begin learning about Oracle Database XE, use the following documents:

Oracle Database Express Edition Getting Started Guide is a quick tutorial that gets you up and running using Oracle Database XE. You learn how to start Oracle Database XE and create a small application. To access this tutorial, click Getting Started on the Database Home Page.

Oracle Database Express Edition 2 Day DBA provides more detailed information on the best way to start using Oracle Database XE. To access this manual and the rest of the documentation set, click Documentation under External Links on the Database Home Page.

7 Deinstalling Oracle Database XE

When you deinstall Oracle Database XE, all components, including data files, the database, and the software, are removed. If you want to save your data files but remove the Oracle Database XE software and database, then first export the data by using one of the methods described in Oracle Database Express Edition 2 Day DBA before you deinstall.

Because the deinstallation process removes all files from the directory in which Oracle Database XE is installed, back up any files from the directory (if needed) before you deinstall.

8 Preserving Database Data Across Deinstall/Reinstall

The following steps provide a method of preserving your database data when you deinstall and then reinstall the same release of Oracle Database XE Server. Refer to Oracle Database Express Edition 2 Day DBA for step details.

Create a directory in a location that is outside the standard Oracle Database XE directory structure. This directory will be the new location for the flash recovery area.

For example, create the directory outside the /usr/lib/oracle/xe directory.

Move the flash recovery area to this new directory.

See "Setting the Flash Recovery Area Location," in Chapter 6, for instructions.

Perform a complete backup of the database to the new flash recovery area by running the Backup Database command from the desktop.

See "Backing Up the Database," in Chapter 11, for instructions. Ensure that you see the message Backup of the database succeeded before proceeding.

11.1 About the NLS_LANG Parameter

Oracle provides globalization support that enables users to interact with a database in their preferred locale and character set settings. Setting the NLS_LANG environment variable specifies locale behavior for Oracle software. It sets the language and territory used by the client application and the database server. It also sets the character set for entering and displaying data by a client program, such as SQL*Plus.

The NLS_LANG parameter uses the following format:

NLS_LANG=LANGUAGE_TERRITORY.CHARACTER_SET

This format is explained in the following table:

Parameter

Description

LANGUAGE

Specifies the language for displaying product messages, day names, and month names in SQL.

Oracle Database Globalization Support Guide provides more information about languages.

TERRITORY

Specifies the cultural-specific conventions for date, number, time, and monetary formatting.

Oracle Database Globalization Support Guide provides information about the NLS_LANG parameter and Globalization Support initialization parameters.

11.2 Default Values for NLS_LANG

The locale setting of your Linux session affects how you should set your NLS_LANG parameter. Table 4 lists the different Linux languages and their default locale IDs, together with the corresponding NLS_LANG values.

Table 4 NLS_LANG Parameter Values for Linux Locales

Language

Locale ID

NLS_LANG

English (American)

en_US.UTF-8

AMERICAN_AMERICA.AL32UTF8

English (American)

en_US.ISO-8859-1

AMERICAN_AMERICA.WE8ISO8859P1

English (American)

en_US.ISO-8859-15

AMERICAN_AMERICA.WE8ISO8859P15

English (Australian)

en_AU.UTF-8

ENGLISH_AUSTRALIA.AL32UTF8

English (Australian)

en_AU.ISO-8859-1

ENGLISH_AUSTRALIA.WE8ISO8859P1

English (Australian)

en_AU.ISO-8859-15

ENGLISH_AUSTRALIA.WE8ISO8859P15

English (British)

en_GB.UTF-8

ENGLISH_UNITED KINGDOM.AL32UTF8

English (British)

en_GB.ISO-8859-1

ENGLISH_UNITED KINGDOM.WE8ISO8859P1

English (British)

en_GB.ISO-8859-15

ENGLISH_UNITED KINGDOM.WE8ISO8859P15

English (Ireland)

en_IE.UTF-8

ENGLISH_IRELAND.AL32UTF8

English (Ireland)

en_IE.ISO-8859-1

ENGLISH_IRELAND.WE8ISO8859P1

English (Ireland)

en_IE.ISO-8859-15

ENGLISH_IRELAND.WE8ISO8859P15

German

de_DE.UTF-8

GERMAN_GERMANY.AL32UTF8

German

de_DE.ISO-8859-1

GERMAN_GERMANY.WE8ISO8859P1

German

de_DE.ISO-8859-15

GERMAN_GERMANY.WE8ISO8859P15

French

fr_FR.UTF-8

FRENCH_FRANCE.AL32UTF8

French

fr_FR.ISO-8859-1

FRENCH_FRANCE.WE8ISO8859P1

French

fr_FR.ISO-8859-15

FRENCH_FRANCE.WE8ISO8859P15

Italian

it_IT.UTF-8

ITALIAN_ITALY.AL32UTF8

Italian

it_IT.ISO-8859-1

ITALIAN_ITALY.WE8ISO8859P1

Italian

it_IT.ISO-8859-15

ITALIAN_ITALY.WE8ISO8859P15

Spanish

es_ES.UTF-8

SPANISH_SPAIN.AL32UTF8

Spanish

es_ES.ISO-8859-1

SPANISH_SPAIN.WE8ISO8859P1

Spanish

es_ES.ISO-8859-15

SPANISH_SPAIN.WE8ISO8859P15

Spanish (Mexico)

es_MX.UTF-8

MEXICAN SPANISH_MEXICO.AL32UTF8

Spanish (Mexico)

es_MX.ISO-8859-1

MEXICAN SPANISH_MEXICO.WE8ISO8859P1

Spanish (Mexico)

es_MX.ISO-8859-15

MEXICAN SPANISH_MEXICO.WE8ISO8859P15

Portuguese (Brazilian)

pt_BR.UTF-8

BRAZILIAN PORTUGUESE_BRAZIL.AL32UTF8

Portuguese (Brazilian)

pt_BR.ISO-8859-1

BRAZILIAN PORTUGUESE_BRAZIL.WE8ISO8859P1

Portuguese (Brazilian)

pt_BR.ISO-8859-15

BRAZILIAN PORTUGUESE_BRAZIL.WE8ISO8859P15

Japanese

ja_JP.EUC-JP

JAPANESE_JAPAN.JA16EUC

Japanese

ja_JP.UTF-8

JAPANESE_JAPAN.AL32UTF8

Korean

ko_KR.EUC-KR

KOREAN_KOREA.KO16KSC5601

Korean

ko_KR.UTF-8

KOREAN_KOREA.AL32UTF8

Chinese (simplified)

zh_CN.GB18030

SIMPLIFIED CHINESE_CHINA.ZHS32GB18030

Chinese (simplified)

zh_CN.UTF-8

SIMPLIFIED CHINESE_CHINA.AL32UTF8

Chinese (traditional)

zh_TW.BIG5

TRADITIONAL CHINESE_TAIWAN.ZHT16BIG5

Chinese (traditional)

zh_TW.UTF-8

TRADITIONAL CHINESE_TAIWAN.AL32UTF8

11.3 Supported Character Sets

Table 5 lists the supported character sets in Oracle Database XE. The list is ordered alphabetically in each language group.

The character set AL16UTF16 can be used only as an NCHAR character set, and not as a database character set.

Table 5 Supported Character Sets

Name

Description

Asian

JA16EUC

EUC 24-bit Japanese

JA16EUCTILDE

The same as JA16EUC except for the way that the wave dash and the tilde are mapped to and from Unicode

JA16SJIS

Shift-JIS 16-bit Japanese. The same as JA16SJISTILDE except for the way that the wave dash and the tilde are mapped to and from Unicode

JA16SJISTILDE

Microsoft Windows Code Page 932 Japanese

KO16KSC5601

KSC5601 16-bit Korean

KO16MSWIN949

Microsoft Windows Code Page 949 Korean

TH8TISASCII

Thai Industrial Standard 620-2533 - ASCII 8-bit

VN8MSWIN1258

Microsoft Windows Code Page 1258 8-bit Vietnamese

ZHS16CGB231280

CGB2312-80 16-bit Simplified Chinese

ZHS16GBK

GBK 16-bit Simplified Chinese

ZHS32GB18030

GB18030-2000

ZHT16BIG5

BIG5 16-bit Traditional Chinese

ZHT16HKSCS

Microsoft Windows Code Page 950 with Hong Kong Supplementary Character Set HKSCS-2001 (character set conversion to and from Unicode is based on Unicode 3.0)

ZHT16MSWIN950

Microsoft Windows Code Page 950 Traditional Chinese

ZHT32EUC

EUC 32-bit Traditional Chinese

European

BLT8CP921

Latvian Standard LVS8-92(1) Windows/UNIX 8-bit Baltic

BLT8ISO8859P13

ISO 8859-13 Baltic

BLT8MSWIN1257

Microsoft Windows Code Page 1257 8-bit Baltic

BLT8PC775

IBM-PC Code Page 775 8-bit Baltic

CEL8ISO8859P14

ISO 8859-13 Celtic

CL8ISO8859P5

ISO 8859-5 Latin/Cyrillic

CL8KOI8R

RELCOM Internet Standard 8-bit Latin/Cyrillic

CL8KOI8U

KOI8 Ukrainian Cyrillic

CL8MSWIN1251

Microsoft Windows Code Page 1251 8-bit Latin/Cyrillic

EE8ISO8859P2

ISO 8859-2 East European

EL8ISO8859P7

ISO 8859-7 Latin/Greek

ET8MSWIN923

Microsoft Windows Code Page 923 8-bit Estonian

EE8MSWIN1250

Microsoft Windows Code Page 1250 8-bit East European

EL8MSWIN1253

Microsoft Windows Code Page 1253 8-bit Latin/Greek

EL8PC737

IBM-PC Code Page 737 8-bit Greek/Latin

EE8PC852

IBM-PC Code Page 852 8-bit East European

LT8MSWIN921

Microsoft Windows Code Page 921 8-bit Lithuanian

NE8ISO8859P10

ISO 8859-10 North European

NEE8ISO8859P4

ISO 8859-4 North and North-East European

RU8PC866

IBM-PC Code Page 866 8-bit Latin/Cyrillic

SE8ISO8859P3

ISO 8859-3 South European

US7ASCII

ASCII 7-bit American

US8PC437

IBM-PC Code Page 437 8-bit American

WE8ISO8859P1

ISO 8859-1 West European

WE8ISO8859P15

ISO 8859-15 West European

WE8MSWIN1252

Microsoft Windows Code Page 1252 8-bit West European

WE8PC850

IBM-PC Code Page 850 8-bit West European

WE8PC858

IBM-PC Code Page 858 8-bit West European

Middle Eastern

AR8ADOS720

Arabic MS-DOS 720 Server 8-bit Latin/Arabic

AR8ASMO8X

ASMO Extended 708 8-bit Latin/Arabic

AR8ISO8859P6

ISO 8859-6 Latin/Arabic

AR8MSWIN1256

Microsoft Windows Code Page 1256 8-Bit Latin/Arabic

AZ8ISO8859P9E

ISO 8859-9 Latin Azerbaijani

IW8ISO8859P8

ISO 8859-8 Latin/Hebrew

IW8MSWIN1255

Microsoft Windows Code Page 1255 8-bit Latin/Hebrew

TR8MSWIN1254

Microsoft Windows Code Page 1254 8-bit Turkish

TR8PC857

IBM-PC Code Page 857 8-bit Turkish

WE8ISO8859P9

ISO 8859-9 West European & Turkish

Universal

AL16UTF16

Unicode 4.0 UTF-16 Universal character set

AL32UTF8

Unicode 4.0 UTF-8 Universal character set

UTF8

Unicode 3.0 UTF-8 Universal character set, CESU-8 compliant

11.4 Charmap and Oracle Character Set

The character set mapping (charmap) of the locale ID assigned for each language may vary depending on the distribution and version of the Linux operating system. To determine the current character mapping, enter the following command in a shell:

% locale charmap
UTF-8

Table 6 lists each charmap with its corresponding Oracle character set. In general, you should update the CHARACTER_SET part of the NLS_LANG parameter according to the actual charmap of your Linux session.

12.1.3 Errors when Modifying HTTP Access

The Manage HTTP Access page, available by selecting the Manage HTTP Access option on the Administration page, lets you control HTTP access to the database by selecting one of the following options:

Available only from local server

Available from local server and remote client

If you select either of these options and then click Apply Changes, one of the following may occur:

An error saying that the page cannot be displayed (or a 404 error, depending on your browser)

A delay, followed by a 500 server error or a blank page

You can disregard these occurrences. The option that you selected will be successfully applied.

Workaround: To avoid these occurrences, use SQL*Plus to enable or disable remote access. You can start SQL*Plus by selecting Run SQL Command Line from the Oracle Database 10g Express Edition menu. Then enter the following commands:

12.1.4 ORA-12560: TNS: Protocol Adapter Errors

If other Oracle client software is installed on the same computer as Oracle Database XE, ensure that you use the appropriate connect syntax for these clients when trying to connect to Oracle Database XE. If you do not specify the appropriate connect syntax, then an "ORA-12560: TNS: protocol adapter error" message may appear.

before you install Oracle Database XE Server

12.1.5 Icons May Not Work on Some Linux Distributions

On some Linux distributions, icons may not work.

12.1.6 Java Package Recommendations

If you are using Fedora Core 4, do not use the Java rpm that Sun provides. This rpm file contains Provides that conflict with names used in packages that are part of Fedora Core 4. As a result, Sun Java could disappear from the installation during a package upgrade.

Workaround: Use either the rpm from jpackage.org or manually install the Sun Java tarball into /opt. To ensure stability, use Sun Java 1.5 or later.

12.1.7 Oracle C++ Call Interface Compiler Support

On Red Hat Enterprise Linux 4.0, Fedora Core 4, and Asianux, Oracle C++ Call Interface (OCCI) does not yet support GCC 3.4.3. The current GNU C++ compiler version that OCCI supports with these Linux platforms is GCC 3.2.3

Workaround: Use GCC 3.2.3 to build OCCI applications on these platforms.

12.1.8 Oracle C++ Call Interface Compilation Errors

The supported compiler for OCCI on Suse 9 and Debian is GCC 3.3, with the following workaround:

Workaround:ORACLE_HOME/rdbms/public/occiCommon.h has a section that describes basic_strings that is defined only when gcc 3.2 is being used. Change this code to enable it for GCC 3.3 also. Specifically, change the following line:

#if (__GNUC__ == 3 && __GNUC_MINOR__ == 2

to:

#if (__GNUC__ == 3 && (__GNUC_MINOR__ == 2 || __GNUC_MINOR__ == 3))

12.2 Open Bugs and Known Issues Specific to Oracle Application Express

This section describes bugs and known issues for Oracle Application Express:

12.2.1 Importing Spreadsheet Data Containing Quotation Marks

If you import spreadsheet data by copying and pasting and a column value contains a double quotation mark, then the data will not import correctly (for example, 54" Plasma Flat Screen). To avoid this problem, you have two options:

Option 1:

Save the data in a delimited format (such as comma-delimited (.csv) or tab-delimited).

Use the Import Text Data Wizard to upload and import the saved file.

Option 2:

Replace the quotation mark with two double quotation marks as shown in the following example:

54"" Plasma Flat Screen

Use the Import Spreadsheet Data Wizard to import the file.

12.2.2 Column Attribute Format in Japanese

The number or date format select dialog on the Column Attribute of a Page Definition in Application Builder displays the following message in the dialog box:

'backslash'+ 5,234.10

The yen symbol should appear accurately in a Japanese environment.

Note that backslash and yen are the same character code point, but vary in appearance depending on the selected font. The backslash character is also displayed when you apply the data format on the page in the application.

12.2.3 Creating an Item with a Japanese Item Name

If you use a wizard to create a form on a table or view based on an included column whose name is in Japanese, then the name of the new item will be included in Japanese.

Workaround: To correct this problem, when you create new items, on the Page Definition use alphanumeric characters A to Z, 0 to 9 and '_' for the item names. You may also need to change item names to alphanumeric before you apply changes to the item.

12.2.4 Downloading Triggers with Multibyte Names

If you download a trigger with a multibyte name from the Object Details view in Object Browser, then the file name becomes corrupt.

Workaround: Download triggers with multibyte names from the Code view.

In character sets in non-UTF8 databases, multibyte table and column names are corrupted when you generate DDL. For example, if you want to generate DDL for objects that have non-ASCII characters (for example, ä or â) and the database character set was distributed with the Western European edition (WE8MSIN1252), these characters will be garbled in the generated script.

12.2.6 Spell-checking Features Pop-up Does Not Function Properly

Page items of display type "Textarea with Spell Checker" or "Textarea w/Character Counter & Spellcheck" can be used as ordinary Textarea items only. The pop-up page that presents the spell checking features does not function properly.

12.2.7 Authentication Schemes Not Displayed in Icons View Mode

In Application Express Application Builder, the authentication schemes defined in the current application are not displayed if you view them in Icons View mode. To view the authentication schemes, choose Details in the View select list and then click Go.

12.2.8 Verity AUTO Filter Not Supported on Debian GNU

If you are running Oracle Database XE on Debian GNU, you will be unable to index Japanese online help in Oracle Application Express, which requires Verity AUTO Filter to do so.

12.3 Documentation Corrections and Additions

This section covers documentation corrections and additions for the following manuals:

12.3.1 Oracle Database Express Edition 2 Day DBA Updates

Oracle Database Express Edition 2 Day DBA has the following updates:

On Linux, before initiating a local database connection or remote database connection with SQL Command Line (SQL*Plus) or another Oracle command-line utility, you must set environment variables. (There is no need to set environment variables on the Windows platform.) See "Setting Environment Variables," in Chapter 3 of Oracle Database Express Edition 2 Day DBA for details.

When changing the location of the flash recovery area, you must run a supplied PL/SQL script to move the online redo logs to the new location. See "Setting Flash Recovery Area Location and Size," in Chapter 6 of Oracle Database Express Edition 2 Day DBA for instructions.

If you enable redo log archiving (ARCHIVELOG mode), it is recommended that you increase the size of the flash recovery area to at least 15 gigabytes to allow for the extra space required for the archived log files. In addition, when in ARCHIVELOG mode, you must remember to perform regular backups of the database to avoid completely filling the flash recovery area. A filled flash recovery area can lead to database failure. See "Enabling ARCHIVELOG Mode for Media Failure Protection," in Chapter 11 of Oracle Database Express Edition 2 Day DBA for more information.

If the flash recovery area is approaching 100% full (for example, 85% full or more) and log archiving is enabled (the database is in ARCHIVELOG mode), it may be time to back up the database. Backing up the database deletes archived log files and frees space in the flash recovery area. If the flash recovery area is frequently close to 100% full after several recent backups, consider allocating more space for your flash recovery area, or, if in ARCHIVELOG mode, taking backups more frequently to reduce the size of the retained archived log files. See "Monitoring Space in the Flash Recovery Area," in Chapter 6 of Oracle Database Express Edition 2 Day DBA for more information.

A database for which log archiving is not enabled---that is, a NOARCHIVELOG mode database---can be backed up only while it is in the mounted (but not open) state after a successful SHUTDOWN or SHUTDOWN IMMEDIATE operation. The supplied backup script, which is run by the Backup Database command on the desktop, automatically puts the database in the proper state for offline backup. See "About Backing Up and Restoring the Database," in Chapter 11 of Oracle Database Express Edition 2 Day DBA for more information.

After a user logs in to an Application Express application, the APP_USER item contains the authenticated user name and can be accessed using the bind variable :APP_USER, or by using the function call v('APP_USER'), or in a pure HTML context, by using the following substitution string:

&APP_USER.

Note that the trailing period in the substitution string is required.

Before a user authenticates, the value of APP_USER depends on the type of authentication scheme used by the application. When the developer uses any of the built-in authentication schemes, this value varies slightly depending on Oracle database edition and the authentication scheme in use.

In Oracle Database XE, APP_USER will be ANONYMOUS when database authentication is used. This is achieved by using the built-in authentication scheme named DATABASE. Note that if you set the application's Public User attribute to some other value, that new attribute value is used to set APP_USER. Also, if you use any built-in authentication scheme other than DATABASE, APP_USER is set to 'nobody' before the user logs in.

When developing applications, be sure to plan ahead for possible upgrades to other database editions such as Oracle Database 10g Standard Edition, Oracle Database 10g Standard Edition One, or Oracle Database 10g Enterprise Edition, or for the possibility that the application might be installed in an Application Express environment installed into one of those database editions. In these editions, the same rules as explained previously apply, but with one difference. While ANONYMOUS is used in Oracle Database Express Edition, HTMLDB_PUBLIC_USER is used in other editions. Remember that these rules determine the setting of APP_USER before a user has authenticated. Two examples of when this situation exists include:

When the login page itself is being rendered

During the rendering or after-submit processing of a "public" page requested before the user logs in

Sometimes it may be necessary for a block of PL/SQL code within an application to determine whether authentication has taken place. For example, this may be a requirement of an authorization scheme that requires that APP_USER contain the authenticated username. Another use is in application processes or application computations that are intended to run only once per session, but only after login.

Consider the following PL/SQL example:

if v('APP_USER') in ('ANONYMOUS', 'HTMLDB_PUBLIC_USER', 'nobody') then -- authentication has not occurred

This code sample is written to allow for the pre-authentication APP_USER values used in any edition of Oracle Database in which the Application Express application is run.

12.3.3 Oracle Database Express Edition 2 Day Developer Guide Updates

The following sections have been added to the book version of Oracle Database Express Edition 2 Day Developer Guide after the online help version of this manual was finalized:

New sections to Chapter 6, "Using Triggers": "Firing Triggers With the INSTEAD OF Option" and "Creating a Trigger With the INSTEAD OF Option"

New appendixes: Appendix C, "Using a PL/SQL Procedure With PHP" and Appendix D, "Using a PL/SQL Procedure With JDBC"

13 Documentation Accessibility

Our goal is to make Oracle products, services, and supporting documentation accessible, with good usability, to the disabled community. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Accessibility standards will continue to evolve over time, and Oracle is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For more information, visit the Oracle Accessibility Program Web site at

Screen readers may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, some screen readers may not always read a line of text that consists solely of a bracket or brace.

Accessibility of Links to External Web Sites in Documentation

This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites.

The Programs (which include both the software and documentation) contain proprietary information; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited.

The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. This document is not warranted to be error-free. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose.

If the Programs are delivered to the United States Government or anyone licensing or using the Programs on behalf of the United States Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation and technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement, and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software--Restricted Rights (June 1987). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redundancy and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and we disclaim liability for any damages caused by such use of the Programs.

Oracle, JD Edwards, and PeopleSoft are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

The Programs may provide links to Web sites and access to content, products, and services from third parties. Oracle is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all risks associated with the use of such content. If you choose to purchase any products or services from a third party, the relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality of third-party products or services; or (b) fulfilling any of the terms of the agreement with the third party, including delivery of products or services and warranty obligations related to purchased products or services. Oracle is not responsible for any loss or damage of any sort that you may incur from dealing with any third party.