Oracle 数据库备份与还原(命令,操作系统window)

本文详细介绍了Oracle数据库的备份与还原方法,包括全库备份、指定用户和表的备份及还原命令。此外还提供了给用户增加导入数据权限的操作步骤。
部署运行你感兴趣的模型镜像

Oracle数据库备份与还原命令

 注意:
 
  你要有足够的权限,权限不够它会提示你。
 
  数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上
(见附录)
 
数据导出:
 
  1 将数据库TEST完全导出,用户名system 密码123456 导出到D:\oracle.dmp
 
  exp system/123456@orcl file=d:\oracle.dmp  full=y(全表)
 
  2 将数据库中system用户与sys用户的表导出
 
  exp system/123456@orcl file=d:\oracle.dmp owner=(system,sys)
 
  3 将数据库中的表table1 table2导出
 
  exp system/123456@orcl file=d:\oracle.dmp tables=(table1,table2)
 
  4 将数据库中的表table1中的字段filed1"00"打头的数据导出
 
  exp system/123456@orcl file=d:\oracle.dmp tables=(table1)query=\" where filed1 like '00%'\"
 
  上面是常用的导出,对于压缩我不太在意,用winzipdmp文件可以很好的压缩。
 
  不过在上面命令后面 加上 compress=y 就可以了
 
  数据的导入
 
  1 D:\oracle.dmp 中的数据导入 TEST数据库中。
 
  imp system/123456@orcl file=d:\oracle.dmp
 
  上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
 
  在后面加上 ignore=y 就可以了。
 
  2 d:\oracle.dmp中的表table1 导入
 
  imp system/123456@orcl file=d:\oracle.dmp tables=(table1)
 
  基本上上面的导入导出够用了。不少情况我是将表彻底删除,然后导入。
 
  
附录一:
 给用户增加导入数据权限的操作
 第一,启动sql*puls
 第二,以system/123456登陆
 第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以省略)
 第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
   DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
      DBA,CONNECT,RESOURCE,CREATE SESSION  TO 用户名字 
 第五, 运行-cmd-进入dmp文件所在的目录
      imp userid=system/123456 full=y file=*.dmp
      或者 imp userid=system/123456 full=y file=filename.dmp

您可能感兴趣的与本文相关的镜像

Dify

Dify

AI应用
Agent编排

Dify 是一款开源的大语言模型(LLM)应用开发平台,它结合了 后端即服务(Backend as a Service) 和LLMOps 的理念,让开发者能快速、高效地构建和部署生产级的生成式AI应用。 它提供了包含模型兼容支持、Prompt 编排界面、RAG 引擎、Agent 框架、工作流编排等核心技术栈,并且提供了易用的界面和API,让技术和非技术人员都能参与到AI应用的开发过程中

<think>嗯,用户之前问了关于Oracle数据库备份还原的具体操作,我给出了冷备份RMAN备份、逻辑备份等方法。现在用户又提到想用PL/SQL Developer进行备份还原,并且引用了几个关于PL/SQL Developer连接Oracle的资料。需要整合这些信息,给出具体步骤。首先,用户的需求很明确,就是使用PL/SQL Developer工具进行备份还原。之前回答中可能没有详细提到这个工具的操作,所以需要补充。根据引用[2],Windos系统用PL/SQL Developer进行备份迁移的步骤,包括导出导入。另外,引用[1]提到使用PL/SQL Developer导入导出Oracle数据库的方法,所以需要详细说明如何操作。需要先确保PL/SQL Developer正确连接数据库,引用[4][5]提到了配置OCI库tnsnames.ora文件,这可能需要在备份前检查连接是否正常。然后,备份主要是导出数据,包括表结构、数据、存储过程等,可以通过导出用户对象导出表数据来实现。还原则是导入这些文件。用户可能遇到的问题包括导出时的权限问题、字符集不一致、表空间不存在等,需要给出注意事项,比如使用SYSDBA账号、检查字符集、预先创建表空间等。此外,生成的相关问题要考虑用户可能遇到的后续疑问,比如导出文件结构、导入时的错误处理、PL/SQLDeveloper的其他功能等。 需要按照步骤详细说明,从连接到导出,再到导入,每一步具体操作,比如Tools菜单下的ExportUser ObjectsExport Tables,以及导入时的执行SQL文件导入数据。同时,示例部分需要给出具体的截图或操作路径,但文字描述要清晰。最后,注意事项要涵盖常见问题,帮助用户避免错误。</think>### 使用 PL/SQL Developer 进行 Oracle 数据库备份还原操作指南 --- #### 一、环境准备 1. **正确连接数据库** - 配置 Oracle Instant Client 或完整客户端,设置`OCI Library`路径(如:`D:\instantclient_19_3\oci.dll`)[^4] - 确保`tnsnames.ora`文件包含目标数据库连接信息(示例配置): ```ini ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = orcl)) ) ``` [^5] --- #### 二、备份操作(导出) ##### 1. **导出用户对象(DDL)** - **步骤**: 1. 登录 PL/SQL Developer 2. 选择菜单 `Tools → Export User Objects` 3. 勾选目标用户(如 `SCOTT`) 4. 勾选 `Create tables`、`Create sequences` 等选项 5. 指定输出文件路径(如 `SCOTT_objects.sql`) ```sql -- 示例生成的 DDL 文件片段 CREATE TABLE "SCOTT"."EMP" ( "EMPNO" NUMBER(4,0), "ENAME" VARCHAR2(10) ) SEGMENT CREATION IMMEDIATE; ``` [^1] ##### 2. **导出表数据(DML)** - **步骤**: 1. 选择菜单 `Tools → Export Tables` 2. 选择表(可多选),勾选 `PL/SQL Developer format` 3. 指定输出文件(如 `SCOTT_data.dmp`) ```sql -- 示例数据文件格式 INSERT INTO EMP (EMPNO, ENAME) VALUES (7369, 'SMITH'); INSERT INTO EMP (EMPNO, ENAME) VALUES (7499, 'ALLEN'); ``` [^2] --- #### 三、还原操作(导入) ##### 1. **导入用户对象** - **步骤**: 1. 新建 SQL 窗口(`File → New → SQL Window`) 2. 打开导出的 DDL 文件(如 `SCOTT_objects.sql`) 3. 执行全部 SQL 语句(快捷键 `F5`) ##### 2. **导入表数据** - **步骤**: 1. 选择菜单 `Tools → Import Tables` 2. 选择数据文件(如 `SCOTT_data.dmp`) 3. 勾选 `Ignore create error`(避免重复对象冲突) --- #### 四、关键操作示例 | 操作类型 | 功能入口 | 文件类型 | 耗时参考(10GB 数据) | |---------|----------|----------|-----------------------| | 对象导出 | Export User Objects | `.sql` | 5-10 分钟 | | 数据导出 | Export Tables | `.dmp` | 20-30 分钟 | | 数据导入 | Import Tables | `.dmp` | 30-60 分钟 | --- #### 五、注意事项 1. **权限要求**: - 导出需 `SELECT ANY TABLE` 权限 - 导入需 `CREATE TABLE` `INSERT` 权限[^2] 2. **字符集问题**: - 检查源库目标库字符集是否一致(查询 `SELECT * FROM nls_database_parameters`) 3. **大表处理**: - 超过 1GB 的表建议分批导出(通过 `WHERE` 条件过滤) 4. **存储过程备份**: - 使用 `DBMS_METADATA.GET_DDL` 单独导出关键程序[^1] ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值