惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
Y
Y Combinator Blog
爱范儿
爱范儿
P
Proofpoint News Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Microsoft Security Blog
Microsoft Security Blog
小众软件
小众软件
F
Full Disclosure
酷 壳 – CoolShell
酷 壳 – CoolShell
Recent Announcements
Recent Announcements
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
F
Fortinet All Blogs
Google DeepMind News
Google DeepMind News
Jina AI
Jina AI
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
I
Intezer
S
SegmentFault 最新的问题
S
Schneier on Security
V
Vulnerabilities – Threatpost
T
Tenable Blog
P
Privacy & Cybersecurity Law Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Latest news
Latest news
Simon Willison's Weblog
Simon Willison's Weblog
D
DataBreaches.Net
L
LINUX DO - 热门话题
宝玉的分享
宝玉的分享
Hugging Face - Blog
Hugging Face - Blog
Stack Overflow Blog
Stack Overflow Blog
SecWiki News
SecWiki News
H
Hacker News: Front Page
aimingoo的专栏
aimingoo的专栏
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
T
Threatpost
罗磊的独立博客
L
LangChain Blog
The Last Watchdog
The Last Watchdog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
K
Kaspersky official blog
腾讯CDC
阮一峰的网络日志
阮一峰的网络日志
N
News | PayPal Newsroom
美团技术团队
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
D
Docker
T
The Blog of Author Tim Ferriss
N
Netflix TechBlog - Medium
博客园 - 【当耐特】
Cyberwarzone
Cyberwarzone

博客园 - 停留的风

SpringBoot入门 【SQL实践】其他常用SQL汇总 2017年考研英语二真题与答案(最新) oracle基础教程(8)oracle修改字符集 Oracle 异常处理汇总 领域驱动(DD)目录 [开源项目]Hibernate基本使用 Oracle基本教程 系统架构研究目录 设计原则目录 Oracle 物理备份--rman Oracle 使用SqlPlus管理 Oracle 用户管理与权限控制 oracle 科普 Java基础--Java语言介绍 Java基础--serialVersionUID 开源项目学习历程 开源项目学习记录 Eclipse 常用快捷键
Oracle 备份与还原
停留的风 · 2015-12-31 · via 博客园 - 停留的风

oracle 备份与还原

一、备份数据库(exp)

1、完全备份

exp demo/demo@orcl buffer=1024 file=d:\back.dmp full=y

demo:用户名、密码 

buffer: 缓存大小

file: 具体的备份文件地址 

full: 是否导出全部文件 

ignore: 忽略错误,如果表已经存在,则也是覆盖 

2、将数据库中system用户与sys用户的表导出 

exp demo/demo@orcl file=d:\backup\1.dmp owner=(system,sys)

 3、导出指定的表 

exp demo/demo@orcl file=d:\backup2.dmp tables=(teachers,students)

 4、按过滤条件,导出 

exp demo/demo@orcl file=d:\back.dmp tables=(table1) query=\" where filed1 like 'fg%'\"

 导出时可以进行压缩: 

命令后面 加上 compress=y   

如果需要日志,后面: log=d:\log.txt

5、备份远程服务器的数据库

exp 用户名/密码@远程的IP:端口/实例 file=存放的位置:\文件名称.dmp full=y

二、还原数据库

打开cmd直接执行如下命令,不用再登陆sqlplus。

1、完整还原

imp demo/demo@orcl file=d:\back.dmp full=y ignore=y log=D:\implog.txt

指定log很重要,便于分析错误进行补救。

2、导入指定表:

imp demo/demo@orcl file=d:\backup2.dmp tables=(teachers,students)

3、还原到远程服务器

imp 用户名/密码@远程的IP:端口/实例 file=存放的位置\文件名称.dmp full=y 

三、解决11G后,空表无法导出的问题

11G中有个新特性,当表无数据时,不分配segment,以节省空间。这样在导出数据的时候,空表不被导出

解决方法:

1、insert一行,再rollback就产生segment了。

  该方法是在在空表中插入数据,再删除,则产生segment。导出时则可导出空表。

2、设置deferred_segment_creation 参数

该参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配segment。

需注意的是:该值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。如需导出之前的空表,只能用第一种方法。

需要查询所有的空表,然后执行

select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0

然后再导出即可。

四、导入数据时遇到 ORACLE 错误 959,表空间 'xxx' 不存在

IMP-00003: 遇到 ORACLE 错误 959
ORA-00959: 表空间 'xxx' 不存在
IMP-00017: 由于 ORACLE 错误 959, 以下语句失败:

解决方案:

1、导入前,先创建表空间

(创建目录即为oracle的数据目录)

create tablespace xxx datafile 'D:\oracle\data\xxx.dbf' size 100M autoextend on;

2、指定用户该表空间不受限

alter user demo quota unlimited on xxx;//后面的xxx是表空间名

3、然后再imp即可

注意导入时一定要指定log,便于分析解决

成功提示是这样的: