Oracle数据表导入导出_数据迁移用

article/2025/10/20 2:10:46

    0.背景:突然接到居家办公的通知,工作用数据全部在内网,需要全部拷出带走,最大的单个表3.7G左右。根据往常经验将Oracle库中表导出为xlsx(方便与同事沟通使用),发现效率太低,且受制于数据量太大,经常报错无法导出。后来尝试导出为csv文件,提示已导出完成,但等重新找台电脑导入时发现数据缺失严重,无法使用。

目录

1.原有的笨方法

1.Oracle数据表导出

(1)Oracle导出

(2)SQL插入

(3)PL/SQL Developer

2.Oracle数据表导入

ODBC导入器

文本导入器

导入表工具 

(1)Oracle导入

(2)SQL插入

(3) PL/SQL Developer

3.总结

(1)日常小数据量需要跟其他人交互的就用导出查询结果为xlsx格式

(2)ODBC导入器和文本导入器需要提前写好表结构

(3)大量数据需要迁移是选择“导出表”和“导入表”的Oracle方法,不需要写表结构

(4)备份数据就直接导出为dmp格式的文件,需要恢复的时候再重新导入


1.原有的笨方法

    在对象窗口中右击需要导出的表,点击查询数据,点击csv文件或excel文件。通常使用的都是这种方法,查询结果很直观,适合小数据量。

1.Oracle数据表导出

导出表工具

    在PL/SQL中打开方式有两种,方法一为在对象窗口中右击需要导出的表,点击导出数据,弹出导出表窗口,方法二为点击PL/SQL页面顶部的工具,点击导出表,弹出导出表窗口。导出表工具可批量导出多个表

     在导出表窗口中,具体的导出方法有三种,三种方式都能导出表结构和数据

(1)Oracle导出

    “Oracle导出”的导出结果是dmp格式的二进制文件,无法预览,但速度快,可以跨平台,后续打算以这种方法为主。第一个dmp文件3.61G左右,导出时间3分钟。

(2)SQL插入

    “SQL插入”的导出结果为sql格式的文件,可以以文本格式进行预览,但是速度没有“Oracle导出”快。对于dmp格式3.61G的文件,导出时间14分钟,大小9.34G。

(3)PL/SQL Developer

    “PL/SQL Developer”的导出结果是pde格式的文件,这是PL/SQL自由的文件格式,不可以以文本格式进行预览,速度

    对于dmp格式3.61G的文件,导出时间10分钟,大小0.4G。数据量太小,不太相信全部拷出,但日志提示条数又与数据表一致

2.Oracle数据表导入

ODBC导入器

    ODBC的意思应该是Open Database Connectivity(开放数据互联)。我经常使用ODBC导入器导入EXCEL文档和ACCESS数据库表。使用ODBC导入器导入表需要提前定义好表结构。

(1)新建表

    文件-新建-创建表,设置表名称和列。可适当添加备注信息,方便后续使用,列设置时类型一定要有,尽量设置大一点,防止后续导入时出错,可点击查看SQL按钮,显示创建表的SQL语句,方便下次直接执行代码创建表。

(2)打开ODBC导入器

    点击PL/SQL页面顶部的“工具”,点击“ODBC导入器”,弹出ODBC导入器窗口

(3)选择需要导入的表

    用户/系统DSN选择“Excel Files”,点击连接,选择需要导入的表。选择需要导入的具体sheet,并预览

(4)确定Oracle对应的位置

    选择所有者,表,查看字段匹配情况,对于不能自动匹配的字段,手动在右侧窗口中选择对应的字段和字段类型,点击“导入”按钮导入数据。

文本导入器

    顾名思义,文本导入器导入的是文本格式的文件,我通常用文本导入器导入csv格式的文件

(1)新建表,具体方法与ODBC导入器一致

(2)打开文本导入器

点击PL/SQL页面顶部的“工具”,点击“文本导入器”,弹出文本导入器窗口

(3)选择需要导入的表

