数据泵导入导出详解
数据泵技术是Oracle Database 10g 中的新技术,它比原来导入/导出(imp,exp)技术快15-45倍。速度的提高源于使用了并行技术来读写导出转储文件。
expdp使用
使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录。因此使用EXPDP工具时,,必须首先建立DIRECTORY对象,并且需要为数据库用户授予使用DIRECTORY对象权限。
首先得建DIRECTORY:
SQL> conn /as sysdba
SQL> CREATE OR REPLACE DIRECTORY dir_dump AS '/u01/backup/';
SQL> GRANT read,write ON DIRECTORY dir_dump TO public;
1) 导出scott整个schema
--默认导出登陆账号的schema
$ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par
expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott_full.dmp
LOGFILE=scott_full.log
--其他账号登陆, 在参数中指定schemas
$ expdp system/oracle@db_esuiteparfile=/orahome/expdp.par
expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott_full.dmp
LOGFILE=scott_full.log
SCHEMAS=SCOTT
2) 导出scott下的dept,emp表
$ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott.dmp
LOGFILE=scott.log
TABLES=DEPT,EMP
3) 导出scott下除emp之外的表
$ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott.dmp
LOGFILE=scott.log
EXCLUDE=TABLE:"='EMP'"
4) 导出scott下的存储过程
$ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott.dmp
LOGFILE=scott.log
INCLUDE=PROCEDURE
5) 导出scott下以'E'开头的表
$ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par
expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott.dmp
LOGFILE=scott.log
INCLUDE=TABLE:"LIKE 'E%'" //可以改成NOT LIKE,就导出不以E开头的表
6) 带QUERY导出
$ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par
expdp.par内容:
DIRECTORY=dir_dump
DUMPFILE=scott.dmp
LOGFILE=scott.log
TABLES=EMP,DEPT
QUERY=EMP:"whereempno>=8000"
QUERY=DEPT:"wheredeptno>=10 and deptno<=40"
注: 处理这样带查询的多表导出, 如果多表之间有外健关联, 可能需要注意查询条件所筛选的数据是否符合这样的外健约束, 比如EMP中有一栏位是deptno, 是关联dept中的主键, 如果"whereempno>=8000"中得出的deptno=50的话, 那么, 你的dept的条件"where
deptno>=10 and deptno<=40"就不包含deptno=50的数据, 那么在导入的时候就会出现错误.
expdp选项
1. ATTACH
该选项用于在客户会话与已存在导出作用之间建立关联.语法如下:
ATTACH=[schema_name.]job_name
schema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:
expdpscott/tiger ATTACH=scott.export_job
2. CONTENT
该选项用于指定要导出的内容.默认值为ALL.语法如下:
CONTENT={ALL | DATA_ONLY |METADATA_ONLY}
当设置CONTENT为ALL 时,将导出对象定义及其所有数据; 为DATA_ONLY时,只导出对象数据; 为METADATA_ONLY时,只导出对象定义,示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dump
CONTENT=METADATA_ONLY
3. DIRECTORY
指定转储文件和日志文件所在的目录.语法如下:
DIRECTORY=directory_object
directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS 目录,示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dump
建立目录:
CREATE DIRECTORY dump as 'd:dump';
查询创建了那些子目录:
SELECT * FROM dba_directories;
4. DUMPFILE
用于指定转储文件的名称,默认名称为expdat.dmp.语法如下:
DUMPFILE=[directory_object:]file_name[,….]
directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象,示例如下:
expdpscott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmp
5. ESTIMATE
指定估算被导出表所占用磁盘空间的方法.默认值是BLOCKS.语法如下:
EXTIMATE={BLOCKS | STATISTICS}
设置为BLOCKS时,oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,设置为STATISTICS时,根据最近统计值估算对象占用空间,示例如下:
expdpscott/tiger TABLES=emp ESTIMATE=STATISTICS
DIRECTORY=dumpDUMPFILE=a.dump
一般情况下, 当用默认值(blocks)时, 日志中估计的文件大小会比实际expdp出来的文件大, 用statistics时会跟实际大小差不多.
6. EXTIMATE_ONLY
指定是否只估算导出作业所占用的磁盘空间,默认值为N.语法如下:
EXTIMATE_ONLY={Y | N}
设置为Y时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为N时,不仅估算对象所占用的磁盘空间,还会执行导出操作,示例如下:
expdpscott/tiger ESTIMATE_ONLY=y NOLOGFILE=y
7. EXCLUDE
该选项用于指定执行操作时要排除的对象类型或相关对象.语法如下:
EXCLUDE=object_type[:name_clause][,….]
object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对
象.EXCLUDE和INCLUDE不能同时使用,示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
在EXPDP的帮助文件中, 可以看到存在EXCLUDE和INCLUDE参数, 这两个参数文档中介绍的命令格式存在问题, 正确用法是:
EXCLUDE=OBJECT_TYPE[:name_clause][,...]
INCLUDE=OBJECT_TYPE[:name_clause][,...]
示例:
Expdp
impdp
有了这些还不够, 由于命令中包含了多个特殊字符, 在不同的操作系统下需要通过转义字符才能使上面的命令顺利执行,
如:
EXCLUDE=TABLE:"IN('BIGTALE')"
8. FILESIZE
指定导出文件的最大尺寸,默认为0(表示文件尺寸没有限制).
9. FLASHBACK_SCN
指定导出特定SCN时刻的表数据.语法如下:
FLASHBACK_SCN=scn_value
scn_value用于标识SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同时使用,示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dmp
FLASHBACK_SCN=358523
10. FLASHBACK_TIME
指定导出特定时间点的表数据.语法如下:
FLASHBACK_TIME="TO_TIMESTAMP(time_value)"
示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME =
"TO_TIMESTAMP('25-08-200414:35:00','DD-MM-YYYY HH24:MI:SS')"
11. FULL
指定数据库模式导出,默认为N.语法如下:
FULL={Y | N}
为Y时,标识执行数据库导出.
12. HELP
指定是否显示EXPDP命令行选项的帮助信息,默认为N.当设置为Y时,会显示导出选项的帮助信息,示例如下:
expdp help=y
13. INCLUDE
指定导出时要包含的对象类型及相关对象.语法如下:
INCLUDE=object_type[:name_clause][,… ]
示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dmp INCLUDE=trigger
1.1.2 expdp选项
14. JOB_NAME
指定要导出作用的名称,默认为SYS_XXX.语法如下:
JOB_NAME=jobname_string
示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dmp
INCLUDE=triggerJOB_NAME=exp_trigger
后面想临时停止expdp任务时可以按Ctrl+C组合键,退出当前交互模式,退出之后导出操作不会停止,这不同于Oracle以前的EXP. 以前的EXP,如果退出交互式模式,就会出错终止导出任务. 在Oracle10g中,由于EXPDP是数据库内部定义的任务,已经与客户端无关. 退出交互之后,会进入export的命令行模式,此时支持status等查看命令:
Export> status
如果想停止改任务,可以发出stop_job命令:
Export>stop_job
如果有命令行提示: "是否确实要停止此作业([Y]/N):" 或"Are you sure you wish to stop this job ([yes]/no):", 回答应是yes或者no, 回答是YES以后会退出当前的export界面.
接下来可以通过命令行再次连接到这个任务:
expdp test/test@acf attach=expfull
通过start_job命令重新启动导出:
Export>start_job
Export> status
15. LOGFILE
指定导出日志文件文件的名称,默认名称为export.log.语法如下:
LOGFILE=[directory_object:]file_name
directory_object用于指定目录对象名称,file_name用于指定导出日志文件名.如果不指定directory_object.导出作用会自动使用DIRECTORY的相应选项值,示例如下:
expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log
16. NETWORK_LINK
指定数据库链名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.
expdp中使用连接字符串和network_link的区别:
expdp属于服务端工具,而exp属于客户端工具,expdp生成的文件默认是存放在服务端的,而exp生成的文件是存放在客户端.
expdp username/password@connect_string //对于使用这种格式来说,directory使用源数据库创建的,生成的文件存放在服务端。
如何将生成的文件放在目标数据库而不放在源数据库呢,在expdp中使用network_link.比如在本机expdp远程服务器的数据库,先在本机创建到服务端的dblink,然后创建directory 及授权,然后expdp.
a.创建到服务端的dblink
conn aa/aacc
create database link
b.创建directory
conn / assysdba
create or replace directory dir as '/home/oracle/dbbackup';
grantread,write on directory dir to
c.导出
expdpusername2/password2 directory=dirnetwork_link=link_name ... //这里的username2用创建dblink的那个用户aa,directory也是目标数据库创建的
比如在本机expdp远程服务器的数据库,先在本机创建到服务端的dblink,然后创建directory及授权,然后expdp useranme2/password2.....
如果想不生成dmp文件而直接导入一个数据库,原理和上面类似,直接使用impdp带network_link,这样可以直接impdp,而绕过了expdp的步骤
impdpnetwork_link=tolink schemas=link remap_schema=link:link2
17. NOLOGFILE
该选项用于指定禁止生成导出日志文件,默认值为N.
18. PARALLEL
指定执行导出操作的并行进程个数,默认值为1
19. PARFILE
指定导出参数文件的名称.语法如下:
PARFILE=[directory_path:]file_name
20. QUERY
用于指定过滤导出数据的where条件.语法如下:
QUERY=[schema.][table_name:]query_clause
schema 用于指定方案名,table_name用于指定表名,query_clause用于指定条件限制子句.QUERY选项不能与CONNECT = METADATA_ONLY, EXTIMATE_ONLY, TRANSPORT_TABLESPACES等选项同时使用,示例如下:
expdpscott/tiger directory=dump dumpfiel=a.dmp Tables=empquery='WHERE
deptno=20'
21. SCHEMAS
该方案用于指定执行方案模式导出,默认为当前用户方案.
22. STATUS
指定显示导出作用进程的详细状态,默认值为0.
23. TABLES
指定表模式导出.语法如下:
TABLES=[schema_name.]table_name[:partition_name][,…]
schema_name用于指定方案名,table_name用于指定导出的表名,partition_name用于指定要导出的分区名.
24. TABLESPACES
指定要导出表空间列表.
25.TRANSPORT_FULL_CHECK
该选项用于指定被搬移表空间和未搬移表空间关联关系的检查方式,默认为N.
当设置为Y时,导出作用会检查表空间直接的完整关联关系,如果表所在表空间或其索引所在的表空间只有一个表空间被搬移,将显示错误信息.
当设置为N时,导出作用只检查单端依赖,如果搬移索引所在表空间,但未搬移表所在表空间,将显示出错信息,如果搬移表所在表空间,未搬移索引所在表空间,则不会显示错误信息.
26.TRANSPORT_TABLESPACES
指定执行表空间模式导出.
27. VERSION
指定被导出对象的数据库版本,默认值为COMPATIBLE.语法如下:
VERSION={COMPATIBLE | LATEST |version_string}
为COMPATIBLE时,会根据初始化参数COMPATIBLE生成对象元数据;为LATEST时,会根据数据库的实际版本生成对象元数据.version_string用于指定数据库版本字符串.
使用IMPDP
IMPDP命令行选项与EXPDP有很多相同的,不同的有:
1、REMAP_DATAFILE
该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间搬移表空间时可能需要该选项.
REMAP_DATAFIEL=source_datafie:target_datafile
2、REMAP_SCHEMA
该选项用于将源方案的所有对象装载到目标方案中.
REMAP_SCHEMA=source_schema:target_schema
3、REMAP_TABLESPACE
将源表空间的所有对象导入到目标表空间中
REMAP_TABLESPACE=source_tablespace:target_tablespace
4、REUSE_DATAFILES
该选项指定建立表空间时是否覆盖已存在的数据文件.默认为N
REUSE_DATAFIELS={Y | N}
5、SKIP_UNUSABLE_INDEXES
指定导入是是否跳过不可使用的索引,默认为N
6、SQLFILE
指定将导入要指定的索引DDL操作写入到SQL脚本中
SQLFILE=[directory_object:]file_name
Impdpscott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql
7、STREAMS_CONFIGURATION
指定是否导入流元数据(Stream Matadata),默认值为Y.
8、TABLE_EXISTS_ACTION
该选项用于指定当表已经存在时导入作业要执行的操作,默认为SKIP
TABBLE_EXISTS_ACTION={SKIP | APPEND |TRUNCATE | FRPLACE }
当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND 时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表病追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项
9、TRANSFORM
该选项用于指定是否修改建立对象的DDL语句
TRANSFORM=transform_name:value[bject_type]
Transform_name用于指定转换名,其中SEGMENT_ATTRIBUTES用于标识段属性(物理属性,存储属性,表空间,日志等信息),STORAGE用于标识段存储属性,VALUE用于指定是否包含段属性或段存储属性,object_type用于指定对象类型.
Impdpscott/tigerdirectory=dump dumpfile=tab.dmp Transform =
segment_attributes:n:table
10、TRANSPORT_DATAFILES
该选项用于指定搬移空间时要被导入到目标数据库的数据文件
TRANSPORT_DATAFILE=datafile_name
Datafile_name用于指定被复制到目标数据库的数据文件
Impdpsystem/manager DIRECTORY=dump DUMPFILE=tts.dmp
TRANSPORT_DATAFILES = '/user01/data/tbs1.f'
调用IMPDP
1、导入表
Impdpscott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmpTABLES=dept,emp
Impdp system/manageDIRECTORY=dump_dir DUMPFILE=tab.dmp
TABLES=scott.dept,scott.emp REMAP_SCHEMA=SCOTT:SYSTEM
第一种方法表示将DEPT和EMP表导入到SCOTT方案中,第二种方法表示将DEPT 和EMP表导入的SYSTEM
注意,如果要将表导入到其他方案中,必须指定REMAPSCHEMA选项.
2、导入方案
Impdpscott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmpSCHEMAS=scott
Impdp system/manager DIRECTORY=dump_dir
DUMPFILE=schema.dmpSCHEMAS=scott REMAP_SCHEMA=scott:system
3、导入表空间
Impdpsystem/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp TABLESPACES=user01
4、导入数据库
Impdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y
--赋予expdp,impdp的权限
SQL> grant exp_full_database,imp_full_database to susan;
附录资料:
一、创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。
create directory dpdata1 as 'd:\test\dump';
二、查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错)
select * from dba_directories;
三、给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予。
grantread,write on directory dpdata1 to scott;
四、导出数据
1)按用户导
expdpscott/tiger@orcl schemas=scottdumpfile=expdp.dmpDIRECTORY=dpdata1;
2)并行进程parallel
expdpscott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmpparallel=40
job_name=scott3
3)按表名导
expdpscott/tiger@orcl TABLES=emp,deptdumpfile=expdp.dmpDIRECTORY=dpdata1;
4)按查询条件导
expdpscott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmpTables=emp
query='WHERE deptno=20';
5)按表空间导
expdp system/manager DIRECTORY=dpdata1
DUMPFILE=tablespace.dmpTABLESPACES=temp,example;
6)导整个数据库
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmpFULL=y;
五、还原数据
1)导到指定用户下
impdpscott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmpSCHEMAS=scott;
2)改变表的owner
impdp system/manager DIRECTORY=dpdata1
DUMPFILE=expdp.dmpTABLES=scott.dept REMAP_SCHEMA=scott:system;
3)导入表空间
impdp system/manager DIRECTORY=dpdata1
DUMPFILE=tablespace.dmpTABLESPACES=example;
4)导入数据库
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmpFULL=y;
5)追加数据
impdp system/manager DIRECTORY=dpdata1
DUMPFILE=expdp.dmpSCHEMAS=system TABLE_EXISTS_ACTION=append;
exp/imp与expdp/impdp的用法区别
1:把用户usera的对象导到用户userb,用法区别在于
fromuser=useratouser=userb ,remap_schema='usera':'usera' 。例如
imp system/passwdfromuser=useratouser=userbfile=/oracle/exp.dmp log=/oracle/exp.log;
impdp system/passwd
directory=expdpdumpfile=expdp.dmpremap_schema='usera':'userb'
logfile=/oracle/exp.log;
2:更换表空间,用exp/imp的时候,要想更改表所在的表空间,需要手工去处理一下,
如alter table xxx move tablespace_new之类的操作。
用impdp只要用remap_tablespace='tabspace_old':'tablespace_new'
3:当指定一些表的时候,使用exp/imp 时,tables的用法是tables=('table1','table2','table3')。expdp/impdp的用法是tables='table1','table2','table3'
4:是否要导出数据行
exp(ROWS=Y 导出数据行,ROWS=N 不导出数据行)
expdp content(ALL:对象+导出数据行,DATA_ONLY:只导出对象,METADATA_ONLY:只导出数据的记录)
Oracle数据泵导入导出案例
2013-11-06 0个评论作者:laizhenhai88
收藏我要投稿Oracle数据泵导入导出案例
Oracle数据库导入导出工具,可以使用exp/imp,但这是比较早期的工具。本文主
要介绍数据泵expdp/impdp工具的使用。
建立数据泵目录
使用数据泵需要先建directory
create directory dump_scott as'/home/oracle/dump/scott'
查看建立的目录
Select * from dba_directories
赋权
Grant read,write on directory dump_scotttoscott
导出案例1,按表导出
expdpscott/tiger directory=dump_scottdumpfile=tab.dmp logfile=scott.log
tables=dept,emp
导出案例2,按用户导出
expdpscott/tiger directory=dump_scottdumpfile=dumpscott.dmp schemas=scott
导出案例3,全库导出,且并行导出
expdpscott/tiger directory=dump_scottdumpfile=full.dmp parallel=4 full=y
导入案例1,按表导入,从scott到scott2
impdp scott2/tiger directory=dump_scottdumpfile=tab.dmp
tables=scott.dept,scott.empremap_schema=scott:scott2
导入案例2,按用户导入,从scott到scott2
impdpscott/tiger
directory=dump_scottdumpfile=schema.dmpremap_schema=scott:scott2
导入案例3,全库导入
impdpscott/tiger directory=dump_scottdumpfile=full.dmp full=y
导入案例4,无落地文件的用户拷贝,需要建立db link
impdpscott/tiger
directory=dump_scottnetwork_link=remote_linkremap_schema=scott:scott2 1、首先建立目录:
create directory 目录名称as '数据库服务器上的一个目录',如:create directory 别名as 'd:\服务器目录名';
将导入或导出的文件放在这个目录下
2、导出及导入
以SID=orcl,导出dmp的账号为test,导入dmp的账号为test为例。
若将数据从sfz中导出:
expdp test/test@orcl directory=别名dumpfile=导出文件名
导入到test中:
impdp test/test@orcl directory=别名dumpfile=导出文件名.dmp
导入到处用户名不一样时,做个映射,一样时,不用写
remap_schema=test:test1
数据泵导入导出
数据泵导入导出 导入imp/导出exp 权限设置: 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用户名 数据导出: 1将数据库orcl完全导出,用户名system密码manager导出到D:\expdat.dmp中 exp system/manager@orcl file=d:\expdat.dmp full=y 2将数据库中system用户与sys用户的表导出 exp system/manager@orcl file=d:\expdat.dmp owner=(system,sys) 3将数据库中的表emp、dept导出 exp scott/tiger@orcl file=d:\dump\newsexpdat.dmp tables=(emp,dept) 4将数据库中的表emp中的字段ename以"G"打头的
数据导出 exp scott/tiger@orcl file=d:\expdat.dmp tables=(emp) query=\"where ename like'S%'\" 数据的导入 1将D:\dump\expdat.dmp中的数据导入user数据库中。imp system/manager@orcl file=d:\expdat.dmp imp scott/tiger@orcl full=y file=d:\dump\newexpdat.dmp ignore=y 2将d:\expdat.dmp中的表emp导入 imp test/test@orcl file=d:\db.expdat.dmp tables=(expdat) imp test/test@orcl file=d:\db.expdat.dmp tables=(expdat) 1、exp system/oracle@jlnbd file=d:\temp.dmp tables=(ds.tbdsmf,ds.tbdsaf,ds.tbdsgf)例子(导出数据所在服务器的用户名和密码)
数据库数据导入导出方法
数据库数据导入导出方法 1逻辑导入 备份方法: 在主机服务器的DOS提示符下输入: EXP USERID=ZLHIS/HIS BUFFER=4096 FILE=D:\20040101.dmp LOG=D:\20040101.log OWNER=(ZLHIS) ROWS=Y INDEXES =Y CONSTRAINTS =Y GRANTS=Y DIRECT=N 表示只导出zlhis用户的数据对象 Buffer:该值越大,导出的时间略短。 File:表示导出的dmp的文件路径 Log:表示导出的日志文件路径 其余参数可以通过exp help=y查询。 2逻辑导出 在主机服务器的DOS提示符下输入: IMP USERID=ZLHIS/HIS FROMUSER=(ZLHIS) TOUSER=(ZLHIS) BUFFER=30720 FILE=D:\20040101.dmp LOG=D:\20040101.log ROWS=Y INDEXES=Y CONSTRAINTS =Y GRANTS =Y SHOW=N COMMIT =Y IGNORE=Y 表示只导入zlhis用户的数据对象 Buffer:该值越大,导入的时间略短。 File:表示导入的dmp的文件路径 Log:表示导入的日志文件路径 Ignore:Oracle在恢复数据的过程中,当恢复某个表时,该表已经存在,就要根据ignore 参数的设置来决定如何操作。若ignore=y,Oracle不执行CREATE TABLE语句,直接将数据插入到表中,如果插入的记录违背了约束条件,比如主键约束,则出错的记录不会插入,但合法的记录会添加到表中。若ignore=n,Oracle不执行CREATE TABLE语句,
数据库第二次作业 能使用 Oracle 的数据泵进行数据的备份和数据恢复。
实验要求:能使用Oracle 的数据泵进行数据的备份和数据恢复。加深对Oracle 基本锁的类型以及封锁机制的理解,掌握监控Oracle 多粒度封锁机制的方法。 实验内容: 一、使用数据泵进行数据逻辑备份和恢复 用expdp 和impdp 使用程序,导出数据是将数据库中的数据导出到一个操作系统文件中(即导出文件中),导入数据是将导出文件中的数据导入到数据库中。expdp 和impdp 都是服务器端的使用程序,只能在oracle 服务器端使用,不能在客户端使用。而exp 和imp 是客户端实用程序,既可以在客户端使用,也可以在服务器端使用。由于expdp 和impdp 的速度优于exp 和imp ,所以oracle 建议使用expdp 和impdp 。 步骤: 1 、创建目录对象并授权 使用expdp 和impdp 实用程序时,其导出文件只能存放在directory( 目录) 对象指定的OS (操作系统)目录中,而不能直接指定OS 目录。 目录对象是数据库中的一个对象,它是使用create directory 语句建立的对象,而不是操作系统中的某个目录,但它指向操作系统中的某个目录。目录对象不是方案对象,它不属于某个用户,而是属于数据库。 a. 先在操作系统中创建两个目录,如e:\dump1 和e:\dump2 。这两个目录都可以保存导出文件和日志文件。 b. SYS 用户创建两个directory 对象,如dirdp1 和dirdp2 ,用于指向这两个操作系统目录,并为运行expdp 和impdp 实用程序数据库用户,如SCOTT 和pf 用户授权使用这两个directory 对象的权限。导出文件、日志文件就保存在dirdp1 和dirdp2 所指的操作系统目录中。最后,可以从dba_directories 数据字典视图中查询所创建的directory 对象。 SQL> create directory dirdp1 as 'e:\dump1'; SQL> create directory dirdp2 as 'e:\dump2'; SQL> grant read, write on directory dirdp1 to SCOTT; SQL> grant read, write on directory dirdp2 to SCOTT; SQL> select * from dba_directories where directory_name like 'DIR%'; 2 、使用expdp 导出数据 使用expdp 的命令行语法是: expdp username/password parameter [, parameter2,...] 参数tablespace 用于指定要导出的表空间列表,语法如下:
Excel到SQLServer数据库的数据导入导出技术研究
Excel到S QL Server数据库的数据导入导出技术研究3 王晓刚 杨春金 (武汉理工大学信息工程学院 武汉 430063) 摘 要 介绍Del phi中,采用新一代数据访问技术dbExp ress和OLE技术来实现Excel数据表到S QL Server数据库的数据导入和导出,及其在高速公路车辆查询系统中的应用。 关键词 dbExp ress S QL server Excel OLE 中图分类号 TP317.3 1 引言 办公自动化信息管理系统的用户常常会遇到需要把由Excel存储的数据资料导入到S QL Server 数据库,同时又要把S QL Server数据库中的数据导出到Excel数据表的问题。不同的编程语言有不同的解决方法。本文介绍应用Del phi编程来实现Excel数据表到S QL Server数据库的数据导入导出技术。 2 基本思路 OLE自动化是W indows应用程序操纵另一个程序的一种机制。被操纵的一方称为自动化服务器,操纵自动化服务器的一方称为自动化控制器。通过引用这些对象实现对自动化服务器的调用,然后通过设置对象的属性和使用对象的方法操纵自动化服务器,实现两者之间的通讯。 Del phi在数据库方面提供的强大又富有弹性的能力给广大编程人员带来了方便。dbExp ress是Del phi下一代的数据访问技术。提供高效率数据访问以及提供跨平台能力的数据访问引擎。dbEx2 p ress包含了7个组件,它们是TS QLConnecti on、TS QLDataSet、TS QLQuery、TS QLSt oredPr oc、TS QLT2 able、TS QLMonit or和TSi m p le DataSet,这些组件的功能就是让应用程序连接后端数据库,访问数据表中的数据,把修改的数据更新回数据库中以及让程序员观察dbExp ress向后端数据库下达命令等。 Del phi完全支持OLE应用程序自动化,提供的Servers栏控件可以很容易开发OLE自动化控制器实现对OLE自动化服务器的调用。在Del phi内部运行OLE自动化程序需要在U ses语句中加入Co2 mobj来开始自动化程序。通过调用Create O le Ob2 ject来检索一个自动化对象,Create O le Object调用大量系统内部的OLE函数,创建一个I dis patch的实例,并从Variant中返回一个Del phi变量类型,可以根据不同的环境提供不同的功能,这里我们使用Variant来引用Excel内部的对象以建立Del phi与Excel之间的连接。并采用dbExp ress建立Del phi 和S QL Server之间的连接,来实现Excel数据表到S QL Server数据库的数据导入和导出。 3 dbExp ress访问S QL Server技术 dbExp ress通过TS QLConnecti on组件同S QL Server数据库进行连接。双击TS QLConnecti on,就会弹出它的组件编辑器,在这个组件编辑器里,我们就可以定义连接数据库的类型,数据库名称,登陆帐号、密码等信息。以下就是我们连接名为DB2 SERVER的数据库服务器的具体情况: D river Name=MSS QL//数据库类型 Host N a me=DBSERVER//数据库服务器 Database=ETEST//数据库名 U ser_Na me=sa//登陆帐号 Pass word=sa//登陆密码 B l obSize=-1 LocaleCode=0000 MSS QL Transls olati on=ReadComm ited OS Authenticati on=False 在连接上数据库以后,dbExp ress提供了两种方法:一是使用TSi m p le DataSet组件;二是使用TS QLDataSet搭配T DataSetPr ovider和TClient D ata2 Set组件来对数据库进行访问。在实现简单数据访 85 计算机与数字工程 第35卷3收到本文时间:2006年6月8日 作者简介:王晓刚,男,硕士研究生,研究方向:网络设计及信息管理。杨春金,男,副教授,研究方向:信号与信息处理。
数据导入导出
C:\Users\student01>exp ceshi/seentao tablespaces=(system,ceshi) file=d:\ceshi4.d mp C:\Users\student01>exp system/seentao owner=ceshi file=d:\ceshi5.dmp C:\Users\student01>exp ceshi/seentao tablespaces=(system,ceshi) transport_tables pace=y file=d:\ceshi6.dmp Export: Release 10.2.0.1.0 - Production on 星期二8月5 14:33:53 2014 Copyright (c) 1982, 2005, Oracle. All rights reserved. 连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options EXP-00044: 必须以'SYSDBA' 身份连接, 才能进行时间点恢复或可传输的表空间导入EXP-00000: 导出终止失败 C:\Users\student01>imp ceshi/seentao file=d:\ceshi.dmp fromuser=ceshi C:\Users\student01>imp ceshi/seentao file=d:\ceshi.dmp full=y C:\Users\student01>imp ceshi/seentao file=d:\ceshi00.dmp fromuser=ceshi 数据泵导入导出 C:\Users\student01>sqlplus/nolog SQL*Plus: Release 10.2.0.1.0 - Production on 星期二8月5 15:27:06 2014 Copyright (c) 1982, 2005, Oracle. All rights reserved. SQL> conn/as sysdba 连接数据库 已连接。 SQL> select * from dba_directories where directory_name='DATA_PUMP_DIR'; OWNER DIRECTORY_NAME ------------------------------ ------------------------------ DIRECTORY_PATH -------------------------------------------------------------------------------- SYS DATA_PUMP_DIR C:\oracle\product\10.2.0\db_1\admin\orcl\dpdump\ SQL> exit 从Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options 断开 C:\Users\student01>expdp ceshi/seentao dumpfile=ceshi.dmp 数据泵导出数据库 C:\Users\student01>md d:\pump C:\Users\student01>sqlplus/nolog SQL*Plus: Release 10.2.0.1.0 - Production on 星期二8月5 15:39:07 2014 Copyright (c) 1982, 2005, Oracle. All rights reserved.
oracle使用数据泵导出和导入
使用数据泵导出和导入 几乎所有DBA都熟悉oracle的导出和导入实用程序,它们将数据装载进或卸载出数据库,在oracle database 10g和11g中,你必须使用更通用更强大的数据泵导出和导入(Data Pump Export and Import)实用程序导出和导入数据。 以前的导出和导入实用程序在oracle database 11g中仍然可以使用,但是Oracle强烈建议使用数据泵(Data Pump)技术,因为它提供了更多的高级特性。例如,你可以中断导出/导入作业,然后恢复它们;可以重新启动已失败的导出和导入作业;可以重映射对象属性以修改对象;可以容易地从另一个会话中监控数据泵的作业,甚至可以在作业过程中修改其属性;使用并行技术很容易快速移动大量的数据;因为oracle提供了针对数据泵技术的API,所以可以容易地在PL/SQL 程序中包含导出/导入作业;可以使用更强大的可移植表空间特性来快速移植大量的数据,甚至可在不同操作系统平台之间移动。 与旧的导出和导入实用程序不同,数据泵程序有一组可以在命令行中使用的参数以及一组只能以交互方式使用的特殊命令,你可以通过在命令行中输入expdp help = y 或者impdp help = y快速获取所有数据泵参数及命令的概述。 一.数据泵技术的优点 原有的导出和导入技术基于客户机,而数据泵技术基于服务器。默认所有的转储,日志和其他文件都建立在服务器上。以下是数据泵技术的主要优点: 1.改进了性能 2.重新启动作业的能力 3.并行执行的能力 4.关联运行作业的能力 5.估算空间需求的能力 6.操作的网格方式 7.细粒度数据导入功能 8.重映射能力 二.数据泵导出和导入的用途 1.将数据从开发环境转到测试环境或产品环境 2.在不同的操作系统平台上的oracle数据库直接的传递数据 3.在修改重要表之前进行备份 4.备份数据库 5.把数据库对象从一个表空间移动到另一个表空间 6.在数据库直接移植表空间 7.提取表或其他对象的DDL 注意:数据库不建立完备的备份,因为在导出文件中没有灾难发生时的最新数据。但是对于较小的数据库和个别的表空间的导出,数据导出仍然是一个可行的备份工具。 三.数据泵的组成部分
DB数据库导入导出定稿版
D B数据库导入导出精 编W O R D版 IBM system office room 【A0816H-A0912AAAHH-GX8Q8-GNTHHJ8】
DB2数据导入导出 2012年3月12日 编辑:徐彦 一、环境 操作系统:Redhat Linux AS 5.5 (2.6.18-128.el5PAE #1 SMP i686 i386 GNU/Linux) 数据库版本:DB2 WorkGroup版 V9.7.0 (数据库版本可通过连接数据库来查看,db2 connect to dbname)二、声明 实例用户,默认为db2inst1 Das用户,默认为dasusr1 数据库安装目录($INSTHOME),默认为/opt/ibm/db2/V9.7 实例安装目录($HOME),默认为/home/db2inst1/ 实例名:db2inst1 数据库名:
三、导出具体步骤 3.1导出对象结构 建议单独创建一个数据导出目录,利于导出文件整理的清晰。 $ su – db2inst1 # 切换至db2inst1用户 $ cd /
3.2导出数据库数据 (建议在
金算盘软件数据导入和导出操作方法
金算盘软件维护集锦 此为201003版本,本期讲一下“导入导出”的一些注意事项,以“往来期初”导入导出为例。 导入导出这个功能是十分有用的,特别是在实施时,对于数据量较大一些基础信息,如果采用手工录入,将会费时费力,影响效率。利用我们软件的“导入导出”功能,将会大大提高工作效率。但如果有些细节不注意,会导入不成功。现说明如下。 导入任何信息之前,最好先在我们软件里做几笔数据,再导出来,其目的就是要利用导出文件的格式对要导入的信息进行编辑、整理,再将编辑、整理的信息导入到软件里。我们软件的导出文件有两个,后缀名分别是INI、Dat,以往来期初为例,其导出的文件是Format.INI、RPInit.Dat。 编辑、整理信息,实际上就是对Dat文件里的内容进行编辑。很多服务人员都习惯以“记事本、写字板”方式打开,实际上最好的方式是在Excel处理为好。无论那一种方式,只要格式正确都可以成功导入。 1、以记事本方式进行处理,编辑界面如下。 要注意,此方式下每两行记录为一条完整的“导入导出”信息。格式给人感觉有点乱,一不小心就容易出错。除非取消“自动换行”选项,才会成为一行记录就是一条导入信息。 更为重要的是,编辑完成保存时,一定要注意所保存文件的“编码”不要搞错,一但搞错将无法导入。如下图:
编码有“ANSI、Unicode、Unicode big endian、UTF-8”这四种,只有保存为“ANSI”编码才能完全导入成功。对于Unicode、Unicode big endian这两种编码,是根本导不成功的。对于UTF-8这种编码,导入信息不完整,且提示信息让人看不懂,如下图所示: 由上图可看出,提示有1条导入成功、4条导入失败,而实际上,我所做的“应收应付”导入信息总共只有4条。如果此时点“是”,系统会导入其中一条,其它三就导不成功。 因此,以“记事本”方式编辑导入信息时,关键一点就是保存时的“编码”不要搞错。要记住,只能是ANSI这种编码。 2、以写字板方式进行处理,编辑界面如下。 这种方式比“记事本”方式要好得多,至少格式规范、不易出错,且一行记录就是一条导入信息,不存在“换行”操作。 但此方式编辑内容后,保存时要注意“保存类型”(这里不存在“编码”之说),如下图:
推荐下载-Oracle 数据泵导出和导入 精品
Oracle10g数据导入导出 简介 Oracle 10g引入了DATA PUMP提供的是一种基于服务器的数据提取和恢复的实用程序,DATA PUMP在体系结构和功能上与传统的EXPORT和IMPORT实用程序相比有了显著的提升。DATA PUMP允许您停止和重启作业,查看运行的作业的状态,及对导入和导出的数据做限制。 注意:数据泵文件与传统的EXP/IMP数据转储文件是不兼容的。 以下是DATA PUMP的几个优点介绍: 1.数据泵(Data Pump)的所有工作都有数据库实例来完成,数据库可以并行来处理这些工作,不仅可以通过建立多个数据泵工作进程来读/写正在被导出/导入的数据,也可以建立并行I/O服务器以更快地读取或插入数据,从而,单进程瓶颈被彻底解决。 2.通过数据泵,以前通过EXP/IMP主要基于Client/Server的逻辑备份方式转换为服务器端的快速备份,数据泵主要工作在服务器端,可以通过并行方式快速装入或卸载数据,而且可以在运行过程中调整并行的程度,以加快或减少资源消耗。 3.数据泵通过新的API来建立和管理,这些新的工作主要由DBMS_DATAPUMP来完成。新的导入/导出工具完全成为了一个客户端应用,通过IMPDP/EXPDP执行的命令实际上都是在调用Server端的API在执行操作,所以一旦一个任务被调度或执行,客户端就可以退出连接,任务会在server 端继续执行,随后通过客户端实用程序从任何地方检查任务的状态和进行修改创建DIRECTORY DATA PUMP要求为将要创建和读取的数据文件及日志文件创建目录,这个参数是用来定义一个目录,前面已经提到数据泵主要在Server端工作,导出文件需要写出到Server端本地目录,这个DIRECTORY就是对应的Server 端的目录。将要访问数据泵文件的用户必须要拥有该目录的读/写权限。 注意:在开始操作之前要验证外部目录是否存在,并且下达create directory 命令的用户需要拥有create any directory的系统权限。 下面给出一个创建名为TEST_EXPDP的目录并授予hs_user,hs_his用户访问此目录读/写权限。
如何导入导出MySQL数据库
如何导入导出MySQL数据库 1. 概述 MySQL数据库的导入,有两种方法: 1) 先导出数据库SQL脚本,再导入; 2) 直接拷贝数据库目录和文件。 在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。 所以一般推荐用SQL脚本形式导入。下面分别介绍两种方法。 2. 方法一SQL脚本形式 操作步骤如下: 2.1. 导出SQL脚本 在原数据库服务器上,可以用phpMyAdmin工具,或者mysqldump(mysqldump命令位于mysql/bin/目录中)命令行,导出SQL 脚本。 2.1.1 用phpMyAdmin工具 导出选项中,选择导出“结构”和“数据”,不要添加“Drop DATABASE”和“Drop TABLE”选项。 选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。 将导出的SQL文件保存下来。 2.1.2 用mysqldump命令行 命令格式 mysqldump -u用户名-p 数据库名> 数据库名.sql 范例: mysqldump -uroot -p abc > abc.sql (导出数据库abc到abc.sql文件) 提示输入密码时,输入该数据库用户名的密码。 2.2. 创建空的数据库 通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。 2.3. 将SQL脚本导入执行 同样是两种方法,一种用phpMyAdmin(mysql数据库管理)工具,或者mysql命令行。 2.3.1 用phpMyAdmin工具 从控制面板,选择创建的空数据库,点“管理”,进入管理工具页面。 在"SQL"菜单中,浏览选择刚才导出的SQL文件,点击“执行”以上载并执行。 注意:phpMyAdmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件 比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。 gzip使用方法: # gzip xxxxx.sql
ORACLE EXPDP命令使用详细
ORACLE EXPDP命令使用详细 1. DIRECTORY 指定转储文件和日志文件所在的目录 DIRECTORY=directory_object Directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS目录 Expdp scott/tiger DIRECTORY= DMP DUMPFILE=a.dump Sql>create or replace directory dmp as 'd:/dmp' expdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp content=metadata_only 2. CONTENT 该选项用于指定要导出的内容.默认值为ALL CONTENT={ALL | DATA_ONLY | METADATA_ONLY} 当设置CONTENT为ALL时,将导出对象定义及其所有数据.为DATA_ONLY 时,只导出对象数据,为METADATA_ONLY时,只导出对象定义 expdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp content=metadata_only ----------只导出对象定义 expdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp content=data_only ----------导出出所有数据 3. DUMPFILE DUMPFILE用于指定转储文件的名称,默认名称为expdat.dmp DUMPFILE=[directory_object:]file_name [,….]
oracle数据库数据的导入导出
Oracle数据库导入导出命令(备份与恢复) Toad 一个很好的oralce数据库操作与管理工具,使用它可以很方便地导入导出数据表,用户以及整个数据库。今天在这里主要讲一下用命令行来操作oracle数据导入和导出: 备份数据 1、获取帮助: exp help=y 2. 导出一个完整数据库 exp user/pwd@instance file=path full=y 示例:exp system/system@xc file = c:/hehe full =y imp tax/test@tax file=d:/dbbak.dmp full=y 3 、导出一个或一组指定用户所属的全部表、索引和其他对象 exp system/manager file=seapark log=seapark owner=seapark exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold) 示例:exp system/system@xc file=c:/hehe owner=uep 4、导出一个或多个指定表 exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist) 示例:exp system/system@xc file=c:/heh tables=(ueppm.ne_table) 恢复数据 1. 获取帮助 imp help=y 2. 导入一个完整数据库 imp system/manager file=bible_db log=dible_db full=y ignore=y 3. 导入一个或一组指定用户所属的全部表、索引和其他对象 imp system/manager file=seapark log=seapark fromuser=seapark imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold) 4. 将一个用户所属的数据导入另一个用户 imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy imp system/manager file=tank log=tank fromuser=(seapark,amy) touser=(seapark1, amy1) 5. 导入一个表 imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b) ************************ **************************** 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回Oracle 数据库中去。 1. 简单导出数据(Export)和导入数据(Import) Oracle支持三种类型的输出: (1)表方式(T方式),将指定表的数据导出。 (2)用户方式(U方式),将指定用户的所有对象及数据导出。 (3)全库方式(Full方式),将数据库中的所有对象导出。 数据导出(Import)的过程是数据导入(Export)的逆过程,它们的数据流向不同。
用数据泵方法迁移oracle11gR2
Oracle11g 数据库迁移 在Oracle11g中,exp默认不能导出空表。用传统的exp,imp进行数据库迁移会比较麻烦,不过可以使用expdp、impdp进行迁移。现对oracle11g数据库迁移进行介绍: 1.安装好数据库后可以通过对数据库参数进行修改,使其能通过exp导出导出空表 1)、Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g 数据库时,空表不会导出。 2)、设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment。 在sqlplus中,执行如下命令: SQL>alter system set deferred_segment_creation=false; 查看: SQL>show parameter deferred_segment_creation; 如果在执行建库脚本后进行修改该参数,只对后面新增的表产生作用,对之前建立的空表不起作用。 2.通过使用数据泵的方法进行导入导出
2008 to 2008 把32位windows 2008的Oracle11gR2数据库迁移到另一台32位windows 2008的Oracle11gR2数据库中,可以使用expdp、impdp进行迁移数据。 如:A和B均为windows服务器,数据库用户为ccense,把A服务器的数据迁移到B服务器中 在A服务器操作: 1、 SQL>conn / as sysdba SQL> create directory expdp_dir as 'D:\databack '; SQL> grant read,write on directory expdp_dir to ccense; 注:命令行中黑色粗体可以进行更改,下同 2、在windows2008目录中创建目录D:\databack,如果不创建将出现如下报错: 3、在DOS命令窗口导出: 在A服务器的DOS窗口输入如下命令:
Oracle11G数据泵导入导出-changxf-20140926
Oracle11G数据库命令: 1进入SQLPLUS状态 1、打开【附件】-【命令提示符】,以系统管理员的身份运行; 2、输入sqlplus / as sysdba; 3、回车执行语句,进入数据库; 2用户管理 【说明】:在SQLPLUS状态下执行。 2.1创建用户 CREATE USER yonghuming IDENTIFIED BY mima DEFAULT TABLESPACE NNC_DATA01 TEMPORARY TABLESPACE temp; 说明: 1、“yonghuming”——用户名称; 2、“mima”——用户密码; 2.2授权用户:(一般授权) GRANT connect,dba to yonghuming; 说明: 1、“yonghuming”——用户名称; 2.3授权用户:(数据泵模式) GRANT read,write on directory expdir to yonghuming; 说明: 1、“expdir”——数据泵创建的目录名称; 2、“yonghuming”——用户名称;
2.4查看用户 select username from dba_users; 2.5删除用户 drop user yonghuming(用户名)cascade; 3数据泵操作 3.1创建目录 1、在数据库实例上创建directory(sqlplus模式下执行) CREATE OR REPLACE DIRECTORY 目录名称 AS '数据库服务器上的一个目录' 例如 CREATE OR REPLACE DIRECTORY expdir AS 'd:\'; 红字为要命名的目录名称,as后面为实际路径(windows环境),把需要导入的数据直接放入d盘目录下即可。 2、创建后可以用这个命令来查看已存在的目录 (查看所有) select * from dba_directories; (查看制定目录名所在目录) select * from dba_directories WHERE DIRECTORY_name='expdir'; 3.2创建用户并授权 CREATE USER yonghuming IDENTIFIED BY mima DEFAULT TABLESPACE NNC_DATA01 TEMPORARY TABLESPACE temp; GRANT read, write ON DIRECTORY expdir TO orcle; 1、红字“expdir”为创建的目录;
access数据库导入和导出
一、excel数据导入到access数据库 (1)直接导入法 1.启动Access,新建一数据库文件。 2.在“表”选项中,执行“文件→获取外部数据→导入”命令,打开“导入”对话框。 3.按“文件类型”右侧的下拉按钮,选中“Microsoft Excel(.xls)”选项,再定位到需要转换的工作簿文件所 在的文件夹,选中相应的工作簿,按下“导入”按钮,进入“导入数据表向导”对话框(图1)。 4.选中需要导入的工作表(如“工程数据”),多次按“下一步”按钮作进一步的设置后,按“完成”按钮。 注意:如果没有特别要求,在上一步的操作中直接按“完成”按钮就行了。 5.此时系统会弹出一个导入完成的对话框,按“确定”按钮。 至此,数据就从Excel中导入到Access中。 (2)建立链接法 1.启动Access,新建一数据库文件。 2.在“表”选项中,执行“文件→获取外部数据→链接表”命令,打开“链接”对话框。 二、Access中数据导入excel 在Excel中使用Access数据 你可能想在Excel工作簿中使用Access数据,以便利用数据分析和绘制图表功能、数据排列和布局的灵活性或其他一些Access中不可用的功能。 将Access数据复制到Excel中 你能从Access的数据表视图复制数据,然后将数据粘贴到Excel工作表中。 1. 启动Access,然后打开包含要复制的记录的表、查询或窗体。 2. 在“起始页”选项卡上单击“视图”,然后单击“数据表视图”。 3. 选择要复制的记录。 如果要选择特定列,请在相邻的列标题之间拖动。 4. 在“开始”选项卡上的“剪贴板”组中,单击“复制”。 5. 启动Excel,然后打开要在其中粘贴数据的工作表。 6. 单击要显示第一个字段名称的工作表区域的左上角。 若要确保复制的记录不替换现有记录,请确保工作表中你单击的单元格的下方和右方不存在数据。 7. 在“开始”选项卡上的“剪贴板”组中,单击“粘贴”。
Oracle数据泵同步数据方式简要步骤
Oracle数据泵同步数据方式简要步骤1、Oracle数据泵简介 Data Pump 反映了整个导出/导入过程的完全革新。不使用常见的 SQL 命令,而是应用专有 API(direct path api etc) 来以更快得多的速度加载和卸载数据。 以下步骤为从容灾数据库(源端)上,按照用户或者数据表的模式将数据同步到测试数据库(目标端)上的简要步骤。 应用数据泵做数据同步的前提条件是: 1、在源端数据库主机上有足够大的空间存储导出的数据 文件,要求提前对导出的数据文件大小做评估,看预 留多少空间。 2、在目标端主机上也要保证有足够的空间存放导入的数 据文件 3、源端和目标端导入导出所用的数据库用户及密码(明 文) 2、Oracle数据泵数据表同步方式和用户同步方式 2.1.指定数据表同步方式(导出、导入) 以同步客服测试数据库为例: 源端数据库主机:10.220.33.112(存放目录:/dataapp1/expdp) 目标端数据库主机:10.220.64.71(存放目录:/oracle/imp)
导出: 1.滤出需要同步的数据表列表,评估需要同步的表大小,在源端 及目标端主机上留出所需的数据文件的空间。 2.登录(oracle/oracle)源端数据库主机(10.220.3 3.112),执行: $sqlplus / as sysdba 登录数据库,执行如下语句: >create directory dpdata2 as '/dataapp1/expdp '; >grant read, write on directory dpdata2 to kf; 3.按照表名导出的语句如下: $expdp kf/kf@rzkfdb1new tables=co_task,co_task_log,……directory=dpdata2 dumpfile=par%U.dmp parallel=15; 参数说明:tables------要导出的数据表名 Directory------数据文件导出的路径 Dumpfile---------导出的数据文件命名%为通配符,按照导出的进程数递增 Parallel----------数据泵支持多进程导出方式 4.此语句执行后观察在对应的目录是否有*.dmp类别的文件生成导入: 1.数据泵导入操作是在导出操作基础上进行的,在导入操作之前, 需要在目标数据库上建立与源端相同的表空间、schema等元素。 2.登录(oracle)目标端10.220.64.71数据库主机,执行 $Sqlplus / as sysdba 登录数据库,执行如下语句: >create directory dpdata5 as '/oracle/imp'; >grant read, write on directory dpdata2 to kf; 3.把导出的*.dmp文件,传递到导入数据目录/oracle/imp,执行: $impdp kf/kf@kfcsdb directory=dpdata5 dumpfile=par%U.dmp parallel=15 remap_tablespace=TS_KF:KFCSDB_DATA_TBS01,TS_KF_LOG:KFCSDB_DATA_TBS01;
数据库数据导入导出
数据库 系统分别拥有一份独立的Oracle数据库逻辑备份文件(后缀为dmp的操作系统文件),每个子系统的导入数据库结构和基础数据的操作是单独执行的。 第一步,以超级管理用户进入Oracle创建用户和授权 第二步:创建表空间(create tablespace law datafile 'D:/oradate/law.dbf' size 300m autoextend on next 50m;) 第三步: --删除用户(第一次可以不用执行,以后想要重新导入数据库才执行这个语句)
drop user law_test cascade; --创建用户和授权 create user law_test identified by law_test default tablespace law; --授权 grant connect,resource,select any dictionary , unlimited tablespace,create any view, create materialized view to law_test; 导入数据库 1、第一步:用Oracle数据库备份恢复命令,导入数据库结构和基础 数据,格式如下: imp {数据库用户名}/{数据库用户密码}file=”{带完整路径的Oracle数据库逻辑备份文件}” imp law_test/law_test file=d:\db\law_test.dmp full=y 2,第二步,看到的导入的页面
最后的提示说导入成功的提示; 导出数据库 exp {数据库用户名}/{数据库用户密码}file=”{带完整路径的Oracle数据库逻辑备份文件}” exp law_test/law_test file=”d:\law_test.dmp”;