1 2 Previous Next 15 Replies Latest reply: Nov 18, 2009 4:15 AM by 550205 Go to original post RSS
      • 15. Re: ORA-12705: Cannot access NLS data files or invalid environment specified
        550205
        Question: I an getting the error "Resolving ORA-12705: Cannot access NLS data files or invalid environment specified" when I change my NLS_LANG setting.

        The developers need to experiment with different character sets but when they issue export NLS_LANG and try to start SQLPLUS after that they get the ORA-12705 error.

        Answer: First, see my notes all about the ORA-12705 error.

        The ORA-12705 error is indeed controlled by NLS_LANG, and the ORA-12705 commonly happens when Oracle does an automatic "alter session" at login time and discovers an invalid NLS_LANG setting. The Oracle documentation notes are not very helpful:

        ORA-12705: "invalid or unknown NLS parameter value specified"

        Cause: There are two possible causes:

        - An attempt was made to issue an ALTER SESSION statement with an invalid NLS parameter or value.

        - The NLS_LANG environment variable contains an invalid language, territory, or character set.

        Action: Check the syntax of the ALTER SESSION command and the NLS parameter, correct the syntax and retry the statement, or specify correct values in the NLS_LANG environment variable.

        Oracle also says that the ORA-12705 can happen under these conditions and MetaLink has resolutions for these ORA-12705 conditions:

        1. ORA-12705 with incorrect NLS_LANG parameter
        2. ORA-12705 with incorrectly specified ORA_NLSx
        3. ORA-12705 from incorrect Oracle install or configuration
        4. ORA-12705 when using Special Character sets
        5. ORA-12705 when connecting with SQL*Net
        6. ORA-12705 during migrations
        7. ORA-12705 when connecting with SQL*Plus
        8. ORA-12705 when connecting with language pre-compilers
        9. ORA-12705 during Export/Import

        For ORA-12705 errors caused by invalid NLS_LANG settings, you need to verify that it is "unset" at the system-level:

        * Windows - The NLS_LANG must be unset in the Windows registry (re-named is best). Look for the NLS_LANG subkey in the registry at \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE, and rename it.

        * Linux/UNIX - Here you simply issue the Linux command "unset NLS_LANG"


        Reference : http://www.dba-oracle.com/t_ora_12705_resolution.htm
        1 2 Previous Next