### Oracle备份与还原知识点 #### 一、Oracle备份与还原概览 在Oracle数据库管理中,备份和恢复是非常重要的操作,用于确保数据的安全性和可靠性。本文将基于提供的内容概述Oracle命令行下的备份与还原方法,并深入探讨其中的关键概念和技术。 #### 二、Oracle备份与还原基础 1. **备份权限问题** - **ORA-01045 错误**: 这个错误表明用户缺乏创建会话(CREATE SESSION)权限。 - **解决方案**: 授予用户必要的权限。 ```sql GRANT CREATE SESSION, RESOURCE, CONNECT, RECOVERY_CATALOG_OWNER TO 用户名; ``` 2. **登录模式选择** - 在进行备份或恢复操作时,通常会选择以`SYSDBA`模式登录。 - **示例**: `sqlplus / as sysdba` 3. **导出特定表** - 使用`EXPDP`或`EXP`命令导出特定表到`.dmp`文件。 - **示例**: 将`table1`导出到`daochu.dmp`文件。 ```shell exp system/manager@TEST file=D:\daochu.dmp tables=(table1) ``` 4. **导入特定表** - 使用`IMPDP`或`IMP`命令从`.dmp`文件导入特定表。 - **示例**: 从`daochu.dmp`文件导入`table1`。 ```shell imp system/manager@TEST file=D:\daochu.dmp tables=(table1) ``` 5. **使用UNION和UNION ALL** - **UNION**:合并多个查询结果,自动去除重复记录。 - **UNION ALL**:合并多个查询结果,不自动去除重复记录。 - **示例**: ```sql SELECT * FROM 表1 UNION SELECT * FROM 表2; SELECT * FROM 表1 UNION ALL SELECT * FROM 表2; ``` 6. **完整数据库备份** - **示例**: 完整备份名为`velcro10`的数据库。 ```shell exp velcro10/velcro10@10.189.45.22/velcro10 full=y file=E:\databak\20090107.dmp ``` - 参数解释: - `velcro10/velcro10`: 用户名/密码 - `10.189.45.22/velcro10`: 数据库地址/服务名 - `full=y`: 表示完全备份 - `file`: 备份文件路径 #### 三、高级备份选项 1. **条件备份特定表** - 可以通过添加`query`参数来实现对特定表的条件性备份。 - **示例**: 备份`table1`中`filed1`字段以`A1234`开头的数据。 ```shell exp system/manager@TEST file=D:\daochu.dmp tables=(table1) query="WHERE filed1 LIKE 'A1234%'" ``` 2. **忽略对象错误** - 在导入过程中,如果遇到对象错误(如表不存在等),可以使用`IGNORE`参数来忽略这些错误继续执行。 - **示例**: ```shell imp system/manager@TEST file=D:\daochu.dmp ignore=y ``` 3. **帮助信息** - 可以使用`IMP HELP=Y`获取导入命令的帮助信息。 #### 四、最佳实践 - **定期备份**: 定期执行完整的数据库备份。 - **测试恢复流程**: 定期测试备份文件的可恢复性。 - **多位置存储**: 将备份文件存储在不同的物理位置以防止灾难性损失。 - **权限管理**: 确保只有授权用户才能访问备份文件。 通过以上内容,我们可以了解到Oracle备份与恢复的基本操作及其在实际应用中的注意事项。正确地实施这些操作能够极大地提高数据库系统的稳定性和安全性。
新建的用户无法登陆.提示ORA-01045: user ... lacks CREATE SESSION privilege; logon denied2008-02-20 15:52oracle 8174
这个是用户登陆数据库没有建立会话权限的意思
用sys身份登陆
sql:
grant create,resource,connect,RECOVERY_CATALOG_OWNER session to the_user;
问题2:
在新建了用户,登陆时候选择normal,如果选择sysdba 还是会登陆到 系统表空间
问题3:
将d:daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:daochu.dmp tables=(table1)
问题4:
union和union all 的区别
UNION 运算符使您得以将两个或多个 SELECT 语句的结果组合成一个结果集。使用 UNION 组合的结果集都必须具有相同的结构。而且它们的列数必须相同,并且相应的结果集列的数据类型必须兼容。
没有all 时,过滤重复行,并且排序
问题5
命名行输入:
exp velcro10/velcro10@10.189.45.22/velcro10 full=y file=e:\databak\20090107.dmp
system/manager是用户名和密码
file=bible_db.dmp 是要导入的文件
log=dible_db是生成日志的名称
full=y是导入整个文件 (放在c:\目录下,你在那个目录运行上面命令,dmp文件就放在哪个目录)
- 粉丝: 5
- 资源: 6
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助