0

0

Oracle数据库的导入导出

php中文网

php中文网

发布时间:2016-06-07 15:44:34

|

1350人浏览过

|

来源于php中文网

原创

Oracle数据库的导入导出 作者:赵磊 博客:http://elf8848.iteye.com 一、背景介绍 9i,10g,11g 支持Export 与 Import工具,以后的版本将不在支持。建议改用数据泵,数据泵是Export 与 Import工具加强。 Export 与 Import的操作是针对*.dmp文件的,是oracle

Oracle数据库的导入导出


作者:赵磊

博客:http://elf8848.iteye.com

 

一、背景介绍 

 

9i,10g,11g 支持Export 与 Import工具,以后的版本将不在支持。建议改用数据泵,数据泵是Export 与 Import工具加强。

 

Export 与 Import的操作是针对*.dmp文件的,是oracle专有的二进制格式。适合从oracle导入到oracle。

 

Export 与 Import对于大数据量(上G) 的导入导出已不适合。

 

SQL Loader这种导入工具是针对文本文件的。适合从文本文件导入到oracle。是执行insert语句的插入原理

 

Direct Load工具,直接加载,是从oracle块对oracle块的导数据,速度很多,适合从oracle导入到oracle。

 

 

二、使用Export 与 Import工具 对数据导入导出

 

工具在oracle  bin 目录下的 exp.exe , imp.exe 这两个工具

可在客户端或服务端运行

 

2.1、导出*.dmp文件

 

2.1.1 exp的四种模式:

1、表模式,用于导出某张表。

2、用户模式,用于导出某用户的Schema。

3、表空间模式,用于导出表空间。表空间的是由数据文件组成的,把数据文件从当前库copy到目标库,在用exp工具从当前库导出这个表空间的字典信息再导入到目标库,分两步走。限制较多。

4、数据库模式。用于导出整个数据库,不适合大数据量。

 

2.1.2  导出例子

 

导出1--用户模式

exp 用户名/密码@网络服务名 file=d:/oralce_bak_20101001.dmp owner=用户名 log=d:/exp.log direct=y

file:导出的*.dmp文件输出到指定目录

owner:导出哪个用户的Schema

log:日志文件输了到指定目录 (可选)

direct:y表示直接导出 (可选) 速度比一般导出快一倍以上,默认n

rows:y表示同时导出数据 (可选),默认值y,n表示只导表结构

 

导出2--表模式

exp 用户名/密码@网络服务名 file=20101001.dmp tables=表名1,表名2 rows=y  log=exp.log

file:导出的*.dmp文件输出到当前目录

tables:指定导出的表名,可以是多个,用逗号分隔

rows:y表示同时导出数据 (可选),默认值y,n表示只导表结构

log:日志文件输了到当前目录 (可选)

 

导出3--数据库模式

exp 用户名/密码@网络服务名 file=20101001.dmp full=y rows=y  log=exp.log grants=y

file:导出的*.dmp文件输出到当前目录

full:导出整个库

rows:y表示同时导出数据 (可选),默认值y ,n表示只导库结构

log:日志文件输了到当前目录 (可选)

grants: y表示导出授权 (可选)

 

2.1.3  导出时的字符集处理

 在源数据库与目标数据库字符集不同时,会发生字符集转换

 四个地方的字符集要先整清楚

 1、源数据库的字符集

 2、exp工具所在环境的字符集,你很可能在windows xp上运行exp导出远程oracle数据库的数据。

 3、imp工具所在环境的字符集,你很可能在windows xp上运行imp向远程的oracle数据库导入数据。

 4、目标数据库的字符集

 按最坏的情况计算,上面4个地方的字符集都不一样,最多会发生3次字符集的转换。转换时字符集不兼容就会发生乱码。

 

 查看数据库的字符集,数据库是英文linux系统:

 select * from nls_database_parameters;

 在查询结果中找三个地方:

     NLS_LANGUAGE -- American

     NLA_TERRITORY -- America

jQuery导入导出用户组数据代码
jQuery导入导出用户组数据代码

jQuery导入导出用户组数据代码

下载

     NLS_CHARACTEREST -- AL32UTF8

     说明是:美国 AL32UTF8

 

 查看exp,imp工具所在环境的字符集,是windows xp系统:

 看注册表:HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/可能有多个oracle,一般是KEY_OraClient10g_home1  到这里,看右侧,找NLS_LANG项的值是:简体中文ZHS16GBK。

 说明是: 简体中文ZHS16GBK

 

 由于上面两处字符集不同,在导出导入时,共会发生两次字符集转换,如果想避免转换,做如下修改:

 

 修改exp,imp工具所在环境的字符集

 在windows xp命令行输入:SET NLS_LANG=American_America.AL32UTF8

 与数据库的字符集一致,是上面英文linux系统中数据库字符集的三个名称的组合。

 

  如果源数据库与目标数据库字符集不同,但exp工具与源数据库字符集一致, imp工具与目标数据库符集一致, 那么会在imp读*.dmp文件时发生字符集转换。

 如果源数据库与目标数据库字符集不同,但exp,imp工具与源数据库字符集一致, 那么会在目标数据库接收*.dmp时发生字符集转换。

 

 2.1.4 导出的权限

 用户默认可导出自己的表,想导出别人的表或Schema,要有exp_full_database权限

 grant exp_full_database to 用户名

 

 

 

 

2.2导入*.dmp文件

2.2.1 imp的四种模式:

与exp工具一样有四种模式,详见上面的exp的四种模式。

 

2.2.2  导入例子

 

导入1--用户模式

imp 用户名/密码@网络服务名 file=d:/oralce_bak_20101001.dmp ignore=y  fromuser=从哪个用户 touser=导入到哪个用户 tables=表名1,表名2

file:指明*.dmp文件位置

ignore:y:表已存在就不用再创建表了直接导入。 n表示创建表再导入。   默认为n,(可选)

fromuser:从哪个用户来 (可选)

touser:导入到哪个用户 (可选)

tables:指定导入的表名,可以是多个,用逗号分隔 (可选)

 

导入2--表模式

imp 用户名/密码@网络服务名 tables=表名1,表名2 rows=y file=2010.dmp

tables:指定导入的表名,可以是多个,用逗号分隔

rows:y表示同时导出数据 (可选),默认值y,n表示只导表结构

file:导入当前目录的*.dmp文件到数据库

 

imp 用户名/密码@网络服务名 file=d:/oralce_bak_20101001.dmp  show=y

show: y表示不导入,只看看。可以看看*.dmp是从哪个版本的库导出来的,好像也能看字符集。

 

使用DBA身份导入,空格部分要加单引号

imp \'用户名/密码@网络服务名 AS SYSDBA\'   tables=表名1,表名2 rows=y file=2010.dmp

 

 

 2.2.4 导入的权限

 用户默认可导入自己的表,想导入别人的表或Schema,要有exp_full_database权限

 grant exp_full_database to 用户名

 

 

 

 

 

三、使用数据泵 对数据导入导出

 

数据泵是Export 与 Import工具加强,工具在oracle  bin 目录下的 expdp.exe , impdp.exe 两个工具

只能在服务端运行

 

相关专题

更多
php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

7

2025.12.31

php网站源码教程大全
php网站源码教程大全

本专题整合了php网站源码相关教程,阅读专题下面的文章了解更多详细内容。

4

2025.12.31

视频文件格式
视频文件格式

本专题整合了视频文件格式相关内容,阅读专题下面的文章了解更多详细内容。

7

2025.12.31

不受国内限制的浏览器大全
不受国内限制的浏览器大全

想找真正自由、无限制的上网体验?本合集精选2025年最开放、隐私强、访问无阻的浏览器App,涵盖Tor、Brave、Via、X浏览器、Mullvad等高自由度工具。支持自定义搜索引擎、广告拦截、隐身模式及全球网站无障碍访问,部分更具备防追踪、去谷歌化、双内核切换等高级功能。无论日常浏览、隐私保护还是突破地域限制,总有一款适合你!

7

2025.12.31

出现404解决方法大全
出现404解决方法大全

本专题整合了404错误解决方法大全,阅读专题下面的文章了解更多详细内容。

42

2025.12.31

html5怎么播放视频
html5怎么播放视频

想让网页流畅播放视频?本合集详解HTML5视频播放核心方法!涵盖<video>标签基础用法、多格式兼容(MP4/WebM/OGV)、自定义播放控件、响应式适配及常见浏览器兼容问题解决方案。无需插件,纯前端实现高清视频嵌入,助你快速打造现代化网页视频体验。

4

2025.12.31

关闭win10系统自动更新教程大全
关闭win10系统自动更新教程大全

本专题整合了关闭win10系统自动更新教程大全,阅读专题下面的文章了解更多详细内容。

3

2025.12.31

阻止电脑自动安装软件教程
阻止电脑自动安装软件教程

本专题整合了阻止电脑自动安装软件教程,阅读专题下面的文章了解更多详细教程。

3

2025.12.31

html5怎么使用
html5怎么使用

想快速上手HTML5开发?本合集为你整理最实用的HTML5使用指南!涵盖HTML5基础语法、主流框架(如Bootstrap、Vue、React)集成方法,以及无需安装、直接在线编辑运行的平台推荐(如CodePen、JSFiddle)。无论你是新手还是进阶开发者,都能轻松掌握HTML5网页制作、响应式布局与交互功能开发,零配置开启高效前端编程之旅!

2

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
SQL 教程
SQL 教程

共61课时 | 3.2万人学习

Java 教程
Java 教程

共578课时 | 40万人学习

oracle知识库
oracle知识库

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号