Q

Help exporting 8i database to 7.3

I have a 8.1.7 database and a 7.3.4 database on Sun Solaris machine. I want to export the 8i database to 7.3. I

have executed the catexp7.sql in the 8i database prior to running the 7.3 export utility against it. I get the following error when I execute the 7.3 export against 8i database.

EXP-00008: ORACLE error 3106 encountered
ORA-03106: fatal two-task communication protocol error
EXP-00222: Message 222 not found; product=RDBMS; facility=EXP

Can you tell me what is the problem and how can it be rectifed?
I think this note from Metalink should help.

Problem description:
====================
The customer has a database that is using a character set other than US7ASCII and is getting an ORA-3106 fatal two-task communication protocol error.

Problem explanation:
====================
NLS character set conversion can be the cause of this problem due to an incorrect NLS environment setup. This causes the connection to be terminated.

Solution description:
=====================
When an user gets an ORA-3106 error, this can be caused by a difference in database and client character sets used. To retrieve the database character set, you need to log on to the database using a DBA account and execute:

 SELECT value
  FROM NLS_DATABASE_PARAMETERS
 WHERE parameter = 'NLS_CHARACTERSET';          

The client character set can be obtained from the NLS_LANG environment variable or registry entry.

When the database and client character sets differ you need to set a proper ORA_NLS32 (for Oracle7 V7.3.x) or ORA_NLS33 (for Oracle8 and higher) environment variable or registry entry to point to the NLS environment local to the Oracle environment. The environment variable must be set prior to starting the Oracle database and/or client tools. E.g. for an Oracle8i installation on an UNIX system, the ORA_NLS33 environment variable must point to the following directory:
$ORACLE_HOME/ocommon/nls/admin/data

An invalid value for ORA_NLS32 or ORA_NLS33 will result in the ORA-3106 error to be raised.

Solution explanation:
=====================
What happens with NLS character sets is that the data being returned will be translated into the character set specified by NLS_LANG. The ORA_NLS32 and ORA_NLS33 environment variables point to the files used by a character set conversion. When these environment variables point to an invalid location, no conversion can take place, causing the ORA-3106 error to be raised.

This was first published in November 2003

Dig deeper on Oracle database export, import and migration

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

SearchDataManagement

SearchBusinessAnalytics

SearchSAP

SearchSQLServer

TheServerSide

SearchDataCenter

SearchContentManagement

SearchFinancialApplications

Close