温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

oracle数据库恢复的方法是什么

发布时间:2021-11-09 10:20:46 来源:亿速云 阅读:126 作者:iii 栏目:关系型数据库

这篇文章主要介绍“oracle数据库恢复的方法是什么”,在日常操作中,相信很多人在oracle数据库恢复的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”oracle数据库恢复的方法是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

--创建缺省表空间,系统支持表、公用数据表

1)

create bigfile tablespace NNC_DATA01 datafile 'D:\oracle\NNC_DATA01.dbf' size 100m autoextend on NEXT 10k;--蓝色字体分别是表空间名字,表空间存储路径

--表空间 名为 TALENTBASE

create bigfile tablespace TALENTBASE datafile 'D:\oracle\tablespace\tb_bxyh.dbf' size 100m autoextend on NEXT 10k;

--创建临时表空间

create bigfile temporary tablespace NNC_DATA01 tempfile 'D:\oracle\NNC_DATA01.dbf' size 100m autoextend on NEXT 10k;--蓝色字体分别是临时表空间名字,临时表空间存储路径

2)--创建用户,并关联表空间和虚拟表空间,并为用户赋权(共三个 dba、resource、connect);

     --使用附件中的如下语句:

--用户权限

grant connect,dba,resource to user;

--删除用户,如果是原有项目数据库用户,覆盖时需要先删除用户;如果是新项目则不需要删除,直接创建

--drop user 用户名 cascade;

drop user tb_bxyh cascade

--创建管理员用户

create user username identified by username default tablespace tb_bxyh temporary tablespace tb_bxyh_bxyh;

--授权

grant connect,dba,resource to username;

--修改限额

ALTER USER HCM QUOTA UNLIMITED ON username;

4、然后打开F:\oracle数据库文件\cmd文件,维护导入语句。

--当用exp导出的文件,恢复时使用imp;

imp 用户名/密码@ora11g file=导入文件路径 fromuser=导出用户名 touser=导入用户名 log=导入文件执行日志

imp H/H201709@orcl file=C:/Users/Administrator/Desktop/jiar/EXPH_20171011030000/oracle_backup/EXPH_20171011030000.dmp fromuser=H touser=H log=EXPH_20171011030000.log

--指定不导出表

expdp db/db@hrdb directory=DATA_PUMP_DIR exclude=table:"in('tp_sys_blob')" dumpfile=20190305.dmp logfile=20190305.log schemas=tt;

--当用expdp导出的文件,恢复时使用impdp;

impdp 用户名/密码@ora11g  directory=dump_dir dumpfile=导入文件名 logfile=导入文件执行日志 remap_schema=导出用户名:导入用户名

impdp tb_czyhtest/hr_39_DB@orcl  directory=dump_dir dumpfile=bak0210.dmp logfile=bak0210.log remap_schema=tb_czyhtest:tb_czyhtest

--查找导入路径

select  *  from  dba_directories;

5、执行完成后,必须查看导入日志文件,每次导入的表信息大概是1000多点,在导入结尾处会有如下字样,标示导入成功。出现警告不影响使用。

        (即将启用约束条件...成功终止导入, 但出现警告。)

  --如果备份导出的日志显示表缺少,可以用如下语句进行查询,并将查询结果在对应数据库中执行,再次备份导出时就可以将空表导出。

问题:有时候导入时,会提示表空间不足,这时候需要根据提示找到表空间,然后在PLsql中查询,当前表空间的存储文件有哪些。

比如经常会提示‘Tablebase’表空间不足,这时我们使用如下语句,查看已有文件信息:

----查询表空间大小以及使用率:

select tablespace_name, bytes, user_bytes, user_bytes/bytes,file_name from dba_data_files where tablespace_name='TALENTBASE';

目前使用的存储文件都在'E:\oradata\ora11g\...'下面,现在已经有talentbase11.dbf了,那么我们可以使用如下语句,在新增一个存储文件,然后在执行导入语句。

--表空间不足

 alter  tablespace TALENTBASE

 add datafile 'E:\oradata\ora11g\TALENTBASE12.dbf'

 size 100M autoextend on next 10M maxsize unlimited;

 --自动扩展

alter database datafile '/db/oracle/oradata/hrdb.dbf'autoextend on next 100m maxsize 10000m

--查找表空间

select * from dba_data_files

到此,关于“oracle数据库恢复的方法是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI