Oracle迁移数据表空间
为了一些大量基础数据的测试案例,IMP导入数据速度太慢,则使用下面方法可以对当前Oracle数据库中个某个表空间数据快速备份恢复;
为了一些大量基础数据的测试案例,IMP导入数据速度太慢,则使用下面方法可以对当前Oracle数据库中个某个表空间数据快速备份恢复;下面的方法也适合两个数据库(必须相同操作系统,相同数据库版本,相同字符集)之间的数据表空间移植。
实验环境:
source:192.168.1.249 tablespace: anenjoy
Target:192.168.1.248 tablespace:anenjoy02
步骤一:先确保你oracle运行的平台支持transport tablespace (基本上都是支持的,学习下查看平台的命令)
SQL> select * from v$transportable_platform; (查看当前oracle下支持的平台)
SQL> select platform_name from v$database;(查看当前oracle 运行的平台)
SQL> select d.platform_name,endian_format from v$transportable_platform tp , v$database d where tp.platform_name=d.platform_name; (查看oracle运行的平台是否在oracle 支持平台下,返回数据则为true)
步骤二:在source 上创建一个数据表空间和数据文件
SQL> create tablespace anenjoy datafile '/opt/oracle/oradata/test05/test05.dbf' size 50m extent management local autoallocate;
Tablespace created.
基于表空间创建表
SQL> create table test (name varchar2(15),work varchar2(10)) tablespace anenjoy; (两个字段 name和work)
Table created.
插入一些数据,
insert into test (name,work) values ('frank','IT');
SQL> select * from test;
NAME WORK
------------------------------ --------------------
frank IT
alex caiwu
leon yanfa
步骤三:Pick a Self-Contained Set of Tablespaces (查看是不是自含,也就是说需要传输的表空间是独立的)
execute dbms_tts.transport_set_check('anenjoy',true);
如果你有多个表空间的话呢,用逗号隔开如:’anenjoy01,anenjoy02‘
输出日志:
PL/SQL procedure successfully completed.
执行命令,,检查下是否存在不能传输的表空间
SQL> select * from transport_set_violations; 如果有返回行,则需要处理后才可以传输
步骤四:生成传输字符集
首先要先将源表空间置于只读状态,以防表空间数据的修改
SQL> alter tablespace anenjoy read only;
接下来就是数据的导出步骤了(重要)
执行导入操作。导入操作应该与导出操作相对应,若是以exp导出的,需要以imp导入,若是以expdp导出的,需要以impdp导入,参考使用官方的expdp和impdp
Host expdp system dumpfile=expdat.dmp directory=data_pump_dir transport_tablespaces='anenjoy' logfile=tts_export.log;
中间会提示输入system的密码,如果你忘记这个密码的话呢,可以参考上篇文章,学习下如何更改密码
提示点一:这里使用的是system的用户,如果你使用的是你自己定义的用户,那么你需要在target 主机上创建此用户
提示点二:命令行directory 参数data_pump_dir的路径是在/opt/oracle/admin/test05/dpdump下,test05是数据库名,这个目录在oracle database安装好之后就会创建的
可以通过SQL命令查看data_pump_dir 路径
select * from dba_directories;
日志输出为:
Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at 13:36:16
步骤五:copy数据到target 主机上
Transport both the datafiles and the export (dump) file of the tablespaces to a place that is accessible to the destination database.
scp test05.dbf oracle@192.168.1.248:/opt/oracle/oradata/test02/ (到target database 下)
scp -r dpdump/ oracle@192.168.1.248:/home/oracle/ (这个是export files)
然后呢,再将dpdump的文件copy到target 相应的data_pump_dir下,也就是你/opt/oracle/admin/ORALE_SID/dpdump
步骤六:数据导入
impdp system dumpfile=expdat.dmp directory=data_pump_dir transport_datafiles='/opt/oracle/oradata/test02/test05.dbf' logfile=tts_import.log
正常的日志输出:
Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at 00:41:33
之后,更改源和目标主机上的表空间属性
Alter tablespace anenjoy read write; (两台server上都去执行下)
验证阶段:
在target上,通过SQL 命令查看是否同步过来表空间anenjoy
SQL> select * from v$tablespace;
TS# NAME INCLUD BIGFIL FLASHB ENCRYP
6 ANENJOY YES NOYES
查看表空间anenjoy下的表数据
SQL> select * from test;
NAME WORK
------------------------------ --------------------
frank IT
alex caiwu
leon yanfa
现在就可以向表test中插入数据,也可以再target anenjoy 表空间下创建新的数据表和索引
相关阅读:
[Oracle]表空间之间的数据迁移记录

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Le langage Go est un langage de programmation efficace, concis et facile à apprendre. Il est privilégié par les développeurs en raison de ses avantages en programmation simultanée et en programmation réseau. Dans le développement réel, les opérations de base de données font partie intégrante. Cet article explique comment utiliser le langage Go pour implémenter les opérations d'ajout, de suppression, de modification et de requête de base de données. Dans le langage Go, nous utilisons généralement des bibliothèques tierces pour faire fonctionner les bases de données, telles que les packages SQL couramment utilisés, gorm, etc. Ici, nous prenons le package SQL comme exemple pour présenter comment implémenter les opérations d'ajout, de suppression, de modification et de requête de la base de données. Supposons que nous utilisons une base de données MySQL.

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Le mappage polymorphe Hibernate peut mapper les classes héritées à la base de données et fournit les types de mappage suivants : join-subclass : crée une table séparée pour la sous-classe, incluant toutes les colonnes de la classe parent. table par classe : créez une table distincte pour les sous-classes, contenant uniquement des colonnes spécifiques aux sous-classes. union-subclass : similaire à join-subclass, mais la table de classe parent réunit toutes les colonnes de la sous-classe.

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

