oracle导入线上数据的全步骤

news2024/11/22 17:16:11

多租户架构允许oracle数据库成为一个多租户的容器数据库,也就是CDB,container database,与之相对应的,则是插入到这个容器里面的可插拔式数据库,pluggable database

一个CDB可以包含0,1或者多个用户创建的PDB。

一个PDB则是一个可插拔式的集合,它包含了用户,用户的对象,以及非用户的对象,它对外看起来就相当于一个non-CDB,也就是普通数据库。在12C之前的所有数据库都是non-CDB。

CDB里面的容器

一个容器既是一个PDB,也是一个root。

1、准备好数据库, 使用docker方式安装oracle数据库

docker run -d --name oracle  --privileged  -v /d/docker_env/oracle/db_data:/opt/oracle/oradata  -p 5050:5050 -p 5500:5500 -p 1521:1521 scalified/oracle-database:12.1.0.2-ee

注意第一次拉取镜像有点慢。

2、配置数据库

创建本地数据库用户名和密码,以及表空间,进入容器中

(2.1) docker exec -it bc261a5326c6  /bin/sh

(2.2) 修改tnsnames.ora文件, echo $ORACLE_HOME,找到文件位置

tnsnames.ora, $ORACLE_HOME\network\admin 下,

打开tnsnames.ora 查看默认数据库,配置环境变量,不然下面2.3代码无法生效

export ORACLE_SID=ORCLCDB

(2.3) 输入以下代码

sqlplus sys/change_on_install as sysdba

(2.4) 创建新的pdb AEOLUSOA, 注意路径是根据命令( select name from v$datafile;) 得出来,并非随意捏造。

CREATE PLUGGABLE DATABASE AEOLUSOA  ADMIN USER DB_OA_FZ_FJJSZX IDENTIFIED BY ****** STORAGE (MAXSIZE 100G) DEFAULT TABLESPACE TBS_DB_OA_FZ_FJJSZX  DATAFILE '/opt/oracle/oradata/ORCLCDB/AEOLUSOA/AEOLUSOA01.dbf' SIZE 150M AUTOEXTEND ON PATH_PREFIX = '/opt/oracle/oradata/ORCLCDB/AEOLUSOA/' FILE_NAME_CONVERT = ('/opt/oracle/oradata/ORCLCDB/pdbseed/', '/opt/oracle/oradata/ORCLCDB/AEOLUSOA/');

(2.5) 输入以下代码,启动PDB数据库: 

alter pluggable database AEOLUSOA open;  

(2.6) 防止每次docker重新启动,需要多次配置

alter pluggable database AEOLUSOA save state;

(2.7) 删除不要的pdb(可选)

drop pluggable database AEOLUSOA;

(2.8) 启动pdb,以下步骤一定要在自己pdb操作

 alter session set container=AEOLUSOA ;

(2.9)授权用户

grant imp_full_database to DB_OA_FZ_FJJSZX;

grant SYSDBA to DB_OA_FZ_FJJSZX;
grant all PRIVILEGES TO DB_OA_FZ_FJJSZX;
grant imp_full_database to DB_OA_FZ_FJJSZX;

(2.10)创建表空间(可选),一定要跟线上一致不然,这步不做的话,默认是system的表空间,导入数据需要用vi,修改dmp文件

 create tablespace TBS_DB_OA_FZ_FJJSZX_AUTOFORM logging datafile '/opt/oracle/oradata/ORCLCDB/AEOLUSOA/TBS_DB_OA_FZ_FJJSZX_AUTOFORM

.dbf' size 10240m autoextend on next 100m MAXSIZE unlimited   extent management local;

alter user DB_OA_FZ_FJJSZX_AUTOFORM quota unlimited on TBS_DB_OA_FZ_FJJSZX_AUTOFORM;

or

vi *.dmp
:1,$s/TBS_DB_OA_FZ_FJJSZX/SYSTEM/g

(2.12)配置tnsname.ora文件,将下面字复制到tnsname.ora文件中

AEOLUSOA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = AEOLUSOA)
    )
  )

(2.13) 数据库迁移导入

线上备份

(1)、执行服务器的备份脚本,如

set mySid=JSZXOA

set myPath=D:/data/%date%

set user1=DB_OA_FZ_FJJSZX
set pass1=*******

