linux导出dmp
⑴ linux下oracle命令导出表中部分字段
和linux无关,用exp命令就可以实现
导出一个表中的部分数据,使用QUERY参数,如下
导出select * from test where object_id>50000这个条件中的数据
exp charsi/charsi@testdb tables=(TEST) query="'where object_id>50000'" file=aaa.dmp log=aaa.log
其他参数含义:
GRANTS:指定是否导出对象的授权信息,默认参数为Y,即默认导出
INDEXES:指定是否导出表的索引,默认为Y
CONSTRAINTS:指定是否导出标的约束,默认为Y
TRIGGERS:指定是否导出与表相关的触发器,默认为Y
FILESIZE:如果生成的mp文件超过指定的,需要使用FILE参数指定多个文件
BUFFER:用来指定执行导出时,处理数据所用的缓存区大小,以字节为单位.这个参数变相用来控制导出时记录数组单次最大能加载的记录数.
RECORDLENGTH:该参数用来指定Export的I/O buffer,以字节为单位,最大不超过65535
⑵ linux oracle 怎么导入.dmp文件
对于本机安装了oracle 客户端,下述命令都可以在 dos 执行,当然 dmp 文件导出在本地。
但在实际研发时,没人愿意在本机上安装庞大的 oracle 软件,这时你需要使用 Xshell/puTTY..
远程工具连接到 Linux 进行操作,进行 Linux 上 dmp 文件的导入导出。
a. 将用户 system 用户表导出到指定路径 D 盘
exp system/password@SID file=d:/chu.dmp full=y
b. 将用户 system 与 sys 用户的表导出到指定路径 D 盘
exp system/password@SID file=d:/chu.dmp owner=(system,sys)
c. 将用户 system 中的表 table_A、table_B 导出到指定路径 D 盘
exp system/password@SID file= d:/chu.dmp tables=(table_A,table_B)
d. 将用户 system 中的表 table1 中的字段 filed1 以"00"打头的数据导出
exp system/passwor@SID filed=d:/chu.dmp tables=(table1) query=/" where filed1 like '00%'/"
对于压缩可以用 winzip 将 dmp 文件进行压缩,也可以在上面命令后面 加上 compress=y 来实现。
导出 DMP文件适用于大型数据库完整迁移,对迁移前后两者服务器数据库字符集要求一致,且对CLOB字段支持不太友好。
对于小数据的导出其实用 PLSQL 能做的更好,更快,导出的SQL也很直观。
e. 将 D:/chu.dmp 中的数据导入 TEST 数据库中。
imp system/password@SID file=d:/chu.dmp
imp system/password@HUST full=y file=d:/data/newsmgnt.dmp ignore=y
上面命令如果出现问题,假设有的表已存在,对该表可以不进行导入,后面添加 ignore=y。
f. 将 d:/chu.dmp中的表table1 导入
imp system/passord@SID file=d:/chu.dmp tables=(table1)
⑶ linux oracle .dmp鏂囦欢鏀惧湪鍝涓鐩褰曚笅闱
褰撶劧锛岀敤宸ュ叿瀵煎嚭鏄链鏂逛究镄勶纴瑕佹槸鐩存帴鐢ㄩ粦绐楀彛瀵煎嚭涔熸槸寰堟柟渚跨殑銆
杩欎釜瀵煎嚭镄勮瘽锛屼綘鍙浠ュ叿浣撶殑涓婄绣鎼沧悳锛屾湰鍦扮殑灏辩洿鎺ュ煎嚭灏辫岋细
鏁版嵁瀵煎嚭锛
1 灏嗘暟鎹搴揟EST瀹屽叏瀵煎嚭,鐢ㄦ埛钖岘ystem 瀵嗙爜manager 瀵煎嚭鍒瘅:\chu.dmp涓
exp system/manager@TEST file=d:\chu.dmp full=y
2 灏嗘暟鎹搴扑腑system鐢ㄦ埛涓巗ys鐢ㄦ埛镄勮〃瀵煎嚭
exp system/manager@TEST file=d:\chu.dmp owner=(system,sys)
3 灏嗘暟鎹搴扑腑镄勮〃table1 銆乼able2瀵煎嚭
exp system/manager@TEST file=d:\chu.dmp tables=(table1,table2)
4 灏嗘暟鎹搴扑腑镄勮〃table1涓镄勫瓧娈礷iled1浠"00"镓揿ご镄勬暟鎹瀵煎嚭
exp system/manager@TEST file=d:\chu.dmp tables=(table1) query=\" where filed1 like '00%'\"
濡傛灉鏄杩灭▼镄勮瘽涔熸槸鍙浠ョ殑锛
C:\Documents and Settings\Administrator>exp tmrpt/[email protected]:1521/bocReport file=c:\yuCheng\event_log_realtime.d
mp tables=(event_log_realtime);
⑷ telnet 远程linux服务器导出oracle数据库到本地,命令要怎么写
操作顺序:
1、打开本地终端,输入telnet命令:
>> telnet 服务器ip
输入用户名 密码 登陆成功
2、转到oracle用户下,输入:
>> su - oracle
>> exp
根据Oracle的exp命令提供的到处向导,导出用户需要的数据到dmp文件中 myxxxoutxxx.dmp
3、接下来是讲这个dmp文件传到本地
两种方式
1、如果服务器端开启了ftpd 或者 sshd ,可以从本地连接过去,把dmp文件下载到本地
重新打开一个本地终端
>> ftp 服务器ip
输入用户名 密码 登陆成功
>> cd dmp文件目录的相对路径
>> get myxxxoutxxx.dmp
2、如果本地服务器开启了相关服务 可以从服务器端上传dmp文件到本地
>> cd dmp文件目录的路径
>> ftp 服务器ip
输入用户名 密码 登陆成功
>> put myxxxoutxxx.dmp
最后就是本地库的导入了
在终端中输入 imp 根据向导一步一步设置导入
或者用开发工具帮助导入