Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/12/2011, 13h50   #1
Membre habitué
 
Homme
Administrateur de base de données
Inscription : mars 2005
Messages : 264
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mars 2005
Messages : 264
Points : 121
Points : 121
Par défaut Modifier paramètre NLS d'une base

Bonjour,

je dispose aujourd'hui d'une base A et d'une base B avec les paramètres suivants :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
paramètres BDD A :
PARAMETER VALUE
------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------
NLS_LANGUAGE FRENCH
NLS_TERRITORY FRANCE
NLS_CURRENCY ?
NLS_ISO_CURRENCY FRANCE
NLS_NUMERIC_CHARACTERS ,
NLS_CHARACTERSET WE8ISO8859P15
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD/MM/RR
NLS_DATE_LANGUAGE FRENCH
NLS_SORT FRENCH
NLS_TIME_FORMAT HH24:MI:SSXFF
NLS_TIMESTAMP_FORMAT DD/MM/RR HH24:MI:SSXFF
NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR
NLS_TIMESTAMP_TZ_FORMAT DD/MM/RR HH24:MI:SSXFF TZR
NLS_DUAL_CURRENCY ?
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_RDBMS_VERSION 10.2.0.3.0
 
 
paramètres BDD B :
PARAMETER VALUE
------------------------------ ------------------------------------------------------------------------------------------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET UTF8
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERSET UTF8
NLS_RDBMS_VERSION 10.2.0.1.0

Je cherche à modifier les paramètres de la base B pour qu'ils soient identiques à la base A, surtout pour les paramètres NLS_TERRITORY, NLS_LANGUAGE et CHARACTERSET. Je dispose des droits dba sur cette base B mais je ne peux pas la recréer. Je peux faire des exports/imports de A vers B.
J'ai déjà tenté diverses choses trouvées sur le net mais la seule chose que j'ai réussi à faire c'est corrompre ma base B (je peux restaurer une sauvegarde pour la remettre en état).

1 - Est-ce réalisable svp ?
2 - Si oui comment ?

Merci d'avance.
tck-lt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 14h19   #2
Modérateur
 
Homme Fabien
Ingénieur d'études en décisionnel
Inscription : septembre 2008
Messages : 5 686
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 34
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études en décisionnel
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2008
Messages : 5 686
Points : 10 435
Points : 10 435
Envoyer un message via ICQ à Waldar Envoyer un message via Skype™ à Waldar
Je n'ai pas vérifié, mais n'est-ce pas simplement la commande ALTER SYSTEM ?
__________________
Email : http://scr.im/waldar
Waldar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 14h58   #3
Expert Confirmé Sénior
 
Avatar de mnitu
 
Homme Marius Nitu
Ingénieur développement logiciels
Inscription : octobre 2007
Messages : 3 313
Détails du profil
Informations personnelles :
Nom : Homme Marius Nitu
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 3 313
Points : 5 817
Points : 5 817
Il n'est pas possible dans ce cas de changer le CHARACTERSET.
mnitu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 15h06   #4
Membre habitué
 
Homme
Administrateur de base de données
Inscription : mars 2005
Messages : 264
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mars 2005
Messages : 264
Points : 121
Points : 121
Même en s'attaquant à la table sys.prop$ ? Je sais que la toucher est très dangereux mais je ne risque rien pour le moment à part me coltiner une simple restauration des fichiers de la base, la base n'est pas encore en production.
tck-lt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 22h04   #5
Membre éprouvé
 
Femme
Administrateur de base de données
Inscription : novembre 2007
Messages : 341
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : novembre 2007
Messages : 341
Points : 478
Points : 478
bonsoir,

je crois aussi qu'il est impossible de changer le characterset. la seule chose à faire c'est recréer la base avec le bon characterset puis réimporter les données exportées au préalable (avant le drop de la base de données).
Heaven93 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 13h04   #6
Membre chevronné
 
