news 2026/4/3 3:18:00

Oracle数据库迁移

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Oracle数据库迁移

简单谈谈本人对Oracle数据库的理解

话不多说直接开始

第一步:将原始数据库导出
方式1(推荐):使用Data Pump
--创建文件路径 create or replace directory 路径名 as 'C:\backup' --根据情况自定义 --执行导出命令 expdp 用户名/密码@IP地址:端口/实例名 directory=路径名 dumpfile=backupDemo.dmp

directory:等于创建的路径名称执行成功后文件保存在 C:\backup 路径下,文件名为 backupDemo.dmp

方式2(数据库较大时速度慢):使用exp命令
--基本用法1:导出全部库 exp 用户名/密码@IP地址:端口/实例名 file=C:\backup\backupDemo.dmp full=y
--基本用法2:导出某个用户的某个库 exp 用户名/密码@IP地址:端口/实例名 file=C:\backup\backupDemo.dmp owner=users
--基本用法3:导出某个用户的某个表 exp 用户名/密码@IP地址:端口/实例名 file=C:\backup\backupDemo.dmp tables=(table1,table2)

file=C:\backup\backupDemo.dmp 表示文件存放位置full=y 表示导出整个库owner=users 表示要导出的用户tables=(table1,table2) 表示导出的表名

第二步:创建一个数据库实例(也可以使用原有的实例,只需要创建表空间)
1.1 创建实例

在服务器上找到 Database Configuration Assistant 工具,打开后如没有特殊需求一直点击下一步即可

输入数据库名称(数据库链接时的实例名称),这个要记好

注意在设置密码时为方便可用统一管理

创建完成可能会有警告信息,退出即可使用 sqlplus 进行连接

//管理员账号进行登录 sqlplus system/密码@IP地址:端口/实例名

能打通表示创建成功!

1.2 创建表空间(与原数据库表空间名称保持一致)\删除表空间
--创建临时表空间(用于存储数据库操作过程中的临时数据) CREATE TEMPORARY TABLESPACE temp --临时表空间名称 TEMPFILE 'C:\app\Administrator\oradata\temp.DBF' -- 找到自己的存放位置 SIZE 50M -- 初始大小为50M AUTOEXTEND ON -- 自动扩展 NEXT 50M MAXSIZE 20480M -- 每次增量为50M ,最大2048M EXTENT MANAGEMENT LOCAL; --创建表空间 CREATE TABLESPACE demo --临时表空间名称 LOGGING DATAFILE 'C:\app\Administrator\oradata\demo.DBF' -- 找到自己的存放位置 SIZE 50M -- 初始大小为50M AUTOEXTEND ON -- 自动扩展 NEXT 50M MAXSIZE 20480M -- 每次增量为50M ,最大2048M EXTENT MANAGEMENT LOCAL;
--删除表空间 DROP TABLESPACE 表空间名 INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS
1.3 创建用户并关联表空间
CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE demo -- 表空间 TEMPORARY TABLESPACE temp; -- 临时表空间 --修改用户表空间(分配错误或调整用户权限时使用) ALTER USER 用户名 DEFAULT TABLESPACE demo01;
1.4 设置用户权限\撤销用户权限

Oracle提供多种系统预定义角色

--给用户授权 --CONNECT角色:连接权限 --RESOURCE角色:创建一些特定的数据库对象等 --DBA角色:所有系统权限 GRANT CONNECT,RESOURCE,DBA TO userName; --撤销用户权限(分配错误或调整用户权限时使用) REVOKE CONNECT,RESOURCE FROM userName;
第三步:导入

这里要注意的是由于exp和expdp导出的原文件格式有区别,使用exp导出的文件只能用imp导入,expdb同理

方式1(推荐):使用Data Pump
--创建文件路径 create or replace directory 路径名 as 'C:\backup' --根据情况自定义 --执行导入命令 impdp 用户名/密码@IP地址:端口/实例名 remap_schema=原模式名:目标模式名 directory=路径名 dumpfile=backupDemo.dmp logfile=export.log TABLE_EXISTS_ACTION=REPLACE

remap_schema=原模式名:目标模式名:表示将数据还原到同名的模式中,如果目标库没有这个用户,需要先创建logfile=export.log:导入过程日志文件的名称。该日志文件也会被写入到 directory参数指定的目录中TABLE_EXISTS_ACTION=REPLACE:当要导入的表在目标模式中已经存在时,指定如何处理常用参数REPLACE:删除目标数据库中已存在的表,然后重新创建并导入数据APPEND:向现有表追加数据SKIP:跳过已存在的表TRUNCATE:截断现有表的数据再导入

方式2(数据库较大时速度慢):使用imp命令
imp 用户名/密码@IP地址:端口/实例名 FILE=c:\backup\backupDemo.dmp FULL=Y ignore=y

FULL=Y:导入转储文件中的全部内容ignore=y:遇到“对象已经存在”的创建错误(ORA-00955)时,忽略这个错误并继续处理

总结:

按照步骤即可实现基本的数据库复制以及还原,再导入过程中可能会遇到内存不足、主键冲突等问题。查看日志定位到有问题的地方解决即可。

文章转载自:Yichen_liuuil

原文链接:https://www.cnblogs.com/yichenliu/p/19057639

体验地址:http://www.jnpfsoft.com/?from=001YH

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/19 23:13:36

Java毕设项目:基于Springboot校园教室房间预约管理系统基于springboot高校教室资源管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/2 17:10:22

Wan2.2-T2V-A14B助力新闻机构快速生成时事播报短视频

Wan2.2-T2V-A14B助力新闻机构快速生成时事播报短视频 你有没有想过,一条突发新闻从发生到全网刷屏的视频推送,中间到底隔了多久? 过去,这可能需要记者奔赴现场、摄像师扛着设备拍摄、剪辑师熬夜拼接——至少几个小时起步。但现在&…

作者头像 李华
网站建设 2026/3/29 6:18:35

400057最新消息:退市股票风险大,真有靠谱信息吗?

关于400057的最新市场动态,首先需要明确一个关键前提。根据公开信息,“400057”是曾在旧三板(两网及退市公司板块)交易的“国嘉1”的证券代码。这类已退市公司的股票交易信息通常不透明、流动性极低,且存在重大投资风险…

作者头像 李华
网站建设 2026/3/23 20:03:21

打造自己的 Claude Code:LangGraph + MCP 搭建一个极简的 AI 编码助手

实践是最好的学习方式。为了深入理解 LangGraph 和模型上下文协议(MCP)服务器的生态,我们来从零开始构建一个 CLI 编码代理。我们的目标是,抛开 Claude Code 那些花里胡哨的功能,看看最基础的编码代理能做到什么程度。…

作者头像 李华
网站建设 2026/4/2 17:27:25

并查集(Union-Find)数据结构

本次围绕并查集的核心概念、实现方法、习题应用展开讨论,明确了并查集的实际使用场景与解题思路,以下是详细总结内容。一、 核心内容总结(一)并查集的定义与应用场景定义:并查集是一种抽象数据类型(ADT&…

作者头像 李华
网站建设 2026/4/2 13:04:15

基于模糊RBF神经网络轨迹跟踪研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室🍊个人信条:格物致知,完整Matlab代码及仿真咨询…

作者头像 李华