• 使用exp和imp导入导出指定表


    GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
    https://cnsendnet.taobao.com
    来自森大科技官方博客
    http://www.cnsendblog.com/index.php/?p=1509

    从源数据库导出:这种方式,包含创建表,插入数据,所以,目标应没有这个表

    exp user1/pwd@server1 file=c: empexp.dmp tables=(table1, table2)

    例如:

    exp platadmin/plat_8admin@hkserver32 file=d:hkdata.dmp tables=(REPORT_DRIVERATTENDANCE_day,REPORT_DRIVERATTENDANCE_MONTH)

    我试了一下,在本地不能导出,还是得在服务器上导,在服务器上导很快,几十万条数据的表,一两秒钟就导出完了

    导入到目标数据库:

    imp user2/pwd@server2 file=c: empexp.dmp tables=(table1, table2)

    例如:

    导入也很快,一两秒钟

    imp platadmin/plat_8admin@orclgis file=d:hkdata.dmp tables=(REPORT_DRIVERATTENDANCE_day,REPORT_DRIVERATTENDANCE_MONTH)

    • 1

    Oracle就是有这个好处,可以直接将远程的数据导出到本地;或者将本地的数据文件导入到远程数据库。而SQL SERVER的备份、还原文件,一定是放在远程服务器本机的。

    补充一下,如果有许多表,那么以上语句可能会换行。但以上命令是在DOS命令窗口执行的,命令行方式,容不得换行。那咋办呢?我的笨办法是将语句拷贝到WORD文档,然后将回车换行符替换掉。替换的方法:在替换窗口,查找内容输入 ^p(注意是小写),替换内容为空,然后替换即可。

    =====================================

    以 sysdba 身份运行,导出导入指定用户所属表:

    exp ‘sys/123456@Service1 as sysdba’ file=c: empexp.dmp table 
    s=(sde.ISLAND)

    imp ‘sys/888888@Service2 ’ file=c: empexp.dmp fromuser 
    =sde tables=(ISLAND)

    ================================================= 
    如果表空间的名字不一样,会报 ORA-00959 错误,咋办?

    1、先从源数据库,导出建表脚本(DDL)

    2、在新库新表空间里运行这些DDL

    3、imp,加上fromuser,touser,ignore=Y选项

    imp 'sys/lt@HPM as sysdba' file=c: empase.dmp fromuser=hydg touser=hpm tables=(org_user,SYS_ONLINE,sys_userRoles,Org_Role,Org_Group,sys_Event) ignore=Y

    • 1

    有关ORA-00959 错误的应对之道,参考文章:

    快速解决IMP中的ORA-00959

    GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
    https://cnsendnet.taobao.com
    来自森大科技官方博客
    http://www.cnsendblog.com/index.php/?p=1509

  • 相关阅读:
    python 关于文件操作
    python2 编码与解码
    Git系列(二) 冲突解决
    异步回调机制分析
    CSS盒子模型理解
    Git多人协同开发模型
    CSS连载控制背景与CSS精灵
    函数调用在回调,委托与事件在程序设计中的应用
    TFS与Git结合进行代码管理
    Git系列之(二)Git协议与工作协同
  • 原文地址:https://www.cnblogs.com/cnsend/p/13811836.html
Copyright © 2020-2023  润新知