Maison  >  Article  >  base de données  >  Comment modifier l'emplacement du fichier de données d'un tablespace dans Oracle

Comment modifier l'emplacement du fichier de données d'un tablespace dans Oracle

小云云
小云云original
2017-12-11 14:24:442384parcourir

Cet article vous présente principalement comment Oracle modifie l'emplacement du fichier de données de l'espace table. L'article le présente en détail à travers l'exemple de code. Il a une certaine valeur d'apprentissage de référence pour les études ou le travail de tous les amis qui en ont besoin. small Apprenons ensemble, j'espère que cela pourra aider tout le monde.

Présentation de l'espace table

L'espace table d'Oracle est une structure de stockage dans Oracle. Il s'agit d'un espace logique utilisé pour stocker des objets de base de données (tels que des fichiers de données) et constitue le stockage d'informations dans Oracle. la plus grande unité logique, qui contient également des types de données logiques tels que des segments, des zones et des blocs de données. L'espace table est un espace ouvert dans la base de données pour stocker les objets de la base de données. Une base de données peut être composée de plusieurs espaces table. Le réglage d'Oracle peut être réalisé via des espaces table. (Une application avancée unique de la base de données Oracle)

Classification des espaces table

Espace table permanent : stocke les objets qui doivent être stockés de manière permanente dans la base de données, tels que les tables bidimensionnelles, les vues, procédures stockées et index.

Espace table temporaire : stocke le processus d'exécution intermédiaire de la base de données, tel que l'ordre d'enregistrement par tri de la base de données et les données temporaires générées lors du regroupement. Le contenu stocké sera automatiquement libéré une fois l'opération terminée. L'espace table temporaire est universel et tous les utilisateurs utilisent TEMP comme espace table temporaire. Généralement, il n'existe qu'un seul espace table temporaire, tmp. Si vous avez besoin d'autres espaces table temporaires, vous pouvez le créer vous-même.

Espace table UNDO : Enregistrez une copie des données avant modification. Stocke l'ancienne adresse modifiée par la transaction, c'est-à-dire les données avant leur modification. Lorsque nous modifions les données d'une table, nous enregistrerons les informations avant modification afin d'effectuer des opérations de restauration, de récupération et d'annulation sur les données.

Introduction

L'emplacement et les informations des fichiers de données de la base de données Oracle sont enregistrés dans le fichier de contrôle. Les commandes rm ou cp ne modifieront pas et ne pourront pas modifier les enregistrements du fichier de contrôle. Cette opération de modification doit être utilisée pour modifier et actualiser les informations pertinentes des fichiers de données dans le fichier de contrôle de la base de données afin de garantir que la base de données peut fonctionner normalement.

Méthode de fonctionnement

1. Méthode 1

Étapes principales :

1. Tablespace hors ligne : modifier tablespace_name hors ligne;

2. Copiez les fichiers de données dans le nouveau répertoire

3. Renommez l'espace table et modifiez le fichier de contrôle

4. Espace table en ligne ;

Espace table hors ligne

SQL> alter tablespace cifdb offline;

Copier les fichiers de données dans un nouveau répertoire

cp /u01/app/oracle/oradata/cifdb.dbf /u01/app/oracle/oradata/CIFDB/cifdb.dbf

renommer modifier le tablespace

SQL> alter tablespace cifdb rename datafile '/u01/app/oracle/oradata/cifdb.dbf' to '/u01/app/oracle/oradata/CIFDB/cifdb.dbf';

tablespace en ligne

SQL> alter tablespace cifdb online;

Vérifiez le fichier de données

SQL> select name from v$datafile;

ou

SQL> select file_name, tablespace_name from dba_data_files where tablespace_name='cifdb';

2. Méthode 2

Étapes principales :

1. Fermez la base de données

2. Copiez le fichier de données vers un nouvel emplacement ;

3. Démarrez la base de données pour monter l'état

4. Modifiez l'emplacement du fichier de données via SQL ; ;

5. Ouvrez la base de données

Fermez la base de données

SQL> shutdown immediate;

Copier le fichier de données vers le nouveau Emplacement

cp /u01/app/oracle/oradata/cifdb.dbf /u01/app/oracle/oradata/CIFDB/cifdb.dbf

Démarrer la base de données pour monter l'état

SQL> startup mount;

Modifier les données Emplacement du fichier

SQL> alter database rename file '/u01/app/oracle/oradata/cifdb.dbf' to '/u01/app/oracle/oradata/CIFDB/cifdb.dbf';

Ouvrir la base de données

SQL> alter database open;

Vérifier le fichier de données

SQL> select name from v$datafile;

ou

SQL> select file_name, tablespace_name from dba_data_files where tablespace_name='cifdb';

Recommandations associées :

Comment modifier l'ordre des champs dans les tables de la base de données Oracle

Un résumé des méthodes d'utilisation des extensions Oracle

Conseils de développement de programmes Oracle

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn