Bonjour,
Je voudrais avoir des informations sur la façon dont Oracle gère les NLS_LANG des bases de données.
Mon chef me dit qu'il faut créer une ORACLE_HOME par NLS_LANG de base de donnée différente.
HOME1 : WE8ISO8859P1
HOME2 : UTF8
HOME3 : ....
Je me charge de rassembler differentes bases de données situées sur differents petites machine sur quelques gros serveurs.
Le soucis, c'est que je n'ai pas envie de créer une oracle_home par NLS_LANG.
Y-suis-je vraiment obligé?
Le simple fait de définir la variable d'environement NLS_LANG avant d'utiliser une base de donnée ne suffit-elle pas?
J'ai découvert Oracle "sur le tas", donc, mes connaissances sont grandement inspirées de ce site et de divers autres. Mais je n'ai pas trouvé d'information précise sur ce sujet. Ni dans un sens (une ORACLE_HOME par NLS_LANG) ni dans l'autre (Autant de DB avec un NLS_LANG different par ORACLE_HOME)
Voici ce qu'ils disent chez Oracle : Oracle NLS_LANG_FAQ
Merci de m'éclairer sur ce sujet. Je suis sur que cela risque d'en intéresser d'autres.What about Multiple Homes on Windows?
There is nothing special with NLS_LANG and the multiple homes on Windows. The parameter taken into account is the one specified in the ORACLE_HOME registry key used by the executable. If the NLS_LANG is set in the environment, it takes precedence over the value in the registry and is used for ALL Oracle_Homes on the server/client.
The NLS_LANG can be found in these registry keys:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
or
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEx
Après discussion en interne, il semble que je ne sois pas obligé de créer une ORACLE_HOME par NLS_LANG. Le fait de définir correctement la variable NLS_LANG avant de manipuler la DB serait suffisant.
Est-ce qu'un membre experimenté pourrait valider l'info afin que d'autres (et moi-même) aient une certitude?
Merci
Partager