11g服务器数据库导出方法是什么,数据库导出命令有哪些

导出11g服务器数据库,优先在服务器端用数据泵expdp,先建目录对象、授读写权限,再按用户或表导出;数据量小或只能本地连远程库时,用老式exp客户端命令也能完成。两种方式都能生成dmp文件,区别在于执行位置、性能和参数写法,下面按实操顺序拆开讲,命令可以直接照着改。

先搞清11g导出到底有哪几种方式

Oracle 11g里常用的导出工具就两个:exp和expdp,前者是传统客户端工具,后者是服务端数据泵,选错了工具,后面参数、权限、日志路径全对不上。

Oracle 数据库数据导出导入(三)
加载中
Oracle 数据库数据导出导入(三)
s
szetomorrow
8911--
原视频地址

Oracle 11g exp和expdp导出区别

行业共识认为,expdp在11g中已经是主流方案,因为它走服务器进程、支持并行、能细粒度过滤,exp更像“老式直连导出”,适合临时取数或客户端版本受限的场景,对比看下表:

对比项 exp expdp
执行位置 客户端或服务器均可 必须在服务器端执行
目录要求 直接写文件路径 必须先建DIRECTORY对象
性能 单线程,数据量大时偏慢 支持并行,整体更快
过滤能力 支持owner、tables、query 支持schemas、tables、query、content
日志 屏幕输出或log参数 logfile参数,日志更完整
典型场景 小表、本地连远程库 整库、按用户、按表结构导出

如果你只导几张配置表,exp敲一行就完事;如果要导整个业务用户,expdp更稳。

导出前必须确认的三件事

  • 确认版本和字符集:select from v$version; 和 select from nls_database_parameters where parameter='NLS_CHARACTERSET'; 导出端和导入端字符集不一致,中文容易乱码。
  • 确认磁盘空间:dmp文件大小通常接近数据量本身,加上日志和索引,预留空间要大于源库该用户占用空间,近年来不少导出失败不是权限问题,而是挂载点写满。
  • 确认用户权限:普通用户只能导自己schema下的对象;导全库或其他用户,需要EXP_FULL_DATABASE角色或DBA权限。

用expdp导出11g数据库的完整操作路径

这套流程在11g R2上通用,命令里的用户名、服务名、路径换成你的即可。

第一步:在服务器上创建目录对象并授权

用sysdba登录服务器:

sqlplus / as sysdba
create or replace directory dump_dir as '/u01/app/oracle/dump';
grant read,write on directory dump_dir to scott;

注意/u01/app/oracle/dump这个路径必须真实存在,且Oracle操作系统用户有写权限,建完可以查:

select  from dba_directories where directory_name='DUMP_DIR';

第二步:给导出用户授予必要权限

按用户导出自己的数据,通常不需要额外角色,如果导全库:

grant exp_full_database to scott;

如果只导自己schema,跳过这步也行,权限不够时,expdp会直接报ORA-39127或ORA-31631,先看报错再补权限。

第三步:执行导出命令

按用户导出最常用:

expdp scott/tiger@orcl directory=dump_dir dumpfile=scott_20260101.dmp logfile=scott_20260101.log schemas=scott

几个关键参数:

  • schemas=scott:导scott用户下所有对象。
  • dumpfile和logfile:只写文件名,不写路径,路径由DIRECTORY决定。
  • 加parallel=2可以并行,但dumpfile要写成scott_%U.dmp格式。
  • 只导表结构:加content=metadata_only。
  • 只导数据不要结构:加content=data_only。
  • 按表过滤:tables=emp,dept。
  • 按条件过滤:query=scott.emp:"where hiredate>to_date('2020-01-01','yyyy-mm-dd')"。

第四步:检查日志和dmp文件

导出完成后别只看屏幕上的“successfully completed”,进目录看文件大小:

ls -lh /u01/app/oracle/dump/scott_20260101.dmp
tail -50 /u01/app/oracle/dump/scott_20260101.log

日志里重点看有没有ORA-开头的错误、导出的对象数量、是否有对象被跳过,dmp文件大小为0或几KB,基本就是没导出来。

怎么把11g服务器数据库导出到本地并验证

很多人的真实需求不是“在服务器上留个dmp”,而是要把文件拿到本地开发机或测试库,这里分两步:先导到服务器目录,再下载到本地。

通过FTP或SCP下载dmp文件

服务器能直连的情况下,scp最省事:

scp oracle@192.168.1.100:/u01/app/oracle/dump/scott_20260101.dmp ./

如果服务器只开了FTP,用二进制模式传输,别用ASCII模式,否则dmp文件会被改坏,下载后核对文件大小和服务器端一致。

本地用impdp导入验证

本地装好同版本或更高版本Oracle客户端/服务端,建好目录对象后执行:

impdp scott/tiger@本地服务名 directory=local_dir dumpfile=scott_20260101.dmp logfile=imp_scott.log

只想看dmp里有什么,不真正导入,可以用sqlfile参数把DDL抽出来:

impdp scott/tiger@本地服务名 directory=local_dir dumpfile=scott_20260101.dmp sqlfile=scott_ddl.sql

这条命令只生成SQL文件,不动数据库,适合先检查对象是否完整。

Oracle 11g数据库导出表结构命令与过滤技巧

只导表结构不导数据,在迁移和比对场景里很常见,expdp用content=metadata_only,exp用rows=n。

只导表结构不导数据

expdp写法:

expdp scott/tiger@orcl directory=dump_dir dumpfile=scott_meta.dmp logfile=scott_meta.log schemas=scott content=metadata_only

exp写法:

exp scott/tiger@192.168.1.100:1521/orcl file=scott_meta.dmp owner=scott rows=n

前者在服务器执行,后者可以在本地客户端执行,只导结构时,dmp文件通常很小,传输快,适合先在新环境建空库。

按表名或用户过滤的写法

  • 导指定表:tables=emp,dept
  • 导指定用户:schemas=scott,hr
  • 排除某张表:11g expdp不直接支持exclude表,可以用tables列出要导的表,或者用query加条件绕开。
  • 导表结构加部分数据:content=all配合query,只导符合条件的数据行。

如果表很多,把表名写进参数文件更清爽:

expdp scott/tiger@orcl parfile=exp.par

exp.par里写:

directory=dump_dir
dumpfile=scott_tables.dmp
logfile=scott_tables.log
tables=emp,dept,bonus
content=metadata_only

导出过程中最容易踩的坑

权限不足报ORA-39127

典型原因是用户没有读目录对象的权限,或者路径属主不对,检查dba_directories里的路径,用ls -ld看Oracle用户能不能进去,补grant read,write on directory后重试。

目录对象路径不对

建DIRECTORY时写的是服务器绝对路径,不是客户端路径,在本地执行expdp却指向本地目录,必然报错,expdp只认服务器端目录。

字符集不一致

导出前设置NLS_LANG,

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

源库和目标库字符集不同时,导入后中文可能变问号,导出日志里会记录字符集信息,迁移前先比对。

版本兼容问题

11g导出的dmp,导入到11g或更高版本通常没问题;把高版本dmp往11g低版本导,多数情况下会失败,业内专家指出,跨版本迁移优先用expdp,并在目标端用同版本或更高版本的impdp。

导出11g服务器数据库不是一条命令的事,核心就三件事:选对expdp或exp、把目录对象和权限配好、导出后看日志和文件大小,按上面的路径走一遍,整库、单用户、只导表结构都能覆盖。

关于11g服务器数据库导出的常见问答

导出11g数据库时expdp报ORA-39002和ORA-39070怎么办?

这两个报错通常连着出现,指向目录对象或日志文件打不开,先查dba_directories里路径是否存在,再确认Oracle操作系统用户对目录有写权限,最后看磁盘是不是满了,路径和权限修好后重新执行,不需要重启数据库。

11g服务器数据库导出到另一台服务器要注意什么?

目标端Oracle版本不能低于源端,字符集要一致或兼容,目标端预留空间要大于dmp文件体积,传输用二进制模式,导入前先在目标端建好DIRECTORY对象,如果只迁移一个用户,源端按schemas导出,目标端按remap_schema导入即可。

只导出部分表数据,用exp还是expdp更合适?

表少、数据量小、本地能直连服务器,用exp敲一行更快;表多、要走过滤条件、需要并行,用expdp,11g环境下expdp的tables和query参数组合更灵活,日志也更完整,排错时省时间。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/791829.html

赞 (0)
上一篇 2026年11月10日 08:09
下一篇 2026年11月10日 08:11