点击选择文件按钮,选择确定需要导入的文本文件并进行预览

(4)确定Oracle对应的位置

    选择所有者,表,查看字段匹配情况,对于不能自动匹配的字段,手动在右侧窗口中选择对应的字段和字段类型,点击“导入”按钮导入数据。

导入表工具 

    点击PL/SQL页面顶部的工具,点击导入表,弹出导入表窗口

(1)Oracle导入

    选择需要导入的dmp文件,点击“导入”按钮,最下方有导入完成提示。导入完成后可在最右侧日志页查看详细的导入结果

(2)SQL插入

    选择需要导入的sql文件,点击“导入”按钮,会弹出sqlplus.exe执行程序窗口,显示导入实时进度。导入完成后可在最右侧日志页查看详细的导入结果

(3) PL/SQL Developer

    选择需要导入的pde文件,点击“导入”按钮,最下方有导入完成提示。导入完成后可在最右侧日志页查看详细的导入结果。速度真的慢,比SQL插入慢

3.总结

(1)日常小数据量需要跟其他人交互的就用导出查询结果为xlsx格式

(2)ODBC导入器和文本导入器需要提前写好表结构

(3)大量数据需要迁移是选择“导出表”和“导入表”的Oracle方法,不需要写表结构

(4)备份数据就直接导出为dmp格式的文件,需要恢复的时候再重新导入


http://chatgpt.dhexx.cn/article/iMJX6SaE.shtml

相关文章

php设置中国时区方法

当我们输出:echo date(Y-m-d H:i:s,strtotime(now)); 发现输出的时间和当前系统的时间不一致的时候,我们需要改php.ini配置文件,使得输出的时间和当前系统时间一致 方法一:php.ini配置文件中设置中国时区,代码如下 da…

nginx php 设置时区,laravel5.8(二十)解决时区设置差8个小时解决办法

在使用laravel日志的时候,发现了一个问题,laravel日志记录的时候,总是要比我当前的时间差8个小时。 在服务器端输出格式化时间,也是当前的时间,这个就有点奇怪。百度了一下。 原来从php5.1.0开始,php.ini里…

php配置设置时区,php如何设置时区

php设置时区的方法:可以使用函数ini_set(date.timezone,Asia/Shanghai)来设置时区。还可以使用函数date_default_timezone_set(‘Asia/Shanghai)来设置。 在程序PHP 5以上版本的程序代码中使用函数date_default_timezone_set(‘Asia/Shanghai);来设置时区&#xff0…

php中的时间函数(如何设置时区有4种方法)------与时间相关的函数 (time、date、m‘ktime、microtime(true)、strtotime)

1.如何设置时区:服务器默认的时间都是国家统一时间格林威治,所以在使用服务器前需要设置当前服务器的时区位于用于指定的时区。 设置时区: 1、找到php.ini文件,找到date.zonetime。 (1)date.zonetime 大洲/城市 …

php:php时区的三种设置方式

格林威治标准时间和我们的时间(北京时间)差了正好8个小时。如果不设置时区,php时间默认使用格林威治标准时间。 方法一(推荐) 在php.ini里加上找到date.timezone项,设置date.timezone “Asia/Shanghai”,重启环境就…

Telnet的简单使用

当我们在cmd客户端输入telnet ip的时候,会提示telnet 不是内部或外部命令的错误,这是因为我们的Windows系统的Telnet客户端程序没有开启。例如: 1. 开启Windows系统的Telnet客户端 1) 打开控制面板,点击程序功能&…

Ubuntu18.04系统如何安装和使用telnet工具

在ubuntu18.04中如何安装和使用telnet工具呢?本文给出详细说明。 1.更新软件列表 sudo apt update 2.安装telnet服务 sudo apt install openbsd-inetd telnetd 3.查看telnet运行状态 netstat -a | grep telnet 4.登录测试 telnet 127.0.0.1

【Windows篇】Telnet指令介绍以及telnet测试端口连接示例