Analyse des principes de base du système de gestion de base de données MySQL MySQL est un système de gestion de base de données relationnelle couramment utilisé qui utilise le langage de requête structuré (SQL) pour le stockage et la gestion des données. Cet article présentera les principes de base du système de gestion de base de données MySQL, y compris la création de bases de données, la conception de tables de données, l'ajout de données, la suppression, la modification et d'autres opérations, et fournira des exemples de code spécifiques. 1. Création d'une base de données Dans MySQL, vous devez d'abord créer une instance de base de données pour stocker les données. Le code suivant peut créer un fichier nommé "mon

HTML ne peut pas lire directement la base de données, mais cela peut être réalisé via JavaScript et AJAX. Les étapes comprennent l'établissement d'une connexion à la base de données, l'envoi d'une requête, le traitement de la réponse et la mise à jour de la page. Cet article fournit un exemple pratique d'utilisation de JavaScript, AJAX et PHP pour lire les données d'une base de données MySQL, montrant comment afficher dynamiquement les résultats d'une requête dans une page HTML. Cet exemple utilise XMLHttpRequest pour établir une connexion à la base de données, envoyer une requête et traiter la réponse, remplissant ainsi les données dans les éléments de la page et réalisant la fonction de lecture HTML de la base de données.

PHP est un langage de programmation back-end largement utilisé dans le développement de sites Web. Il possède de puissantes fonctions d'exploitation de bases de données et est souvent utilisé pour interagir avec des bases de données telles que MySQL. Cependant, en raison de la complexité du codage des caractères chinois, des problèmes surviennent souvent lorsqu'il s'agit de caractères chinois tronqués dans la base de données. Cet article présentera les compétences et les pratiques de PHP dans la gestion des caractères chinois tronqués dans les bases de données, y compris les causes courantes des caractères tronqués, les solutions et des exemples de code spécifiques. Les raisons courantes pour lesquelles les caractères sont tronqués sont des paramètres de jeu de caractères incorrects dans la base de données : le jeu de caractères correct doit être sélectionné lors de la création de la base de données, comme utf8 ou u.

Comment intégrer GoWebSocket à une base de données : Configurer une connexion à la base de données : Utilisez le package database/sql pour vous connecter à la base de données. Stocker les messages WebSocket dans la base de données : utilisez l'instruction INSERT pour insérer le message dans la base de données. Récupérer les messages WebSocket de la base de données : utilisez l'instruction SELECT pour récupérer les messages de la base de données.
