windows下orcale导入DMP文件方式
Linux下Oracle导入dmp文件
Linux下向oracle数据库倒入dmp包的方式1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)2、以sysdba方式来打开sqlplus,命令如下:sqlplus "/as sysdba"3、查看常规将用户表空间放置位置:执行如下sql: select name from v$datafile; 上边的sql一般就将你的用户表空间文件位置查出来了。
4、创建用户表空间:CREATE TABLESPACE 表空间名DATAFILE '/oracle/oradata/test/notifydb.dbf(表空间位置)' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;5、创建用户,指定密码和上边创建的用户表空间 CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE 表空间名;6、赋予权限grant connect,resource to 用户名;grant unlimited tablespace to用户名;grant create database link to用户名;grant select any sequence,create materialized view to用户名; 经过以上操作,我们就可以使用用户名/密码登录指定的实例,创建我们自己的表了续:创建临时表空间:create temporary tablespace test_temp tempfile 'F:\app\think\oradata\orcl\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; 创建表空间: create tablespace test_data logging datafile 'F:\app\think\oradata\orcl\test_data01.dbf' size 32mautoextend on next 32m maxsize 2048m extent management local; 创建用户:create user jack identified by jack default tablespace test_data temporary tablespace test_temp;为用户赋予权限:GRANT create any table TO jack;GRANT resource,dba TO jack;GRANT select any table TO jack;第一个是授予所有table有create权限,第二个就是赋予DBA的权限,这才是最重要的,其实只要第二就可以了.第三是授予所有table有select权限.四:删除用户表空间的步骤:Alter tablespace 表空间名称 offline;Drop tablespace 表空间名称;(表空间无有数据时用) 或者 drop tablespace 表空间名称 including contents;(表空间下有数据时候用temporary tablespace是oracle里临时表空间,临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
oracle 创建用户 及dmp文件导入
连接sha用户connect sha/admin可以创建别的用户5、查看用户权限进入sha用户connect sha/adminSelect * from user_sys_privs;可以查看到一个列表,列代表用户名权限是否可以给别的用户附加权限(N 、Y)行代表权限都有那些6、撤销用户授予的权限必须连接connect system/admin撤销权限revoke是系统撤销权限的关键词Revoke execute any procedure from sha;7、更改用户密码进入sha用户connect sha/adminPassword 输入旧密码输入新密码俩边OK或者用alter user sha identified by xinmima8、删除用户Connect system/adminDrop user sha;9、为用户授予角色Grant dba to sha;Grant connect to sha;Linux下的plsql 创建用户create user sha identified by adminDefault tablespace userTemporary tablespace temp;Granr unlimited tablespace to sha;//权限Grant dba to sha;//角色Grant connect to sha;准备工作(导出dmp文件)1.使用PL/SQL 工具--》导出用户对象,导出用户所有表,视图,存储过程等的定义2.使用PL/SQL 工具--> 导出表,导出所有表的数据这就是那个dmp文件保存好导出的sql脚本和dmp文件准备导入好了,开始导入1.删除用户drop user test cascade;2.删除全部表空间drop tablespace testdb INCLUDING CONTENTS;drop tablespace testdb_index INCLUDING CONTENTS;drop tablespace testdb_temp INCLUDING CONTENTS;3.重新创建表空间和用户并给用户授权CREATE TABLESPACE "DB_QQTB"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB01.ora' SIZE 2000M,'D:\oracle\OraData\DB_QQTB02.ora' SIZE 2000M, 'D:\oracle\OraData\DB_QQTB03.ora' SIZE 2000M EXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO/CREATE TABLESPACE "DB_QQTB_INDEX"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB_INDEX.ora' SIZE 500M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO/CREATETEMPORARY TABLESPACE "DB_QQTB_TEMP" TEMPFILE'D:\oracle\OraData\DB_QQTB_TEMP.ora' SIZE 200M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M/create user FZCXidentified by "FZCX"default tablespace DB_QQTBtemporary tablespace DB_QQTB_TEMPprofile DEFAULTquota unlimited on DB_QQTB。
windows下orcale导入DMP文件方式
--若报"未找到方案"错误,则运行
impdp 用户/密码@主机/数据库实例 directory=dump_dir dumpfile=DMP名.DMP REMAP_SCHEMA=DMP名:DMP名
windows下orcale导入DMP文件方式
--windows下orcale导入DMP文件方式
--数据库管理员用户下操作
create tablespace FSDB --创建表
datafile 'D:\\fzb\\FSDB.dbf' --表位置
sБайду номын сангаасze 50m --表大小
autoextend on; --自动扩张
create or replace directory dump_dir as 'D:\\fzb' --数据库创建空间目录,对应windows位置也要创建目录
grant read,write on directory DATA_PUMP_DIR to FSDB --赋权限给FSDB用户
--电脑,进入cmd模式
CREATE USER FSDB --创建用户
IDENTIFIED BY 123456 --密码
DEFAULT TABLESPACE FSDB --
TEMPORARY TABLESPACE temp;
GRANT CONNECT TO FSDB
GRANT RESOURCE TO FSDB
GRANT dba TO FSDB --最高权限
windows下orcale导入dmp文件方式 --windows下orcale导入dmp文件方式 --数据库管理员用户下操作 create tablespace fsdb --创建表 datafile 'd:\fzb\fsdb.dbf' --表位置 size 50m --表大小 autoextend on; --自动扩张 create user fsdb --创建用户 identified by 123456 --密码 default tablespace fsdb -- temporary tablespace temp; grant connect to fsdb grant resource to fsdb grant dba to fsdb --最高权限 create or replace directory dump_dir as 'd:\fzb' --数据库创建空间目录,对应windows位置也要创建目录 grant read,write on directory data_pump_dir to fsdb --赋权限给fsdb用户 --电脑,进入cmd模式 impdp用户/密码@主机/数据库实例 directory=dump_dir dumpfile=dmp名.dmp schemas=dmp名 --若报"未找到方案"错误,则运行 impdp用户/密码@主机/数据库实例 directory=dump_dir dumpfile=dmp名.dmp remap_schema=dmp名:dmp名
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注意:数据库不建立完备的备份,因为在导出文件中没有灾难发生时的最新数据。
dmp文件导入到Oracle数据库
向Oracle数据库导入DMP文件说明:dmp文件为Oracle数据库备份文件。
命令:imp:导入emp:导出Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。
exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。
利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i 中安装目录\ora81\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。
oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。
SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。
下面介绍的是导入导出的实例。
数据导出:1 将数据库TEST完全导出,用户名system 密码sql 导出到D:\daochu.dmp中exp system/sql@TEST file=d:\daochu.dmp full=y2 将数据库中system用户与sys用户的表导出exp system/sql@TEST file=d:\daochu.dmp owner=(system,sys)3 将数据库中的表table1、table2导出exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=( table1、table2)4 将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/sql@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
Oracle数据库迁移的几种方式
Oracle数据库迁移的⼏种⽅式⾯试:⼀、exp/imp逻辑备份与恢复:⼆、Storage存储迁移:将数据⽂件、控制⽂件、⽇志⽂件、spfile挂到新机器上,然后在新机器上启动数据库。
三、利⽤data guard迁移:四、⽤rman做迁移:我们常常需要对数据进⾏迁移,迁移到更性能配置更⾼级的主机OS上、迁移到远程的机房、迁移到不同的平台下,以下介绍ORACLE的⼏种数据库迁移⽅案: ⼀、exp/imp逻辑备份与恢复: 它是最常⽤最简单的⽅法,⼀般是基于应⽤的owner级做导出导⼊。
操作⽅法为:在新库建⽴好owner和表空间,停⽼库的应⽤,在⽼库执⾏:$ exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000,导⼊dmp⽂件到新库,在新库执⾏如下命令:$ imp user/pwd fromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y. 优缺点:优点是可以跨平台使⽤;缺点是停机时间长,停机时间为从exp到⽹络传输到新库,再加上imp的时间。
⼆、Storage存储迁移: 这种情况下,数据⽂件、控制⽂件、⽇志⽂件、spfile都在存储上(⼀般情况下是裸设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。
操作⽅法:将⽼库的pfile(因为⾥⾯有指向裸设备的spfile链接),tnsnames.ora,listener.ora,密码⽂件传到新库的对应位置。
将存储切⾄新机,或者⽤⽂件拷贝或dd的⽅式复制数据⽂件,启动数据库。
优缺点:优点是该迁移⽅式⾮常简单,主要的⼯作是主机⼯程师的⼯作,dba只需配合即可,停机时间为停库、切存储、起库的时间;缺点是要求新⽼库都是同⼀平台,是相同的数据库版本。
三、利⽤data guard迁移: ⽤dg我们不仅可以⽤来做容灾,物理的dg我们还可以作为迁移的⽅式。
oracle数据库备份(导入导出dmp)
连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。
注意:
操作者要有足够的权限,权限不够它会提示。
数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。
附录一:
给用户增加导入数据权限的操作
第一,启动sql*puls
第二,以system/manager登陆
JServer Release 8.1.7.0.0 - Production
经由常规路径导出由EXPORT:V08.01.07创建的文件
已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入
导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换)
. 正在将AICHANNEL的对象导入到 AICHANNEL
远程
exp scott/tiger@192.168.0.1:1521/kims file=e:\dc.dmp
导入:
imp aichannel/aichannel@HUST full=y file=d:\data\newsmgnt.dmp ignore=y
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
ORACLE导出导入(exp和imp)总结
1.1 EXP AND IMP导入导出的模式a表模式的导入导出b用户模式的导入导出c全库模式的导入导出导出表模式exp system/jaguar@cfp00_cpzb2003 tables=(cp.misywt14,cp.misywt18) file=d:\t8.dmplog=d:\t14t18_exp.log feedback=10000 compress=n用户模式exp system/jaguar@cfp00_cpzb2003 owner=cp file=e:\cp.dmp log=e:\cp_exp.logfeedback=10000 compress=n全库模式exp system/jaguar@bkup full=y filesize=2000M file=(cpzb01.dmp,cpzb02.dmp)log=cpzb_exp.log feedback=10000 compress=n使用参数文件导出(需要在当前路径下执行)exp system/manager@bgd-11_yang1 parfile=t09_exp.part09_exp.par文件内容tables = (test1.misywt09) file=e:\yang\t09.dmp log=e:\yang\t09_exp.log feedback=10000 compress=n快速导出使用参数direct=y recordlength=65535exp system/jaguar@cfp00_cpzb2003 owner=cp file=e:\cp.dmp log=e:\cp_exp.log direct=y recordlength=65535 feedback=10000 compress=n有条件的导出,windowsexp system/ckdb5@ckdb5 tables = (cp962008.misywt40_1) file=t40_96.dmp log=t40_96_exp.log feedback=10000 QUERY='where substr(ckhwh,1,1)="5"'导入表模式imp system/jaguar@cfp99_cpzb fromuser=cp touser=cp tables= (misywt14,misywt18)file=e:\t14t18.dmp log=e:\t14t18_imp.log ignore=y buffer=5120000 commit=yfeedback=10000用户模式imp system/jaguar@cfp99_cpzb fromuser=cp touser=cp file=d:\cp.dmp log=d:\cp_imp.log ignore=y buffer=5120000 commit=y feedback=10000全库模式imp system/jaguar@cfp99_cpzb full=y file=d:\cp.dmp log=d:\cp_imp.log ignore=ybuffer=5120000 commit=y feedback=10000导入大于2G的文件imp system/jaguar@cfp10_cpzbbak filesize=2000M buffer=81920 commyit=y ignore=yfile=(cpzb01.dmp,cpzb02.dmp,cpzb03.dmp,cpzb04.dmp) log=cpzb_imp.log feedback=10000使用参数文件导入(需要在当前路径下执行)imp system/manager@bgd-11_yang1 parfile=t09_imp.part09_imp.par 文件的内容fromuser=test1 touser=test1 tables=(misywt09) file=e:\yang\t09.dmp log=e:\yang\t09_imp.log ignore=y buffer=5120000 commit=y feedback=10000imp步骤说明(1) create table (2) insert data (3) create index (4) create triggers,constraints导出导入常见问题及解决方法1) unix上导出导入,使用多个用户或多个文件时不使用()2) ORACLE不同版本之间的导出导入oracle8.0.4 netwareoracle8.1.5 win2000oracle8.1.7 unix ware 7.1.18.0.4――>8.1.7使用8.0.4从自己导出,使用8.1.5导入8.1.78.1.7――>8.0.4使用8.1.5从8.1.7 导出,使用8.1.5导入8.0.48.1.5――>8.1.7使用8.1.5从自己导出,使用8.1.5导入8.1.78.1.7――>8.1.5使用8.1.7从自己导出,使用8.1.7导入8.1.5oracle8-oracle10之间导入导出的关系1个表的测试oracle8->oracle10test 源数据库目的数据库导出的oracle版本导入的oracle版本文件大小时间结果备注test18 10 8 8 成功有垃圾表BIN$bEheaq87S/q9CiHem/Ty6Q==$0test28 10 8 10 成功test38 10 10 8 失败10无法连接8test48 10 10 10 失败10无法连接8 结论:oracle8->oracle10 导出使用8,导入使用10oracle10->oracle8test 源数据库目的数据库导出的oracle版本导入的oracle版本文件大小时间结果备注test510 8 8 8 成功test610 8 8 10 失败10无法连接8test710 8 10 8 失败8不能读取10得导出文件test810 8 10 10 失败10无法连接8 结论:oracle10->oracle8 导出使用8,导入使用8使用oracle8导出oracle10时,出现错误EXP-00003: 未找到段(10,585868) 的存储定义原因:不能用oracle8导出oracle10。
oracle不同版本间数据的导入导出
Oracle的imp/exp组件是我们常用的工具,它的一个操作原则就是向下兼容。
下面是据此总结的几个使用规则和相关测试:规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器--1.1 使用9i客户端通过imp连接到10g数据库C:\Documents and Settings\yuechaotian>exp userid=hdtest/test@s67tables=(ab01) rows=n file=d:\x.dmpExport: Release 9.2.0.1.0 - Production on 星期三 2月 20 10:09:55 2008Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集注: 将不会导出表数据(行)即将导出指定的表通过常规路径 .... . 正在导出表 AB01在没有警告的情况下成功终止导出。
--1.2 使用10g客户端通过imp连接9i数据库:连接失败(而不是导出失败)C:\Documents and Settings\yuechaotian>exp userid=hbjb_kf_hd/test@s46 owner=hdtest file=d:\x.dmpExport: Release 10.2.0.1.0 - Production on 星期三 2月 20 09:57:22 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.EXP-00056: 遇到 ORACLE 错误 6550ORA-06550: 第 1 行, 第 41 列:PLS-00302: 必须说明 'SET_NO_OUTLINES' 组件ORA-06550: 第 1 行, 第 15 列:PL/SQL: Statement ignoredEXP-00000: 导出终止失败规则2:高版本exp出的dmp文件,低版本无法imp(无法识别dmp文件)--2.1 使用10g客户端exp出10g的数据C:\Documents and Settings\yuechaotian>exp userid=test/test@orclowner=test file=d:\10g.dmpExport: Release 10.2.0.1.0 - Production on 星期三 2月 20 11:16:39 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集服务器使用 AL32UTF8 字符集 (可能的字符集转换)即将导出指定的用户...……导出成功终止, 但出现警告。
oracle dmp sqlfile用法
oracle dmp sqlfile用法Oracle的.dmp文件和.sql文件是两种不同类型的文件,用于不同的目的。
1..dmp文件:o.dmp文件是Oracle数据库的数据泵(Data Pump)工具生成的文件。
数据泵是Oracle提供的一个用于高效移动数据和元数据的工具。
o你可以使用expdp命令导出数据到.dmp文件,使用impdp命令从.dmp文件导入数据。
o示例:▪导出:expdp username/password@db_name schemas=schema_name directory=dir_name dumpfile=dump_name.dmp logfile=log_name.log▪导入:impdp username/password@db_name schemas=schema_name directory=dir_name dumpfile=dump_name.dmp logfile=log_name.logo注意:在使用这些命令之前,你需要确保在数据库中已经设置了适当的目录对象,并且该对象指向了一个在操作系统中真实存在的目录。
2..sql文件:o.sql文件通常包含SQL语句,可以用于创建表、视图、索引、触发器等数据库对象,也可以用于插入、更新、删除数据。
o你可以使用SQL*Plus、SQL Developer、PL/SQL Developer等工具执行.sql文件中的SQL语句。
o示例:▪在SQL*Plus中执行:sqlplus username/password@db_name @path_to_sql_file.sql▪在SQL Developer或PL/SQL Developer中,你通常可以打开一个.sql 文件,然后点击执行按钮来运行文件中的SQL语句。
请注意,.dmp文件和.sql文件通常不用于同一目的。
.dmp文件主要用于备份和恢复整个数据库或数据库的一部分,而.sql文件主要用于执行特定的SQL语句。
oracle导入导出详解
总结了oracle的导入导出,希望能帮助大家一. 导出工具exp1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/binexp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移它有三种模式:a. 用户模式:导出用户所有对象以及对象中的数据;b. 表模式:导出用户所有表或者指定的表;c. 整个数据库:导出数据库中所有对象。
2. 导出工具exp交互式命令行方式的使用的例子$exp test/test123@appdbEnter array fetch buffer size: 4096 > 回车Export file: expdat.dmp > m.dmp 生成导出的文件名(1)E(ntire database), (2)U(sers), or (3)T(ables): (2)U > 3Export table data (yes/no): yes > 回车Compress extents (yes/no): yes > 回车Export done in ZHS16GBK character set and ZHS16GBK NCHAR character setAbout to export specified tables via Conventional Path ...Table(T) or Partition(T:P) to be exported: (RETURN to quit) > cmamenu 要导出的表名. . exporting table CMAMENU 4336 rows exportedTable(T) or Partition(T:P) to be exported: (RETURN to quit) >要导出的表名nTable(T) or Partition(T:P) to be exported: (RETURN to quit) > 回车Export terminated successfully without warnings.3. 导出工具exp非交互式命令行方式的例子$exp scott/tiger tables=emp,dept file=/directory/scott.dmp grants=y说明:把scott用户里两个表emp,dept导出到文件/directory/scott.dmp$exp scott/tiger tables=emp query=\"where job=\'salesman\' and sal\<1600\" file=/directory/scott2.dmp说明:在exp里面加上导出emp的查询条件job='salesman' and sal<1600(但我个人很少这样用,还是把满足条件的记录生成临时表后,再exp会方便一些)$exp parfile=username.par file=/directory1/username_1.dmp,/directory1/username_2.dmp filesize=2000Mlog=/directory2/username_exp.log参数文件username.par内容userid=username/userpasswordbuffer=8192000compress=ngrants=y说明:username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改filesize指定生成的二进制备份文件的最大字节数(可用来解决某些OS下2G物理文件的限制及加快压缩速度和方便刻历史数据光盘等) 4. 命令参数说明关键字说明(默认)---------------------------------------------------USERID 用户名/口令FULL 导出整个文件(N)BUFFER 数据缓冲区的大小OWNER 所有者用户名列表FILE 输出文件(EXPDAT.DMP)TABLES 表名列表COMPRESS 导入一个范围(Y)RECORDLENGTH IO 记录的长度GRANTS 导出权限(Y)INCTYPE 增量导出类型INDEXES 导出索引(Y)RECORD 跟踪增量导出(Y)ROWS 导出数据行(Y)PARFILE 参数文件名CONSTRAINTS 导出限制(Y)CONSISTENT 交叉表一致性LOG 屏幕输出的日志文件STA TISTICS 分析对象(ESTIMATE)DIRECT 直接路径(N)TRIGGERS 导出触发器(Y)FEEDBACK 显示每x 行(0) 的进度FILESIZE 各转储文件的最大尺寸QUERY 选定导出表子集的子句下列关键字仅用于可传输的表空间TRANSPORT_TABLESPACE 导出可传输的表空间元数据(N) TABLESPACES 将传输的表空间列表二.导入工具imp1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/binimp导入工具将EXP形成的二进制系统文件导入到数据库中.它有三种模式:a. 用户模式:导出用户所有对象以及对象中的数据;b. 表模式:导出用户所有表或者指定的表;c. 整个数据库:导出数据库中所有对象。
Oracle expimp导出导入工具的使用
Oracle exp/imp导出导入工具的使用一. 导出工具 exp1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/binexp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移它有三种模式:a. 用户模式:导出用户所有对象以及对象中的数据;b. 表模式:导出用户所有表或者指定的表;c. 整个数据库:导出数据库中所有对象。
2. 导出工具exp交互式命令行方式的使用的例子$exp test/test123@appdbEnter array fetch buffer size: 4096 > 回车Export file: expdat.dmp > m.dmp 生成导出的文件名(1)E(ntire database), (2)U(sers), or (3)T(ables): (2)U > 3Export table data (yes/no): yes > 回车Compress extents (yes/no): yes > 回车Export done in ZHS16GBK character set and ZHS16GBK NCHAR character set About to export specified tables via Conventional Path ...Table(T) or Partition(T:P) to be exported: (RETURN to quit) > cmamenu 要导出的表名. . exporting table CMAMENU 4336 rows exportedTable(T) or Partition(T:P) to be exported: (RETURN to quit) >要导出的表名nTable(T) or Partition(T:P) to be exported: (RETURN to quit) > 回车Export terminated successfully without warnings.3. 导出工具exp非交互式命令行方式的例子$exp scott/tiger tables=(emp,dept) file=/directory/scott.dmp grants=y说明:把scott用户里两个表emp,dept导出到文件/directory/scott.dmp$exp scott/tiger tables=emp query=\"where job=\'salesman\' and sal\<1600\"file=/directory/scott2.dmp说明:在exp里面加上导出emp的查询条件job='salesman' and sal<1600(但我个人很少这样用,还是把满足条件的记录生成临时表后,再exp会方便一些)$exp parfile=username.parfile=/directory1/username_1.dmp,/directory1/username_2.dmp filesize=2000Mlog=/directory2/username_exp.log参数文件username.par内容userid=username/userpasswordbuffer=8192000compress=ngrants=y说明:username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改filesize指定生成的二进制备份文件的最大字节数(可用来解决某些OS下2G物理文件的限制及加快压缩速度和方便刻历史数据光盘等)二.导入工具 imp1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/binimp导入工具将EXP形成的二进制系统文件导入到数据库中.它有三种模式:a. 用户模式:导出用户所有对象以及对象中的数据;b. 表模式:导出用户所有表或者指定的表;c. 整个数据库:导出数据库中所有对象。
DMP数据文件导入和SM修改更新
第三方测试DMP 文件导入和SM修改更新由于SM数据库更新而需要做必要的数据同步,必定要使得做数据导入操作。
环境A如果要引入环境B的代码和数据,并要求其自身提供给外部的接口保持不变的话,导入数据后还需要对里面的一些记录进行更改。
过程执行步骤:1.数据导入前准备a)备份数据完成后,删除物理文件b)创建表空间,修改默认表空间并赋权限。
2.数据导入3.重启SM服务a)删除system记录b)重启SM服务4.修改SM相关记录a)info 记录表,信息记录中的活动集成中的web server信息b)Environment 中的知识管理环境。
一.导入数据前准备(环境A数据导入到环境B ):1.备份数据完成后,删除物理文件。
备份环境B中的数据,备份完成后删除环境B中的物理文件。
可以通过以下命令实现:(之前我们创建过临时文件,但后来发现没有该临时表空间没有多大作用,就取消了。
临时文件一般情况下可以不用删除,如果有需要可以使用以下命令:alter database tempfile '/data/oracle/oradata/EITCore/SM_TEMP.dbf' drop including datafiles;)【说明】关于oracle操作更多资料可以参考:Managing Datafiles and Tempfiles:/docs/cd/B19306_01/server.102/b14231/dfiles.htm#i1006556Managing Tablespaces:/docs/cd/B19306_01/server.102/b14231/tspaces.htm2.创建表空间,修改默认表空间并赋权限。
创建表空间SM_DATA,因为之前的用户sm并没有删除,所以只需要在新建表空间后指定sm 的默认表空间为SM_DATA即可。
创建表空间指定用户sm的默认表空间给用户sm赋权限3.创建查询用户sm7; (因为dmp文件中存在这样一个用户,且为它赋权查看所有表,但同时不属于表空间SM_DATA,所以不添加会报错无法导入)二.导入数据Windows命令行,输入cmd,然后执行如图:导入说明imp 导入命令,sm 为刚创建表空间对应的用户,smsisdc 为用户sm 对应的密码,smsv 为SM导入机器中数据库服务名,后面的D:\HPSM\SMDATA\SM_backup_Oct12th.dmp为导入文件存放地点,fromuser= 后面填写的sm为导出文件所用用户,touser=sm为刚创建用户名。
Oracle数据库impexp导入导出命令(备份与恢复)
Oracle数据库imp/exp导入导出命令(备份与恢复)Toad 一个很好的oralce数据库操作与管理工具,使用它可以很方便地导入导出数据表,用户以及整个数据库。
今天在这里主要讲一下用命令行来操作oracle数据导入和导出:备份数据1、获取帮助:exp help=y2. 导出一个完整数据库exp user/pwd@instance file=path full=y示例:exp system/system@xc file = c:/hehe full =yimp tax/test@tax file=d:/dbbak.dmp full=y3 、导出一个或一组指定用户所属的全部表、索引和其他对象exp system/manager file=seapark log=seapark owner=seaparkexp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)示例:exp system/system@xc file=c:/hehe owner=uep4、导出一个或多个指定表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=y2. 导入一个完整数据库imp system/manager file=bible_db log=dible_db full=y ignore=y3. 导入一个或一组指定用户所属的全部表、索引和其他对象imp system/manager file=seapark log=seapark fromuser=seaparkimp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)4. 将一个用户所属的数据导入另一个用户imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copyimp 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 数据库中去。
oracle常用的数据库迁移方法
oracle常用的数据库迁移方法Oracle是一种常用的关系型数据库管理系统,为了满足不同需求,很多时候需要将数据库迁移到其他环境或系统中。
本文将介绍几种常用的Oracle数据库迁移方法。
一、数据泵导入导出数据泵是Oracle提供的一种高效的数据迁移工具,可以将表、视图、存储过程等数据库对象以及数据导出为二进制文件,再通过数据泵导入工具将数据导入到目标数据库中。
数据泵导出可以使用expdp命令,导出的文件可以包含完整的数据库对象和数据,也可以只导出指定的对象。
数据泵导入可以使用impdp命令,将导出的文件恢复到目标数据库中。
二、物理备份恢复物理备份恢复是一种将源数据库的物理文件备份并复制到目标数据库的方法。
这种方法适用于需要将整个数据库迁移到其他环境的情况。
在源数据库上执行备份命令,将数据库的物理文件备份到指定位置。
将备份文件复制到目标数据库服务器上。
在目标数据库上执行恢复命令,将备份文件恢复到目标数据库中。
三、逻辑备份恢复逻辑备份恢复是一种将源数据库中的逻辑数据导出为可读的文本文件,再通过导入工具将数据导入到目标数据库中的方法。
在源数据库上执行逻辑备份命令,将数据导出为文本文件。
将备份文件复制到目标数据库服务器上。
在目标数据库上执行导入命令,将备份文件导入到目标数据库中。
四、数据库链接数据库链接是一种在不同数据库之间进行数据传输和共享的方法。
可以在目标数据库中创建一个链接,链接到源数据库,然后通过SQL语句将数据从源数据库传输到目标数据库。
在目标数据库中创建一个数据库链接,链接到源数据库。
通过SQL语句查询源数据库中的数据,并将数据插入到目标数据库中。
五、GoldenGate数据复制GoldenGate是Oracle提供的一种高性能数据复制工具,可以将源数据库的数据实时复制到目标数据库中。
这种方法适用于需要实时同步数据的场景。
在源数据库和目标数据库上分别安装和配置GoldenGate软件。
在源数据库上配置数据抽取进程,将数据抽取到中间文件。
oracle中imp命令详解
oracle中imp命令详解Oracle的导入实用程序(Import utility)允许从数据库提取数据,并且将数据写入操作系统文件。
imp使用的基本格式:imp[username[/password[@service]]],以下例举imp常用用法。
1. 获取帮助imp help=y2. 导入一个完整数据库imp system/manager file=bible_db log=dible_db full=y ignore=y3. 导入一个或一组指定用户所属的全部表、索引和其他对象imp system/manager file=seapark log=seapark fromuser=seaparkimp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold) 4. 将一个用户所属的数据导入另一个用户imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copyimp 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)6. 从多个文件导入imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)log=paycheck,filesize=1G full=y7. 使用参数文件imp system/manager parfile=bible_tables.parbible_tables.par参数文件:#Import the sample tables used for the Oracle8i Database Administrator's#Bible.fromuser=seapark touser=seapark_copy file=seapark log=seapark_import8. 增量导入(9i中已经取消)imp system./manager inctype= RECTORE FULL=Y FILE=AOracle imp/exp帮助说明C:Documents and Settingsadministrator>exp help=yExport: Release 9.2.0.1.0 - Production on 星期三7月28 17:04:43 2004Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.通过输入EXP 命令和用户名/口令,您可以后接用户名/口令的命令:例程: EXP SCOTT/TIGER或者,您也可以通过输入跟有各种参数的EXP 命令来控制“导出”按照不同参数。
oracle中imp导入导出命令详解
oracle中imp命令详解Oracle的导入实用程序(Importutility)允许从数据库提取数据,并且将数据写入操作系统文件。
imp使用的基本格式:imp [username[/password[@service]]],以下例举imp常用用法。
1. 获取帮助imp help=y2. 导入一个完整数据库imp system/manager file=d:\daochu.dmp log=d:\daochu.log full=y ignore=y3. 导入一个或一组指定用户所属的全部表、索引和其他对象imp system/manager file=seapark log=seapark fromuser=seapark impsystem/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)6. 从多个文件导入imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)log=paycheck, filesize=1G full=y7. 使用参数文件imp system/manager parfile=bible_tables.parbible_tables.par参数文件:#Import the sample tables used for the Oracle8i Database Administrator's Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import8. 增量导入imp system./manager inctype= RECTORE FULL=Y FILE=A Oracle imp/expC:Documentsand Settingsadministrator>exp help=yExport: Release 9.2.0.1.0 - Production on 星期三 7月 28 17:04:43 2004Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 通过输入 EXP命令和用户名/口令,您可以后接用户名/口令的命令:例程: EXPSCOTT/TIGER或者,您也可以通过输入跟有各种参数的 EXP命令来控制“导出”按照不同参数。
Oracle使用Impdp导入dmp文件的详细过程
Oracle使⽤Impdp导⼊dmp⽂件的详细过程这⼀天为了导⼊这个Oracle的dmp⽂件,简直就是⾎泪史,因本⼈对Oracle并不是很会,随意踩了很多⼩⽩会踩的坑,因此特意记录⼀下过程,防备下次的使⽤。
1、⾸先将你需要的dmp⽂件准备好,将其放在Oracle安装⽬录的任意位置,但是如果你想按照我的步骤来,就和我安装到相同的⽬录,否则会和第五步的impdp语句中DATA_PUMP_DIR 所指向的路径不⼀致。
2、创建表空间(注意这⾥你创建的表空间⼀定要和你的dmp⽂件中写的表空间⼀致,否则会在你导库的时候,⼀直提⽰表空间不存在,这是我踩的最⼤的⼀个坑),我的dmp⾥⾯的表空间名是icms,所以请在doc或者PLsql等⼯具以system ⾝份登陆执⾏。
具体语句如下,改⼀下名字和路径即可--创建表空间create tablespace icmsdatafile 'D:\app\afei\oradata\icms.dbf' size 500M--修改为oracle安装路径autoextend on next 100M maxsize unlimited loggingextent management local autoallocatesegment space management auto;这⾥只需要写路径即可,icms.dbf⽂件⾃⼰取名,最好和表空间名⼀致3、接下来创建⽤户,语句只需要改第三⾏的默认表空间名,其他不动即可。
create user flprd --创建⽤户名identified by "flprd4321" --创建密码default tablespace icms--默认表空间temporary tablespace TEMP;--临时表空间(默认的)4、赋予刚刚创建的⽤户⼀些权限。
grant connect, resource to icms;grant dba to icms;5、经过上⾯的步骤,准备⼯作都已做完,开始导⼊,不过此时需要在doc命令窗⼝执⾏,不需要登陆sql.Impdp icms/icms@ORCL DIRECTORY=DATA_PUMP_DIR DUMPFILE=ICMSTEST0611.DMP SCHEMAS=icms6、如果执⾏impdp语句后出现下图,即表⽰成功。