演示环境 1.VMware Workstation16虚拟机 2.windows10企业版镜像 前言 Telnet是Internet远程登录服务的标准协议和主要方式,最初由ARPANET开发,现在主要用于Internet会话,它的基本功能是允许用户登录进入远程主机系统。telnet程序是基于TELN…

Telnet协议抓包-工具Wireshark

虚拟机与物理机都进行的操作,打开控制面板 --> 点开程序 --> 点开“打开或关闭Windows功能”,在虚拟机设置telnet服务端,在物理机设置telnet客户端。 在虚拟机进行如下操作:WindowsR --> 输入services --> 进入到服务…

Telnet介绍及其安装

Telnet是一种协议,其是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。 Windows 系统自带了基于Telnet协议的程序,包括服务端程序和客户端程序, 所以习…

win10环境下的telnet工具使用(客户端和服务端)

开启服务 默认情况下win10里telnet工具是不开启的 如何开启telnet工具,网上有诸多教程,但是win10环境下的telnet工具是被阉割过的,只有客户端程序,即能在本机通过telnet访问其他主机,但是没有服务端程序,即…

【高效开发工具系列】Windows 怎么使用 telnet

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…

推荐一款好用的telnet工具

常用telnet的人可能都知道secureCRT这款工具,支持多标签,密码保存等功能;可是它是共享软件;于是很多人就用putty来代替它; putty小巧好用,不过和secureCRT相比不支持密码记忆和多标签功能。今天我向大家推…

批量ping及telnet工具

批量ping及telnet工具 批量ping及telnet工具说明界面使用方法工具下载链接 批量ping及telnet工具说明 这款工具针对一个网段批量ping测试和对同一网段内指定端口的telnet测试。适合用于测试一个网段的机器有没有开放特定端口,防火墙策略检测,或是否打开…

电脑telnet工具如何开启

打开电脑Telnet 打开电脑----开始---控制面板----程序和功能----打开或关闭WINDOWS功能----TELNET 客户端勾选,并点击确定。 Telnet工具的使用 点击开始----运行----输入CMD(打开命令窗口),直接输入telnet IP(设备I…

Linux删除文件夹权限不够

第一种:文件夹有锁 使用命令 sudo chmod 777 test 给与这个test文件夹读写权限。 即可去点文件夹的锁,然后可以删除 第二种:文件夹没有锁,却还是不能删除,提示权限不够 这种情况,文件夹的属性-权限如下如…

linux给文件夹添加查看密码是什么,Linux如何给文件夹设置密码

电脑里经常会存储着重要文件,这些文件需要进行加密,有许多方法来实现。但是你知道在Linux里面怎么给文件夹加密码?下面跟着学习啦小编一起来了解一下吧。 Linux如何给文件夹设置密码 Cryptkeeper是一个Linux系统托盘小应用程序,可以管理经过加密的文件夹。在它下面的EncFS则…

Linux通过共享文件夹传递文件

Linux通过共享文件夹传递文件 本文通过举例子的方式来记录,如何通过共享文件夹,将Windows系统下的文件传到Linux系统下。 假设我们在Windows系统下装了Linux虚拟机(我的是ubuntu20.04版)。现在我们的Windows系统下有一个文件“a…

linux 如何进入刚刚创建的文件夹

我们知道 linux 下创建文件夹命令是 mkdir 一般情况下, 我们期望在创建文件夹后, 并进入该文件夹 这里以创建 test 文件夹, 并进入 test 文件夹为例 # 创建 test 文件夹, 并进入 test 文件夹 mkdir test && cd $_总结: 通过 $_ 获取到上次命令的最后一个参数值 即获…

Linux桌面,建立文件夹快捷方式

想在Ubuntu16/CentOS 7桌面直接打开文件夹,需要建立文件夹的快捷方式。方法如下 方法1: 左手按住CtrlShift,右手控制鼠标,将文件夹拖拽至桌面。 方法2: 2.1 Ubuntu 16:进入任意终端,输入如下…