背景:

在同一台Linux服务器上,有两个数据库用户,分别为:database1,database2,如何把database1用户下面的所有的表和数据,导入到database2数据库(database2为新创建的用户,没有创建任何表,是一个空的数据库)

操作步骤:

1、创建数据库用户database2(注:这里只创建新的数据库用户database2,database1数据库用户已经存在,并且database1用户已有表和数据)

登录数据库linux服务器,切换成oracle用户(这里说的oracle指的是数据库的一个管理员用户名,角色是sysdba),操作如下:

su - oracle

sqlplus / as sysdba;  -- 输完后回车,可以进入sqlplus客户端,进行SQL语句操作

create user database2 identifield by 123456;

grant connect, resource, dba to database2;

alter user database2 default tablespace PB_DATA;

2、创建文件导出的目录,database1用户下的表数据,导出后的文件,将会保存在这个目录下

SQL > create directory PB_DUMP as '\usr\history\data\exoport';

PB_DUMP是linux系统中\usr\history\data\exoport目录的别名,通过上面SQL语句创建后,信息会保存在oracle的目录表中,可以查询表select * from dba_directories中的DIRECTORY_NAME字段值确认,对应的路径是DIRECTORY_PATH字段。

3、创建导出脚本

cat > exp_database1_table_data.par

输入如下内容,保存的脚本文件为exp_database1_table_data.par

userid = 'oracle / as sysdba'

directory = PB_DUMP

dumpfile = exp_database1_table_data_20180101.dmp

logfile = exp_database1_table_data_20180101.log

schemas = database1

cluster = n

参数说明:directory参数是一个目录名称, PB_DUMP是步骤2中所创建的oracle目录,也就是导出后的dmp文件保存在这个目录下。dumpfile是导出后的数据文件的名称;logfile是导出日志,导出过程中所打印的日志信息会保存在这里;schemas参数值是即将要导出数据的源数据库用户名。

4、创建导入脚本

cat >imp_database2_table_data.par

输入如下内容,保存的脚本文件为imp_database2_table_data.par

userid = 'oracle / as sysdba'

directory = PB_DUMP

dumpfile = exp_database1_table_data_20180101.dmp

logfile = exp_database1_table_data_20180101.log

remap_schemas = database1 :database2

cluster = n

参数说明:remap_schemas的参数值database1 :database2,表示把database1用户下的数据导入到database2用户下(数据文件,来源于从database1用户中已导出的exp_database1_table_data_20180101.dmp)

5、执行导出命令(执行完下面的命令后,数据库用户database2下将会有表和数据,来源于database1)

expdp parfile = imp_database2_table_data.par

Linux服务器上的oracle数据导入和导出的更多相关文章

  1. linux服务器上修改oracle数据库的字符集

    linux服务器上以dba身份进入:sqlplus / as sysdba; 依次执行以下命令:shutdown immediate; startup mount; alter system enab ...

  2. Linux服务器下对Oracle数据库expdp(导出)和impdp(导入)

    紧接上篇文章,Oracle数据库架构已经创建完成,我的需求是:将老服务器上的数据库迁移到新的数据库上. 这就用到impdp(导入)操作. 要想实现对新数据库的impdp(导入)工作, 首先需要从老的数 ...

  3. oracle 数据导入和导出(原创)

    oracle的数据导入导出必须是在两个地方建立相同的用户才能完整导入(本地导入新的数据库需重建权限).所以导入就得按以下步骤进行: 假定服务器端用户为puser 服务器端导出可以这样做: 导出数据:e ...

  4. oracle 数据导入、导出

    导入导出 --数据导出备份和导入 ------注意 导出和导入 必须是CMD 命令行下操作,而不是SQL编辑器中 --1.导出表 . --exp:导出关键字 ,userid:用户权限 ,file:保存 ...

  5. 用rsync备份一台linux服务器上的数据

    rsync是安装完linux后都会自带的,在机器上运行rsync命令看是否有安装即可 备份到远程服务器 这里介绍的rsync的用途是备份一台linux服务器上的数据到另外一台机器 环境 将需要备份机器 ...

  6. oracle数据导入/导出

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份.   大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据 ...

  7. Oracle数据导入导出imp/exp

    功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失). Oracle有个好处,虽然你的电 ...

  8. oracle数据导入的常用命令

    oracle 中数据库完全导入导出:cmd命令行模式 oracle数据库cmdfile数据库服务器constraints Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.ex ...

  9. Oracle 数据导入导出操作 (转)

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢 ...

随机推荐

  1. sockt初级了解 感悟 一起打怪升级偶

    刚接触来谈谈对sockt基础的一点理解,多线性下次再发.也逛了逛博客,有一篇基础讲的停息在这推荐下sockt套接字编程全绍辉 首先贴下代码#服务器 import socket skt=socket.s ...

  2. 人体姿态的相似性评价基于OpenCV实现最近邻分类KNN K-Nearest Neighbors

    最近学习了人体姿态的相似性评价.需要用到KNN来统计与当前姿态相似的k个姿态信息. 假设我们已经有了矩阵W和给定的测试样本姿态Xi,需要寻找与Xi相似的几个姿态,来估计当前Xi的姿态标签. //knn ...

  3. 2981:大整数加法-poj

    2981:大整数加法 总时间限制:  1000ms 内存限制:  65536kB 描述 求两个不超过200位的非负整数的和. 输入 有两行,每行是一个不超过200位的非负整数,可能有多余的前导0. 输 ...

  4. VC++下编译 程序“减肥”

    在vc6 和 vs 2008下 编译 以下代码,不更改任何编译设置(vc6  40k , s2008 7k). 一.vc6下,Release 模式 编译处理. 1.去掉不必要的 链接库  工程(Pro ...

  5. Numpy数组的基本运算操作

    一.算术运算符 In [3]: a = np.arange(0,5) Out[3]array([0, 1, 2, 3, 4]) In [4]: a+4 Out[4]: array([4, 5, 6, ...

  6. devdependencies与dependencies的区别

    一直在纠结devdependencies与dependencies的区别是什么,下面就对此作出详细介绍,希望对你有所帮助! 我们在使用npm install 安装模块或插件的时候,有两种命令把他们写入 ...

  7. linux磁盘管理系列-LVM的使用

    LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...

  8. codeforces #447 894A QAQ 894B Ralph And His Magic Field 894C Marco and GCD Sequence

    A.QAQ 题目大意:从给定的字符串中找出QAQ的个数,三个字母的位置可以不连续 思路:暴力求解,先找到A的位置,往前扫,往后扫寻找Q的个数q1,q2,然 后相乘得到q1*q2,这就是这个A能够找到的 ...

  9. Web Service vs WCF vs WCF REST vs Web API

    [MY NOTE] Translate Source:http://www.dotnettricks.com/learn/webapi/difference-between-wcf-and-web-a ...

  10. 【docker 一】入门实践、环境部署、基本操作指令、镜像库、数据卷

    简述 `docker是如火如荼的容器技术,今后会陆续上传关于微服务技术的学习笔记,希望能和大家一起学习一起分享!` docker环境搭建 1.获取最新版的Docker安装包 $ wget -qO- h ...