Oracle 数据备份、恢复以及导入时表空间不存在的解决方案
一、数据备份(导出)
1、exp命令导出dmp文件(exp -help查看帮助信息)
命令:exp username/userpasswd@192.168.99.199/orcl file=C:\jds.dmp log=C:\jds.log tables=tablename...;(不写tables时表示导出当前用户所有表)
2、exp备份数据库中表结构(不要数据)
命令:exp username/userpasswd@192.168.99.199/orcl file=C:\jds.dmp log=C:\jds.log tables=tablename... rows=n;(不写tables时表示导出当前用户所有表)
3、PL/SQL导出
new Report Window--->写sql将要导出的数据查询出来--->Export Results导出不同文件类型的数据
二、数据恢复(导入)
1、imp命令导入dmp文件(imp - help查看帮助信息)
命令:imp username/userpasswd@127.0.0.1:1521/orcl file=C:\jds.dmp full=y;
2、imp命令导入表结构(不要数据)
(1)dmp文件包含数据
命令: imp username/userpasswd@127.0.0.1:1521/orcl file=C:\jds.dmp full=y rows=n;
(2)dmp文件本身就不包含数据
命令: imp username/userpasswd@127.0.0.1:1521/orcl file=C:\jds.dmp full=y;
3、PL/SQL导入(貌似只能导入dmp文件)
Tools ---> import tables
4、导入csv文件
csv文件样式(test.csv):
删除第一行,确保第一行就是数据内容。
(1)创建对应字段的表(要导进去数据的表TableEmp)...
(2)创建ctl文件(test.ctl):
--指定外部数据文件(要导入的csv文件)
INFILE "G:/test.csv"
--指定要导入的表(INSERT 要求导入之前表就为空;APPEND是指在表中追加记录;REPLACE表示删除旧记录‘delete’,替换成新纪录;TRUNCATE表示删除旧记录‘truncate’,替换成新纪录)
INSERT(APPEND,REPLACE,TRUNCATE) INTO TABLE TableEmp
--数据中每行记录默认用“,”隔开(为了防止数据记录中有‘,’则使用制表符X'09')
FIELDS TERMINATED BY X''
--表中字段没有对应值时,允许为空
TRAILING NULLCOLS (columnName1, columnName2...)
(3)执行命令:sqlldr username/userpasswd@orcl control=F:/test.ctl log=F:/test.log
这个表示导入成功的数据行数。excel数据格式的数据可以通过更换数据格式为csv文件格式,再进行导入操作。
三、imp导入dmp文件出现错误(表空间“JDS”不存在)解决方案
方案一:
(1)用system用户登录,查找导入的目标数据库的默认表空间,可以根据用户名查询
select username, default_tablespace from dba_users where username='ZCL';
(2)执行修改表空间语句(假设目标数据库的表空间名是:JDS_DATA)
alter tablespace JDS_DATA rename to JDS;
(3)执行imp语句
(4)导入成功后,执行改回原来表空间的名称
alter tablespace JDS rename to JDS_DATA;
方案二:
根据log信息重新创建对应的表,然后再执行imp语句(注意:要加上ignore=y)
Oracle 数据备份、恢复以及导入时表空间不存在的解决方案的更多相关文章
- oracle 12c 多租户 pdb 恢复(单个pdb数据文件、非系统pdb表空间、整个pdb数据库)
环境:数据库版本 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production 实验准备:1.-- 数据库归 ...
- Oracle 删除用户和表空间////Oracle创建删除用户、角色、表空间、导入导出、...命令总结/////Oracle数据库创建表空间及为用户指定表空间
Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下 对于单个user和tablespace 来说, 可以使用如下命令来完成. 步骤一: 删除user drop ...
- Oracle RMAN备份恢复指导书
目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库. ...
- oracle(数据备份)
1 --oracle数据备份(三种方法) 2 --1.逻辑备份与恢复:用Oracle提供的工具,导入/导出(exp,imp),数据 3 --泵导入/导出(impdp,expdp),装入器(SQL*Lo ...
- exp和imp导入导出时表空间问题【未完】
准备工作 第一步: 创建教师和学生用户 教师用户/密码 TEACHER/t123456 学生用户/密码 STUDENT/s123456 参考链接 http://www.cnblogs.com/what ...
- Linux服务器数据备份恢复策略
一.Linux 备份恢复基础 1.什么是备份 最简单的讲,备份数据的过程就是拷贝重要的数据到其他的介质之上(通常是可移动的),以保证在原始数据丢失的情况下可以恢复数据.一次备份可能是简单的 cp命令, ...
- Mongodb数据备份恢复
Mongodb数据备份恢复 一.MongoDB数据库导入导出操作 1.导出数据库 twangback为备份的文件夹 命令: mongodump -h 127.0.0.1[服务器IP] -d advie ...
- 19C imp 导入合并表空间
因为项目需要从9i 导数据到18C,所以发现如下特性 1.18C imp 导入数据,如果表空间在目标库没有,会将表导入到用户默认表空间 2.18C imp 导入数据,如果表空间在目标库有,但缺少权限. ...
- Oracle数据库 ORA-01555 快照过旧 (undo表空间:撤销表空间)
UNDO表空间用于存放UNDO数据,当执行DML操作时,oracle会将这些操作的旧数据写入到UNDO段,以保证可以回滚或者一致读等,而临时表空间主要用来做查询和存放一些缓冲区数据.你听说UNDO也是 ...
随机推荐
- MVC5模板部署到mono
VS2013中的MVC5模板部署到mono上的艰辛历程 2014-10-27 09:30 by FuzhePan, 3954 阅读, 46 评论, 收藏, 编辑 部署环境:CentOS7 + Mono ...
- leetcode 第41题 Trapping Rain Water
题目: Given n non-negative integers representing an elevation map where the width of each bar is 1, co ...
- 使用jQuery热门功能实现
非常多站点上都有返回顶部的效果,本文阐述怎样使用jquery实现返回顶部button. 首先须要在顶部加入例如以下html元素: <p id="back-to-top"> ...
- 读书笔记—CLR via C#线程25-26章节
前言 这本书这几年零零散散读过两三遍了,作为经典书籍,应该重复读反复读,既然我现在开始写博了,我也准备把以前觉得经典的好书重读细读一遍,并且将笔记整理到博客中,好记性不如烂笔头,同时也在写的过程中也可 ...
- jQuery获取Radio选择的Value值||两个select之间option的互相添加操作(jquery实现)
jQuery获取Radio选择的Value值: 1. $("input[name='radio_name'][checked]").val(); //选择被选中Radio的Val ...
- AngularJS学习笔记filter
filter是对数据进行过滤操作,比如按某个字段搜索.格式化数据等等,是一个非常有用的接口.下面就简单介绍下它的用法. AngularJS自带的filter接口,|是filter的分隔符,参数用:分隔 ...
- 关于HTTP头标
对于HTTP中的头字段,我表示真的好麻烦,特找来一段资料共享.希望能对大家有用. HTTP的头域包括通用头,请求头,响应头和实体头四个部分.每个头域由一个域名,冒号(:)和域值三部分组成.域名是大小写 ...
- 由link()和symlink()谈到软链接与硬链接
任何一个文件可以有多个目录项指向其i节点.创建一个向现存文件连接的方法是使用l i n k函数. #include <unistd.h> int link(const char * e x ...
- django源码阅读
最近再看django-bootstrap-toolkit,一直困惑于静态文件的路径问题.所以只能从源码入手了. 从manage.py开始.manage.py 比较简单就几句话. #!/usr/bi ...
- 设计适用于SOA的类型
我们经常把一个项目分层去开发,无论是通过三层来面向对象开发还是用WCF或Remoting等面向服务的方式开发,返回值只有一个,如果底层出错了我们一般写日志来记录这些错误,然后分析错误来解决问题,但用户 ...