set user2=DB_OA_FZ_FJJSZX_AUTOFORM
set pass2=********

md "%myPath%"


exp '%user1%/%pass1%@%mySid%' file='%myPath%/%user1%.dmp' log='%myPath%/%user1%.log'
exp '%user2%/%pass2%@%mySid%' file='%myPath%/%user2%.dmp' log='%myPath%/%user2%.log'



(2)、数据在D:\data\{导出日期}\中。

(3)、复制到本地

(4)、dmp文件复制到启动的容器中,注意e6a787fccdf2,要使用docker ps命令查看当前docker启动的id

docker cp d:\data\2024-10-17\DB_OA_FZ_FJJSZX.dmp  e6a787fccdf2:/opt/oracle

(5)数据导入

imp DB_OA_FZ_FJJSZX/DB_OA_FZ_FJJSZX@AEOLUSOA fromuser=DB_OA_FZ_FJJSZX  touser=DB_OA_FZ_FJJSZX file=/opt/oracle/DB_OA_FZ_FJJSZX.dmp log=/opt/oracle/imp.log ignore=y

(imp功能参数说明)

https://help.kingbase.com.cn/v8/admin/reference/exp-imp/appendix-b.html#ignore

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2244597.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

嵌入式硬件实战基础篇(三)-四层板PCB设计-步进电机驱动(TMC2208/TMC2209)

引言:我们在嵌入式硬件杂谈(三)中有提到阻抗匹配的问题,也引入了高速PCB设计的思想,并且此篇实战基础篇主要是基础的四层板的绘制设计,后续实战会对高速板展开,本篇主要是提升读者的设计PCB板的…

uniapp 选择 省市区 省市 以及 回显

从gitee仓库可以拿到demo 以及 json省市区 文件 // 这是组件部分 <template><uni-popup ref"popup" type"bottom"><view class"popup"><view class"picker-btn"><view class"left" click"…

C语言练习.while语句

题目&#xff1a; 1.用C语言编程&#xff0c;运用while语句&#xff0c;写一段简短的代码。 分析&#xff1a; 1.运用while语句要注意&#xff1a;while语句&#xff0c;要设置好退出条件&#xff0c;不然就会造成无限循环的结果&#xff0c;导致程序停不下来。 2.编写代码…

Linux编辑器 - vim

目录 一、vim 的基本概念 1. 正常/普通/命令模式(Normal mode) 2. 插入模式(Insert mode) 3. 末行模式(last line mode) 二、vim 的基本操作 三、vim 正常模式命令集 1. 插入模式 2. 移动光标 3. 删除文字 4. 复制 5. 替换 6. 撤销上一次操作 7. 更改 8. 调至指定…

24.11.20 sevlet2

1.servlet是否线程安全 (线程特性) 线程安全的指标 //1.是否有共享数据 //2.多线程对共享数据做写操作 servlet中 不要创建成员变量 servlet是单实例的 所以成员变量(不加static) 就会在多线程间共享 如果service()方法中 对成员变量有写操作 则线程不安全 servlet中非特殊情…

【编译器】Dev C++建立C语言工程

【编译器】Dev C建立C语言工程 文章目录 [TOC](文章目录) 前言一、创建工程二、添加.c.h三、主函数处理四、在桌面中打开exe文件五、参考资料总结 前言 在使用了很多编译器之后&#xff0c; 要么是太大了&#xff0c; 要么是太新了&#xff0c; 要么是在线编译器&#xff0c;用…

【ArcGIS微课1000例】0132:从多个GIS视角认识与攀登珠穆朗玛峰

文章目录 1. Map Viewer中打开2. 场景查看器中打开3. ArcGIS中打开4. QGIS中打开5. Globalmapper中打开6. ArcGIS Earth中打开官网地址:https://www.arcgis.com/home/item.html?id=504a23373ab84536b7760c0add1e0c1c 1. Map Viewer中打开 以下展示不同底图样式的珠穆朗玛峰壮…

vscode uniapp 微信小程序 view、text、image标签红色波浪线

没修改前的红色波浪线样式 看好多人没解决方法&#xff0c;我的这种反正成功了&#xff0c;解决方法如下&#xff1a;首先降级Vue - Official 为 v2.0.12 选择版本 配置tsconfig.json "vueCompilerOptions": {// experimentalRuntimeMode 已废弃&#xff0c;现调整为…