Homme O. Joly
Support
Inscription : décembre 2010
Messages : 287
Détails du profil
Informations personnelles :
Nom : Homme O. Joly
Âge : 38
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Support
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2010
Messages : 287
Points : 617
Points : 617
De mémoire, dans votre cas, ce sont les locales des machines qui doivent correspondre (ou faire l'export et l'import depuis la même machine) et la base cible doit avoir un characterset qui englobe le characterset de la base source. Ca devrait suffire pour fonctionner.
ojo77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 13h41   #7
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
En général on ne peut pas migrer une base UTF8 vers WE8ISO8859P15 sans perte de données car UTF8 (basé sur Unicode) possède des caractères inconnus de WE8ISO8859P15 (en gros alphabet latin).

La doc. officielle est http://docs.oracle.com/cd/B19306_01/...g.htm#i1005921.

Les procédures détaillées sont uniquement sur le site du support Oracle: https://support.oracle.com/. Il faudrait voir avec le support Oracle si vous êtes dans un cas particulier où la base UTF8 ne contiendrait que des caractères compatibles avec WE8ISO8859P15: il y a peut-être une solution mais uniquement via le support Oracle.
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 14h15   #8
Membre habitué
 
Homme
Administrateur de base de données
Inscription : mars 2005
Messages : 264
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mars 2005
Messages : 264
Points : 121
Points : 121
Bonjour,

j'ai modifié le CHARACTERSET en suivant cette procédure (adaptée à mes besoins) :

Code :
1
2
3
4
5
6
7
8
9
10
1- UPDATE props$ SET VALUE$ = 'AR8ISO8859P6' WHERE NAME = 'NLS_CHARACTERSET';
2- SHUTDOWN IMMEDIATE;
3- STARTUP MOUNT;
4- ALTER SYSTEM ENABLE RESTRICTED SESSION;
5- ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
6- ALTER SYSTEM SET AQ_TM_PROCESSES=0;
7- ALTER DATABASE OPEN;
8- ALTER DATABASE CHARACTER SET AR8ISO8859P6;
9- SHUTDOWN IMMEDIATE; -- or SHUTDOWN NORMAL;
10-STARTUP;
(trouvé là : https://forums.oracle.com/forums/thr...readID=1108109

Cependant, je n'arrive pas pour le moment à modifier les NLS_LANGUAGE et NLS_TERRITORY.

J'ai ajouté les lignes suivantes dans mon init.ora (certaines sans doute inutiles) :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
NLS_CURRENCY="?"
NLS_DATE_FORMAT="DD/MM/RR"
NLS_DATE_LANGUAGE="FRENCH"
NLS_ISO_CURRENCY="FRANCE"
NLS_LANGUAGE="FRENCH"
#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_TIME_TZ_FORMAT="HH24:MI:SSXFF TZR"
NLS_TIMESTAMP_TZ_FORMAT="DD/MM/RR HH24:MI:SSXFF TZR"
NLS_DUAL_CURRENCY="?"
tck-lt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 16h01   #9
Membre chevronné
 
Homme O. Joly
Support
Inscription : décembre 2010
Messages : 287
Détails du profil
Informations personnelles :
Nom : Homme O. Joly
Âge : 38
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Support
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2010
Messages : 287
Points : 617
Points : 617
NLS_LANGUAGE et NLS_TERRITORY sont dérivées de votre environnement OS et plus particulièrement de la variable LANG (je ne suis plus certain qu'elle soit la seule à influer).
ojo77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 10h51   #10
Membre habitué
 
Homme
Administrateur de base de données
Inscription : mars 2005
Messages : 264
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mars 2005
Messages : 264
Points : 121
Points : 121
Nous avions à priori 2 soucis. Le premier était que lors du transfert des pages php via ftp, l'encodage bougeait (pour certaines mais pas pour toutes) et également au niveau du client php qui ne faisait pas un encodage cohérent des données à priori. Je ne peux vous en dire plus sur la résolution car il n'y a pas eu d'intervention supplémentaire de ma part sur les bases.
tck-lt est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h24.


 
 
 
 
Partenaires

Hébergement Web