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

Oracle Discussion :

renommer le nom d'une base de donnees


Sujet :

Oracle

  1. #1
    Membre extrêmement actif
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Billets dans le blog
    6
    Par défaut renommer le nom d'une base de donnees
    bonjour;

    C'est utile de modifier nom d'une base de donnees c'est pour ca j'ai pense a decrire comment le faire.
    voici check list pour renommer une base de donnees:
    tout d'abord il faut que tu soit un administrateur.
    1. pour savoir le nom de la base
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQL> select name from v$database;
    2. pour faire sortir la trace de la base de donnees

    note:on supprime tous les fichier trace de C:\oracle\admin\nom_de_la_base\udump si tu n'as pas besoin d'eux.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SQL> alter system switch logfile; 
    SQL> alter database backup controlfile to trace;
    le fichier trace a cette structure
    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
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    Dump file c:\oracle\admin\test\udump\test_ora_4460.trc
    Thu Oct 25 10:20:56 2007
    ORACLE V9.2.0.1.0 - Production vsnsta=0
    vsnsql=12 vsnxtr=3
    Windows 2000 Version 5.1 Service Pack 2, CPU type 586
    Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
    With the Partitioning, OLAP and Oracle Data Mining options
    JServer Release 9.2.0.1.0 - Production
    Windows 2000 Version 5.1 Service Pack 2, CPU type 586
    Instance name: test
     
    Redo thread mounted by this instance: 1
     
    Oracle process number: 10
     
    Windows thread id: 4460, image: ORACLE.EXE
     
     
    *** SESSION ID:(7.3) 2007-10-25 10:20:56.000
    *** 2007-10-25 10:20:56.000
    # The following are current System-scope REDO Log Archival related
    # parameters and can be included in the database initialization file.
    #
    # LOG_ARCHIVE_DEST=''
    # LOG_ARCHIVE_DUPLEX_DEST=''
    #
    # LOG_ARCHIVE_FORMAT=ARC%S.%T
    # REMOTE_ARCHIVE_ENABLE=TRUE
    # LOG_ARCHIVE_MAX_PROCESSES=2
    # STANDBY_FILE_MANAGEMENT=MANUAL
    # STANDBY_ARCHIVE_DEST=%ORACLE_HOME%\RDBMS
    # FAL_CLIENT=''
    # FAL_SERVER=''
    #
    # LOG_ARCHIVE_DEST_1='LOCATION=c:\oracle\RDBMS'
    # LOG_ARCHIVE_DEST_1='MANDATORY NOREOPEN NODELAY'
    # LOG_ARCHIVE_DEST_1='ARCH NOAFFIRM SYNC'
    # LOG_ARCHIVE_DEST_1='NOREGISTER NOALTERNATE NODEPENDENCY'
    # LOG_ARCHIVE_DEST_1='NOMAX_FAILURE NOQUOTA_SIZE NOQUOTA_USED'
    # LOG_ARCHIVE_DEST_STATE_1=ENABLE
    #
    # Below are two sets of SQL statements, each of which creates a new
    # control file and uses it to open the database. The first set opens
    # the database with the NORESETLOGS option and should be used only if
    # the current versions of all online logs are available. The second
    # set opens the database with the RESETLOGS option and should be used
    # if online logs are unavailable.
    # The appropriate set of statements can be copied from the trace into
    # a script file, edited as necessary, and executed when there is a
    # need to re-create the control file.
    #
    #     Set #1. NORESETLOGS case
    #
    # The following commands will create a new control file and use it
    # to open the database.
    # Data used by the recovery manager will be lost. Additional logs may
    # be required for media recovery of offline data files. Use this
    # only if the current version of all online logs are available.
    STARTUP NOMOUNT
    CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS  NOARCHIVELOG
    --  SET STANDBY TO MAXIMIZE PERFORMANCE
        MAXLOGFILES 5
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 1
        MAXLOGHISTORY 226
    LOGFILE
      GROUP 1 'C:\ORACLE\ORADATA\TEST\REDO01.LOG'  SIZE 100M,
      GROUP 2 'C:\ORACLE\ORADATA\TEST\REDO02.LOG'  SIZE 100M,
      GROUP 3 'C:\ORACLE\ORADATA\TEST\REDO03.LOG'  SIZE 100M
    -- STANDBY LOGFILE
    DATAFILE
      'C:\ORACLE\ORADATA\TEST\SYSTEM01.DBF',
      'C:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF',
      'C:\ORACLE\ORADATA\TEST\DRSYS01.DBF',
      'C:\ORACLE\ORADATA\TEST\INDX01.DBF',
      'C:\ORACLE\ORADATA\TEST\TOOLS01.DBF',
      'C:\ORACLE\ORADATA\TEST\USERS01.DBF',
      'C:\ORACLE\ORADATA\TEST\XDB01.DBF'
    CHARACTER SET WE8MSWIN1252
    ;
    # Recovery is required if any of the datafiles are restored backups,
    # or if the last shutdown was not normal or immediate.
    RECOVER DATABASE
    # Database can now be opened normally.
    ALTER DATABASE OPEN;
    # Commands to add tempfiles to temporary tablespaces.
    # Online tempfiles have complete space information.
    # Other tempfiles may require adjustment.
    ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\ORACLE\ORADATA\TEST\TEMP01.DBF'
         SIZE 41943040  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;
    # End of tempfile additions.
    #
    #     Set #2. RESETLOGS case
    #
    # The following commands will create a new control file and use it
    # to open the database.
    # The contents of online logs will be lost and all backups will
    # be invalidated. Use this only if online logs are damaged.
    STARTUP NOMOUNT
    CREATE CONTROLFILE SET DATABASE "dpt5" RESETLOGS NOARCHIVELOG
    --  SET STANDBY TO MAXIMIZE PERFORMANCE
        MAXLOGFILES 5
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 1
        MAXLOGHISTORY 226
    LOGFILE
      GROUP 1 'C:\ORACLE\ORADATA\TEST\REDO01.LOG'  SIZE 100M,
      GROUP 2 'C:\ORACLE\ORADATA\TEST\REDO02.LOG'  SIZE 100M,
      GROUP 3 'C:\ORACLE\ORADATA\TEST\REDO03.LOG'  SIZE 100M
    -- STANDBY LOGFILE
    DATAFILE
      'C:\ORACLE\ORADATA\TEST\SYSTEM01.DBF',
      'C:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF',
      'C:\ORACLE\ORADATA\TEST\DRSYS01.DBF',
      'C:\ORACLE\ORADATA\TEST\INDX01.DBF',
      'C:\ORACLE\ORADATA\TEST\TOOLS01.DBF',
      'C:\ORACLE\ORADATA\TEST\USERS01.DBF',
      'C:\ORACLE\ORADATA\TEST\XDB01.DBF'
    CHARACTER SET WE8MSWIN1252;
     
     
     
    ALTER DATABASE OPEN RESETLOGS;
     
    ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\ORACLE\ORADATA\TEST\TEMP01.DBF'
         SIZE 41943040  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;
    # End of tempfile additions.
    #
    3. voyons la derniere partie!
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    STARTUP NOMOUNT
    CREATE CONTROLFILE REUSE DATABASE "old_db" RESETLOGS  NOARCHIVELOG
    --  SET STANDBY TO MAXIMIZE PERFORMANCE
        MAXLOGFILES 5
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 1
        MAXLOGHISTORY 226
    LOGFILE
      GROUP 1 'C:\ORACLE\ORADATA\TEST\REDO01.LOG'  SIZE 100M,
      GROUP 2 'C:\ORACLE\ORADATA\TEST\REDO02.LOG'  SIZE 100M,
      GROUP 3 'C:\ORACLE\ORADATA\TEST\REDO03.LOG'  SIZE 100M
    -- STANDBY LOGFILE
    DATAFILE
      'C:\ORACLE\ORADATA\TEST\SYSTEM01.DBF',
      'C:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF',
      'C:\ORACLE\ORADATA\TEST\DRSYS01.DBF',
      'C:\ORACLE\ORADATA\TEST\INDX01.DBF',
      'C:\ORACLE\ORADATA\TEST\TOOLS01.DBF',
      'C:\ORACLE\ORADATA\TEST\USERS01.DBF',
      'C:\ORACLE\ORADATA\TEST\XDB01.DBF'
    CHARACTER SET WE8MSWIN1252;
     
     
    RECOVER DATABASE USING BACKUP CONTROLFILE
     
    ALTER DATABASE OPEN RESETLOGS;
     
    ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\ORACLE\ORADATA\TEST\TEMP01.DBF'
         SIZE 41943040  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;
    # End of tempfile additions.
    #
    4. On remplace pour executer le nouveau script


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE CONTROLFILE REUSE DATABASE "old_db_name" RESETLOGS  NOARCHIVELOG
    par
    [CODE]CREATE CONTROLFILE SET DATABASE "New_db_name" RESETLOGS NOARCHIVELOG
    et on supprime laligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RECOVER DATABASE USING BACKUP CONTROLFILE
    et toutes les lignes de comentaire qui commence par #
    5. on obtiendra.....

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    STARTUP NOMOUNT
     
    CREATE CONTROLFILE SET DATABASE "New_db_name" RESETLOGS NOARCHIVELOG
    --  SET STANDBY TO MAXIMIZE PERFORMANCE
        MAXLOGFILES 5
        MAXLOGMEMBERS 3
        MAXDATAFILES 100
        MAXINSTANCES 1
        MAXLOGHISTORY 226
    LOGFILE
      GROUP 1 'C:\ORACLE\ORADATA\TEST\REDO01.LOG'  SIZE 100M,
      GROUP 2 'C:\ORACLE\ORADATA\TEST\REDO02.LOG'  SIZE 100M,
      GROUP 3 'C:\ORACLE\ORADATA\TEST\REDO03.LOG'  SIZE 100M
    -- STANDBY LOGFILE
    DATAFILE
      'C:\ORACLE\ORADATA\TEST\SYSTEM01.DBF',
      'C:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF',
      'C:\ORACLE\ORADATA\TEST\DRSYS01.DBF',
      'C:\ORACLE\ORADATA\TEST\INDX01.DBF',
      'C:\ORACLE\ORADATA\TEST\TOOLS01.DBF',
      'C:\ORACLE\ORADATA\TEST\USERS01.DBF',
      'C:\ORACLE\ORADATA\TEST\XDB01.DBF'
    CHARACTER SET WE8MSWIN1252;
     
     
    ALTER DATABASE OPEN RESETLOGS;
     
    ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\ORACLE\ORADATA\old_name_db\TEMP01.DBF'
         SIZE 41943040  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;
    note: on ne change aucun chemin.

    6. on arrete la base de donnees


    7. on supprime les fichier de control de la base.

    8. on change le nom de la base de donnees dans le PFILE et/ou SPFILE

    9. on lance le script qu'on a prepare.

    10. on verifie le nom de la table

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQL> select name from v$database;
    Zoheir BOUSSAFI
    Bon courage

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    ça revient quasiment à ça en somme : http://orafrance.developpez.com/dbahelp/#L2


  3. #3
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    enfin... c'est sympa d'avoir pensé au forum pour faire un document complet

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 72
    Par défaut
    bonjour à tous,

    c'est bien gentil tout ça mais dans tous les posts que vous citez personne ne pense à changer les noms de repertoire qui portent toujours l'ancien nom d'instance...

    pas tres propre tout ca.

    ne vaudrait-il pas mieux dans ce cas créer une nouvelle instance?

  6. #6
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    rien n'empêche de modifier le nom du répertoire dans le script de création du controlfile pourvu que les datafiles aient été copié convenablement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 19/10/2006, 14h28
  2. taille maximale d'une base de donnée paradox
    Par Anonymous dans le forum Paradox
    Réponses: 5
    Dernier message: 14/02/2004, 17h39
  3. [VB6]Créer une Base de données
    Par ThierryAIM dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/04/2003, 17h24
  4. [VB6] [Access] Compacter une base de donnée
    Par mdoyer dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 24/09/2002, 11h33
  5. [VB6] [ODBC] Référencer une base de données avec vb
    Par af.balog dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 13/09/2002, 09h51

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