在linux环境上对oracle数据库的数据泵导入导出操作

需求:公司搭建的报表库环境数据来自于生产环境oracle数据,因此需要使用kettle将oracle数据每天定时导入到报表数据库中(本文不讨论如何用kettle导数据,不赘述),若要导数据我们需要一套完善的生产oracle数据库的表结构。同时环境搭建以及oracle数据库都在linux环境下部署,因此,需要在linux环境下使用数据泵技术将数据完成导入导出

以上为需求概述

具体实现(即:操作步骤):

su - root --切换root用户(由于不知道oracle用户的密码使用root来登录oracle用户)
su - oracle --在root用户下切换oracle数据库
ps -ef|grep smon ---查看数据库实例
export ORACLE_SID=实例名 ----oracle实例
sqlplus sys/manager as sysdba; ----登录数据库用户数据库连接
select * from dba_directories -----查看数据库虚拟目录(导出数据存放的位置)

Grant read,write on directory 虚拟目录名 to 数据库用户名;------为用户赋予读写的权限
Grant imp_full_database,exp_full_database to 数据库用户名;-----为用户赋予导入导出的权限

-----------从用户导出的两种形式
expdp 用户名/数据库名  schemas=用户名 dumpfile=dmp文件名.dmp directory=虚拟目录名 logfile=日志名.log
expdp 数据库名 directory=虚拟目录名 dumpfile=dmp文件名.dmp logfile=日志.log schemas=用户名

----------从用户导入的两种形式

impdp 用户名/密码 directory=虚拟目录名 dumpfile=dmp文件名.dmp logfile=日志名.log schemas=用户名

impdp 数据库名 directory=虚拟路径名 dumpfile=导入文件名.dmp logfile=日志名.log remap_schema=导出源数据库用户名:导入源数据库用户名;

以上为数据泵导入导出数据的大概步骤,可能步骤太过粗糙,以后再做完善吧,也希望大家可以提出好的改进建议,共同学习

原文地址:https://www.cnblogs.com/muxi0000/p/8552667.html

时间: 2024-10-09 12:48:28

在linux环境上对oracle数据库的数据泵导入导出操作的相关文章

Oracle数据库密码重置、导入导出库命令

重置办法如下:打开CMD命令提示符,然后输入下面命令进行重置: 输入sqlplus /nolog,回车 SQL> conn /as sysdba 已连接: SQL>alter user system identified by "123456"; ---(123456就是重置的密码了) SQL>alter user sys identified by "123456"; 下面介绍的是导入导出的实例,向导入导出看实例基本上就可以完成,因为导入导出很简

Oracle 12c pdb的数据泵导入导出

12c推出了可插拔数据库,在一个容器cdb中以多租户的形式同时存在多个数据库pdb.在为pdb做数据泵导入导出时和传统的数据库有少许不同.           1,需要为pdb添加tansnames           2,导入导出时需要在userid参数内指定其tansnames的值,比如 userid=user/[email protected]   数据泵导入导出例子 1.查看当前的SID,查看pdb并切换到容器数据库,这里的pluggable数据库是pdborcl [[email pro

Oracle 数据泵导入导出总结

Oracle 数据泵(IMPDP/EXPDP)导入导出总结 Oracle数据泵导入导出是日常工作中常用的基本技术之一,它相对传统的逻辑导入导出要高效,这种特性更适合数据库对象数量巨大的情形,因为我日常运维的数据库对象少则几千,多则几万甚至几十万,所以传统exp/imp就会非常耗时,而数据泵方式就因此脱引而出,下面就详细总结一下数据泵的使用方法,希望能给初学者带来帮助. 一.新建逻辑目录 最好以system等管理员创建逻辑目录,Oracle不会自动创建实际的物理目录“D:\oracleData”(

Oracle之数据泵导入/导出数据

以前习惯用imp/exp导入导出数据,现在我们来搞一把数据泵导入导出的方法.它比之于imp/exp的方式的优点自不必说---速度快! 但是很不幸,我在导出数据的时候报错了,我擦,这特么就尴尬了.于是,神技乍现,康哥就擅长解决问题有木有?呀?乍一看这报错也是没谁了,完全看不懂啊!别害怕,遇到这样的报错就是文件问题,与文件相关的要么权限要么路径,这里是指数据库内部不存在这个文件,但是我在Oracle用户下面创建了啊.没用的,你要在数据库内部创建哦,记住是内部.来,我们操作一把. 来吧朋友,开始我们的

在Linux系统上安装Oracle数据库

前期准备:我用的是虚拟机上的CentOS 64位系统.所以需要设置网卡,时间,EPEL源,安装一些必备的软件. 1.1在虚拟机上安装好Linux系统后选择虚拟机设置->网络适配器->网络连接->桥接模式 1.2然后进入系统配置网卡. 永久修改: vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0(设备名称) TYPE=Ethernet(网络类型) ONBOOT=yes(开机自启动) BOOTPROTO=static(静态ip)

oracle 数据泵导入导出

--21.1 Data Pump工具 Data Pump 从oracledatabase 10g开始引入了data pump(数据泵)工具,它提供了一种基于服务器的数据导出导入使用程序. 所有的data pump都作为一个服务器进程,数据不再必须由一个客户程序处理.Data Pump工具的导出和导入实现 Oracle数据库之间数据的传输. Data Pump工具中包含Data Pump Export和Data Pump Import,所使用的命令行客户程序为expdp和impdp. [注意] 在

Linux环境上,Oracle常用命令

1.启动oracle数据库: //切换至Oracle用户: [[email protected] ~]# su - oracle //进入sqlplus环境,nolog参数表示不登录: [[email protected] ~]$ sqlplus /nolog //以管理员模式登录: [[email protected] ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on Fri Apr 17 10:13:07 2

linux 环境下备份oracle 数据库

登陆linux后,进入oracle的安装目录下,找到bin那个目录,进入bin目录ls -l 看这些命令的所有者: su - oracle这时会进入这个用户的主目录/home/oracle,此时,可以用oracle的命令了 exp xxx/[email protected]:1521/orcl file=devdb.dmp full=y 重定向把输出信息写入一个文件. exp xxx/[email protected]:1521/orcl file=devdb.dmp full=y >explo

Oracle基础 exp/imp 数据泵导入/导出 命令

一.导出方式: 使用exp/imp方式导出数据分为四种方式: 1.表方式导出:一个或多个指定的表,包括表的定义.表数据.表的所有者授权.表索引.表约束,以及创建在该表上的触发器.也可以只导出结构,不导出数据.还可以导出用户所拥有的全部表,还可以指定导出的表的分区. 2.用户方式导出:用户模式的所有对象以及对象中的数据. 3.表空间方式导出:包含在指定表空间中的所有对象,以及对象上的索引定义. 4.全部数据库方式导出:是指数据库中的所有对象,包括表空间.用户及模式中的所有对象(表.视图.序列.同义