IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

Changement de NLS sur une base existante


Sujet :

Administration Oracle

  1. #1
    Membre actif
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2007
    Messages : 248
    Points : 289
    Points
    289
    Par défaut Changement de NLS sur une base existante
    Bonjour,

    J'ai deux platformes Oracle (edit: en RAC)

    - Production avec les NLS suivants (ne pas tenir compte des ¿ les DBA avec lesquels je travaillent ne sont pas en France donc il ne peuvent pas afficher certains caractères)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    NLS_CALENDAR                                                     GREGORIAN
    NLS_CHARACTERSET                                                 AL32UTF8
    NLS_COMP                                                         BINARY
    NLS_CURRENCY                                                     ¿
    NLS_DATE_FORMAT                                                  DD/MM/RR
    NLS_DATE_LANGUAGE                                                FRENCH
    NLS_DUAL_CURRENCY                                                ¿
    NLS_ISO_CURRENCY                                                 FRANCE
    NLS_LANGUAGE                                                     FRENCH
    NLS_LENGTH_SEMANTICS                                             BYTE
    NLS_NCHAR_CHARACTERSET                                           AL16UTF16
    NLS_NCHAR_CONV_EXCP                                              FALSE
    NLS_NUMERIC_CHARACTERS                                           ,
    NLS_SORT                                                         FRENCH
    NLS_TERRITORY                                                    FRANCE
    NLS_TIME_FORMAT                                                  HH24:MI:SSXFF
    NLS_TIMESTAMP_FORMAT                                             DD/MM/RR HH24:MI:SSXFF
    NLS_TIMESTAMP_TZ_FORMAT                                          DD/MM/RR HH24:MI:SSXFF TZR
    NLS_TIME_TZ_FORMAT                                               HH24:MI:SSXFF TZR
    et une autre platforme d'intégration avec les NLS suivants

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    NLS_CALENDAR............GREGORIAN
    NLS_CHARACTERSET............AL32UTF8
    NLS_COMP............BINARY
    NLS_CURRENCY............$
    NLS_DATE_FORMAT............DD-MON-RR
    NLS_DATE_LANGUAGE............AMERICAN
    NLS_DUAL_CURRENCY............$
    NLS_ISO_CURRENCY............AMERICA
    NLS_LANGUAGE............AMERICAN
    NLS_LENGTH_SEMANTICS............BYTE
    NLS_NCHAR_CHARACTERSET............UTF8
    NLS_NCHAR_CONV_EXCP............FALSE
    NLS_NUMERIC_CHARACTERS.............,
    NLS_SORT............BINARY
    NLS_TERRITORY............AMERICA
    NLS_TIMESTAMP_FORMAT............DD-MON-RR
    NLS_TIMESTAMP_TZ_FORMAT............DD-MON-RR
    NLS_TIME_FORMAT............HH.MI.SSXFF
    NLS_TIME_TZ_FORMAT............HH.MI.SSXFF
    Je voudrais avoir les même NLS pour cette plateforme d'intégration.

    J'ai lu la doc de migration même si j'en ai compris la philosophie.... je me demande si celà ne vas pas être une oeuvre risquée (je ne suis pas DBA) et ne je dois pas compté sur mon sympathique patron pour m'aider, la règle chez nous c'est démerde toi !

    Donc ma question est la suivante au regards des NLS
    - dois je me diriger vers une migration a base de EXPORT/IMPORT ?
    - vais je avoir des problèmes de conversion de char ?

    Que me recommandez vous ?

    Merci pour votre aide.

  2. #2
    Membre habitué Avatar de Laurent_du_78
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 138
    Points : 188
    Points
    188
    Par défaut
    Bonjour
    les 2 paramètres importants sont
    . NLS_CHARACTERSET
    . NLS_NCHAR_CHARACTERSET

    Le NLS_CHARACTERSET correspond à celui de la base et il est identique sur les 2 instances, et c'est le plus compliqué des 2 à modifier.

    Le NLS_NCHAR_CHARACTERSET est un character set complémentaire utilisé pour les colonnes de type NCHAR, NVARCHAR2, et NCLOB
    Donc il suffit de vérifier si il existe ce type de colonnes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT *
      FROM dba_tab_cols
    WHERE data_type in ('NCHAR', 'NCLOB', 'NVARCHAR')
    order BY owner, data_type;
    Si OK, on modifie la NLS_NCHAR_CHARACTERSET avec un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER DATABASE NATIONAL CHARACTER SET ...
    Une petite sauvegarde au cas où...
    Amicalement
    24h-en-piste.com

  3. #3
    Membre actif
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2007
    Messages : 248
    Points : 289
    Points
    289
    Par défaut
    Merci beaucoup. je vais regarder celà tout de suite. Encore merci.

  4. #4
    Membre actif
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2007
    Messages : 248
    Points : 289
    Points
    289
    Par défaut
    Hello,

    voici le résultat sur les 4 premières colonnes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    OWNER	TABLE_NAME	COLUMN_NAME	DATA_TYPE
        =========================================================
        APEX_030200	WWV_FLOW_TRANSLATABLE_TEXT$	TRANSLATE_TO_TEXT	NCLOB
        APEX_030200	WWV_FLOW_TRANSLATABLE_TEXT$	TRANSLATE_FROM_TEXT	NCLOB
        SYS	ALL_REPPRIORITY	NCHAR_VALUE	NCHAR
        SYS	DBA_REPPRIORITY	NCHAR_VALUE	NCHAR
        SYS	USER_REPPRIORITY	NCHAR_VALUE	NCHAR
        SYS	STREAMS$_DEF_PROC	NCLOB_VALUE	NCLOB
        SYS	DEFLOB	NCLOB_COL	NCLOB
        SYSTEM	REPCAT$_PRIORITY	NCHAR_VALUE	NCHAR
        SYSTEM	DEF$_LOB	NCLOB_COL	NCLOB
    Alors je ne sais pas si c'est OK ou non ????

  5. #5
    Membre habitué Avatar de Laurent_du_78
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Juin 2007
    Messages : 138
    Points : 188
    Points
    188
    Par défaut
    APEX_030200 est un schéma applicatif ?
    si oui, faire un export de ces tables, modifier le NLS et réimporter ces tables.
    Amicalement
    24h-en-piste.com

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/04/2014, 10h54
  2. Mapper des objets métier sur une base existante (mais pas un simple mapping)
    Par NaBuCO dans le forum Persistance des données
    Réponses: 2
    Dernier message: 13/04/2012, 15h24
  3. Installation grid control sur une base existante
    Par JacK_soN dans le forum Entreprise Manager
    Réponses: 5
    Dernier message: 12/05/2009, 16h24
  4. import sur une base deja existante
    Par crazykangourou dans le forum SQL
    Réponses: 2
    Dernier message: 09/01/2007, 10h14
  5. Réponses: 2
    Dernier message: 26/02/2003, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo