oracle 远程导入 导出

exp本地导出与imp本地导入

exp命令:
1 exp username/psw@TEST file=d:test.dmp full=y
2 exp username/psw@TEST file=d:test.dmp owner=(ly)
3 exp username/psw@TEST file= d:test.dmp tables=(grid1,grid2)
1其中一是将Test(与某一数据库对应的oracle服务名)数据库进行整体导出
2将属于用户ly的所有表导出
3将表grid1,与grid2导出
d:test.dmp是导出的文件地址

imp命令:
1 imp system/psw@TEST file=d:test.dmp
2 imp system/psw@TEST full=y file=d:test.dmp ignore=y
3 imp system/psw@TEST file=d:test.dmp tables=(grid1)ignore=y表示如果被导入的数据库中某个表已经存在就忽略不导入那个表
3表示只导入grid1这个表

在导入导出前要先测试下对应的数据库是否是通的:tnsping test来测试,同样test是服务名
所有命令可在cmd下执行


用exp/imp远程操作数据库

对ORACLE数据库进行远程操作,假设数据库在192.168.1.110上,具体方法如下:
一、在客户端创建和服务端对应的服务名
方法1:
修改tnsnames.ora文件
加入远程服务器的命名:

Sql代码
TEST_ORCL =  
(DESCRIPTION =  
    (ADDRESS_LIST =  
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))  
    )  
    (CONNECT_DATA =  
      (SERVICE_NAME = orcl)  
    )  
)

方法2:

在oracle客户端,打开net manager。

创建一个服务命名TEST_ORCL,主机IP为:192.168.1.110,服务名orcl,端口1521


二、测试远程服务器是否畅通

进入到cmd后,执行命令:tnsping TEST_ORCL。

三、远程操作数据库
导出:

Sql代码
1:exp username/password@TEST_ORCL file=bak_filepath
2:exp username/password@TEST_ORCL full=y file=bak_filepath
username 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径

导入:

Sql代码
1:imp username/password@TEST_ORCL file=bak_filepath full=y
2:imp username/password@TEST_ORCL/database_name file=bak_filepath full=y
3:imp username/password@TEST_ORCL file=bak_filepath fromuser=fromadmin touser=toadmin

username 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径
fromadmin 备份数据的用户名,toadmin 还原数据库的用户名。database_name 还原到那个数据库上

full=y 将数据库整体导出,包括表结构等。




IMP-00003: 遇到 ORACLE 错误 20001

今天使用imp导入备份数据的时候出现问题

IMP-00003: 遇到 ORACLE 错误 20001
ORA-20001: Invalid or inconsistent input values
ORA-06512: at "SYS.DBMS_STATS", line 4194
ORA-06512: at line 1

GOOGLE了一下,是版本差异引起的问题

再去查看exp和imp的版本,果然是有差异,exp的是10.2.0版本,imp的是10.1.0的版本,

oracle是向下兼容,低版本导出的数据能导入高版本,高版本导出的数据无法导入低版本

查看oracle版本

客户端:
sqlplus /nolog->可以看到客户端版本


服务器:

连接之后SQL> select * from v$version;—>可以查看服务器的版本

但是又不想重新安装客户端

于是又搜了搜解决方法

有网友提出解决方法

加了statistics=none

imp user/user file=file.dmp full=y statistics=none
解决
参数说明
exp userid=user_name/user_pwd@net_service_name owner=user_name file=exp_user_name.dmp log=exp_user_name.log buffer=67108864 statistics=none grants=n consistent=y
buffer缓冲区大小,64M,再往上也没有明显的性能提升
statistics:表示不导出分析数据
grants:相关对象的授权
consistent:确保在imp的时候,不会出现fk不能enable的情况

exp help=y可以查看所有选项和说明,imp也一样

  转载请标明出处 http://blog.csdn.net/shimiso 

技术交流群:66756039


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值