相关推荐

  • qq邮箱收件服务器主机名怎么填?,收件服务器地址在哪设置?

    QQ邮箱收件服务器主机名按协议填:POP3写pop.qq.com,IMAP写imap.qq.com,SSL端口分别是995和993;账号填完整QQ邮箱地址,密码填授权码,不是QQ登录密码, 主机名不是邮箱地址,也不是网页登录入口,下面按个人邮箱、企业邮箱和常见客户端逐项拆开,QQ邮箱收件服务器主机名怎么写:先认……

    程序编程 2026年11月6日
    700
  • ajax与jsonp区别是什么?ajax跨域请求失败怎么办

    Ajax 基于 XMLHttpRequest 对象实现同域或跨域数据交互,而 JSONP 利用 script 标签的跨域特性通过回调函数获取数据,前者支持所有 HTTP 方法且更现代,后者仅支持 GET 请求且为早期跨域解决方案,在 Web 开发的漫长演进中,前端与后端的数据握手方式经历了从粗暴到精细的变革,理……

    2026年6月3日
    4100
  • AIoT是什么意思?AIoT智能物联网的发展前景如何

    AIoT(智能物联网)的本质是人工智能(AI)与物联网(IoT)的深度融合,它并非两项技术的简单叠加,而是一场从“连接”到“智慧”的质变,核心结论在于:AIoT实现了设备从单纯的“数据采集者”向“智能决策者”的角色跨越,通过边缘计算与云端协同,构建了一个具备感知、分析、决策能力的智能生态系统,是产业数字化转型的……

    2026年3月16日
    10500
  • 联想sr655服务器如何组raid0,步骤是什么?

    在联想SR655服务器上组RAID0,核心操作是开机按F1进入LXPM管理界面,确认阵列卡控制器处于RAID模式,然后进入存储配置向导创建虚拟磁盘并选择RAID0级别,整个流程熟练后十分钟内可以完成,联想sr655服务器组raid0前要先想清楚这几点RAID0的原理是把多块物理盘合并成一个逻辑卷,数据被拆成条带……

    2026年10月14日
    200
  • 服务器1m宽带能带几个网站?1M带宽适合搭建多少个站点

    服务器1m宽带能带几个网站?核心结论是:在常规Web业务场景下,1Mbps带宽的服务器理论上可以支撑10至20个日均访问量(PV)在500-1000左右的企业展示型网站,或者单日总PV承载能力约为1万至1.5万,如果网站经过极致优化且流量平稳,承载数量可提升至30个左右;反之,若是图片密集或动态交互频繁的网站……

    2026年4月8日
    8100
  • 轩墨云VPS测评,9929实测,20.8元/月方案性能表现,轩墨云VPS怎么样,轩墨云VPS测评

    轩墨云VPS 20.8元/月方案在2026年Q1实测中展现出极高的性价比,其基于ARM架构的稳定性与I/O性能足以支撑中小型博客、轻量级API服务及开发测试环境,是预算有限用户的首选入门级产品,核心配置与硬件架构深度解析在2026年的VPS市场中,硬件架构的迭代直接决定了基础性能的上限,轩墨云此次推出的20.8……

    2026年5月15日
    5500
  • 西安GPU服务器租赁怎么选?,西安GPU服务器租赁哪家好?

    选择西安GPU服务器租赁,核心看五点:算力型号、网络延迟、计费模式、服务商资质、故障响应,多数用户选错,不是因为价格,而是没搞清楚自己的应用场景,先看结论,再往下拆,西安GPU服务器租赁怎么选?先分清训练和推理在西安本地租GPU服务器,第一件事不是比价,而是确定用途,同一个机房里,A100和T4的价格可能相差数……

    2026年9月25日
    000
  • PS4的Apex英雄怎么切换服务器,延迟高怎么办?

    PS4版《Apex英雄》切换服务器不需要修改任何系统设置,在游戏标题画面按住手柄右摇杆(R3键)约1秒,数据中心列表就会弹出,选择延迟最低的节点确认即可,很多主机玩家误以为只有PC版能选服务器,其实PS4版同样预留了完整的数据中心入口,只是藏得比较深,下面把整个操作流程、节点选择逻辑和换服后的疑难杂症一次性讲清……

    程序编程 2026年11月9日
    200
  • aix查看所有端口命令是什么,aix如何查看开放的端口列表

    在AIX操作系统运维管理中,全面掌握系统端口状态是保障服务器安全与性能的关键环节,核心结论是:查看AIX所有端口最有效的方法并非单一命令,而是组合使用netstat命令与lsof工具,前者提供网络协议栈的宏观视角,后者提供进程与端口关联的微观细节,两者互为补充,构成了AIX端口监控的完整闭环, 运维人员必须建立……

    2026年3月9日
    12400
  • aspxif语句在网页开发中具体如何使用?有哪些常见应用场景?

    在ASPX开发中,if语句是实现条件逻辑的核心工具,用于根据布尔表达式的真假值执行不同代码分支,其基础语法继承自C#,结构清晰且高效,开发者必须掌握其底层机制与最佳实践以构建健壮的Web应用,基础语法结构与执行逻辑<% if (condition) { // 条件为真时执行的代码 } else……

    2026年2月6日
    11700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注