实战数据库表结构的复制和重要数据的转移

简介: 前言:在工作中有时候需要把数据的表结构从一个系统转移到另外一个系统,并且其中的某些管理表还要复制其中的数据; 本文档记录在实际工作中的一次表结构的复制和其中某些重要数据转移的过程; 思路:先进行表结构的复制,然后再进行数据的转移  详...

前言:在工作中有时候需要把数据的表结构从一个系统转移到另外一个系统,并且其中的某些管理表还要复制其中的数据;

本文档记录在实际工作中的一次表结构的复制和其中某些重要数据转移的过程;

思路:先进行表结构的复制,然后再进行数据的转移

 

详细的操作步骤如下:

一、准备工作

1、源数据库安装的时候需要选择跟目标数据库一样的字符集;查看字符集的脚本:select userenv('language') from dual;

二、从源数据库导入表结构到目标数据库1、在源库创建相应的导入目录,并进行授权给system用户脚本:create directory  dir   as 'D:\exp';            Grant read,write on directory dir  to system;2、进行表结构的导出导入2.1 导出脚本:expdp   datachk/datachk directory=dir  dumpfile=FULL.dmp SAMPLE=0.000001  schemas=datachk  

说明:导出的schemas是datachk,SAMPLE=0.000001 表明如果表有100万行的话,导出一行(根据导出日志,部分表可能会超出该记录,可以手工删除)

2.2 在目标数据库创建相应的表空间创建数据存放的表空间脚本:CREATE TABLESPACE SAPDATA DATAFILE   'D:\app\Administrator\oradata\db1\SAPDATA01.DBF' SIZE 1024M AUTOEXTEND OFFLOGGINGEXTENT MANAGEMENT LOCAL AUTOALLOCATEBLOCKSIZE 8KSEGMENT SPACE MANAGEMENT AUTOFLASHBACK ON;创建临时表空间脚本:CREATE TEMPORARY TABLESPACE SAPDATA_TEMP TEMPFILE   'D:\app\Administrator\oradata\db1\SAPDATA_TEMP.DBF' SIZE 1024M AUTOEXTEND ON NEXT 20M MAXSIZE UNLIMITED;2.3 创建DATACHK用户CREATE USER DATACHK  IDENTIFIED BY VALUES 'datachk'  DEFAULT TABLESPACE SAPDATA  TEMPORARY TABLESPACE SAPDATA_TEMP  PROFILE DEFAULT  ACCOUNT UNLOCK;  -- 2 Roles for DATACHK   GRANT CONNECT TO DATACHK;  GRANT DBA TO DATACHK; 2.4 创建USER_DATACHK用户

CREATE USER USER_DATACHK

  IDENTIFIED BY VALUES 'usesr_datachk'

  DEFAULT TABLESPACE SAPDATA

  TEMPORARY TABLESPACE SAPDATA_TEMP

  PROFILE DEFAULT

  ACCOUNT UNLOCK;

2.5 在目标数据库进行导入导入脚本:impdp system/oracle directory=dir  dumpfile=FULL.dmp

3、进行关键表数据的导出导入3.1在源数据库进行重要表数据的导出脚本:expdp   datachk/datachk directory=dir  dumpfile=FULL1.dmp tables=I_DATASET_FIELDS,STM_PRGERRLOG,SYTM_ALERT_BS_LOG,SYTM_MAIL_INFO,SYTM_MAIL_LOG,SYTM_MAIL_REPLY,SYTM_MAIL_TP

单独导出需要复制数据的表

3.2在目标数据库drop掉相应的表脚本:DROP TABLE DATACHK.I_DATASET_FIELDS;DROP TABLE DATACHK.I_DATASET_FIELDS_20131003;DROP TABLE DATACHK.I_DATASET_OPTIONS;DROP TABLE DATACHK.I_DATASET_ORDERSHOW;impdp datachk/datachk directory=dir  dumpfile=FULL1.dmp    

 

---------------------------------------------------------------------------------------------------------------

ORACLE 技术交流群:367875324

---------------------------------------------------------------------------------------------------------------

相关文章
|
29天前
|
存储 Oracle 关系型数据库
Dataphin常见问题之想要周期执行任务如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
1月前
|
存储 数据库
工作流Flowable 数据库表结构说明、Flowable 数据字典说明
工作流Flowable 数据库表结构说明、Flowable 数据字典说明
72 0
|
1月前
|
SQL Java 数据库连接
从来没想到我们会扒拉nohup文件去找我们想要的数据,然后往数据库中添加。。。...
从来没想到我们会扒拉nohup文件去找我们想要的数据,然后往数据库中添加。。。...
17 0
|
25天前
|
SQL 关系型数据库 MySQL
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
95 0
|
4天前
|
SQL 关系型数据库 MySQL
Python与MySQL数据库交互:面试实战
【4月更文挑战第16天】本文介绍了Python与MySQL交互的面试重点,包括使用`mysql-connector-python`或`pymysql`连接数据库、执行SQL查询、异常处理、防止SQL注入、事务管理和ORM框架。易错点包括忘记关闭连接、忽视异常处理、硬编码SQL、忽略事务及过度依赖低效查询。通过理解这些问题和提供策略,可提升面试表现。
25 6
|
5天前
|
存储 关系型数据库 MySQL
如何处理爬取到的数据,例如存储到数据库或文件中?
处理爬取的数据,可存储为txt、csv(适合表格数据)或json(适合结构化数据)文件。若需存储大量数据并执行复杂查询,可选择关系型(如MySQL)或非关系型(如MongoDB)数据库。以MySQL为例,需安装数据库和Python的pymysql库,创建数据库和表,然后编写Python代码进行数据操作。选择存储方式应考虑数据类型、数量及后续处理需求。
12 1
|
6天前
|
SQL 关系型数据库 MySQL
关系型数据库插入数据的语句
使用SQL的`INSERT INTO`语句向关系型数据库的`students`表插入数据。例如,插入一个`id`为1,`name`为'张三',`age`为20的记录:`INSERT INTO students (id, name, age) VALUES (1, '张三', 20)。如果`id`自增,则可简化为`INSERT INTO students (name, age) VALUES ('张三', 20)`。
5 2
|
6天前
|
SQL 存储 Oracle
关系型数据库查询数据的语句
本文介绍了关系型数据库中的基本SQL查询语句,包括选择所有或特定列、带条件查询、排序、分组、过滤分组、表连接、限制记录数及子查询。SQL还支持窗口函数、存储过程等高级功能,是高效管理数据库的关键。建议深入学习SQL及相应数据库系统文档。
8 2
|
8天前
|
SQL 数据库
数据库SQL语言实战(二)
数据库SQL语言实战(二)
|
13天前
|
人工智能 Cloud Native 算法
数据之势丨AI时代,云原生数据库的最新发展趋势与进展
AI与云数据库的深度结合是数据库发展的必然趋势,基于AI能力的加持,云数据库未来可以实现更快速的查询和决策,帮助企业更好地利用海量数据进行业务创新和决策优化。
数据之势丨AI时代,云原生数据库的最新发展趋势与进展

热门文章

最新文章