SCTransNet验证测试

SCTransNet 是PRCV 2024、ICPR 2024 Track 1、ICPR 2024 Track 2 三项比赛冠军方案的 Baseline, 同时也是多个优胜算法的Baselines. Bilibili 视频分享 【工作分享】SCTransNet:面向红外弱小目标检测的空间 - 通道交叉 Transformer_哔哩哔哩_bilibili 极市平台 推文分享 …

电路模型和电路定理(二)

电路元件 是电路中最基本的组成单元。 电阻元件&#xff1a;表示消耗电能的元件 电感元件&#xff1a;表示产生磁场&#xff0c;储存磁场能的元件 电容元件&#xff1a;表示产生电场&#xff0c;储存电场能量的元件 电压源和电流源&#xff1a;表示将其他形式的能量转变成…

2023AE软件、Adobe After Effects安装步骤分享教程

2023AE软件是一款由Adobe公司开发的视频编辑软件&#xff0c;也被称为Adobe After Effects。它在广告、电影、电视和网络视频等领域广泛应用&#xff0c;用于制作动态图形、特效、合成和其他视觉效果。该软件支持多种视频和音频文件格式&#xff0c;具有丰富的插件和预设&#…

AI Large Language Model

AI 的 Large Language model LLM , 大语言模型&#xff1a; 是AI的模型&#xff0c;专门设计用来处理自然语言相关任务。它们通过深度学习和庞大的训练数据集&#xff0c;在理解和生成自然语言文本方面表现出色。常见的 LLM 包括 OpenAI 的 GPT 系列、Google 的 PaLM 和 Meta…

【大数据学习 | Spark】关于distinct算子

只有shuffle类的算子能够修改分区数量&#xff0c;这些算子不仅仅存在自己的功能&#xff0c;比如分组算子groupBy&#xff0c;它的功能是分组但是却可以修改分区。 而这里我们要讲的distinct算子也是一个shuffle类的算子。即可以修改分区。 scala> val arr Array(1,1,2,…

SrpingBoot基础

SpringBoot基本框架中重要常用的包讲解: .idea包和.mvn包框架生成不经常用 src包下主要存放前后端代码: main包下的java包存放的是后端java代码主要负责数据处理 resource包下存放的是配置资源和前端页面,其中static中存放的是前端html网页一般存放静 态资源,templates包…

Spring6 MyBatis

1. 依赖 <dependencies><!-- spring核心--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>6.1.14</version></dependency><!-- Resource注解的依赖…

JavaEE专栏介绍

专栏导读 在当今快速发展的信息技术时代&#xff0c;JavaEE作为企业级应用开发的核心技术之一&#xff0c;扮演着至关重要的角色。本“JavaEE”专栏旨在为对JavaEE感兴趣的开发者提供一个全面的学习平台&#xff0c;从基础概念到高级应用&#xff0c;帮助读者深入理解JavaEE框…

互联网数字化商品管理浪潮思考:从信息化到精准运营

目录 一、商品数字化转型面临的现状分析 &#xff08;一&#xff09;运营方向分析 &#xff08;二&#xff09;商品归类分析 二、商品数字化管理建设分析 三、基础建设——商品信息数字化 &#xff08;一&#xff09;商品信息质量数字化的目的 &#xff08;二&#xff0…

一文读懂Redis6的--bigkeys选项源码以及redis-bigkey-online项目介绍

一文读懂Redis6的--bigkeys选项源码以及redis-bigkey-online项目介绍 本文分为两个部分&#xff0c;第一是详细讲解Redis6的--bigkeys选项相关源码是怎样实现的&#xff0c;第二部分为自己对--bigkeys源码的优化项目redis-bigkey-online的介绍。redis-bigkey-online是自己开发的…

随机场模型与命名实体识别:深入理解CRF及其应用

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

Qlik Sense QVD 文件

QVD 文件 QVD (QlikView Data) 文件是包含从 Qlik Sense 或 QlikView 中所导出数据的表格的文件。QVD 是本地 Qlik 格式&#xff0c;只能由 Qlik Sense 或 QlikView 写入和读取。当从 Qlik Sense 脚本中读取数据时&#xff0c;该文件格式可提升速度&#xff0c;同时又非常紧凑…