zoukankan      html  css  js  c++  java
  • windows下oracle数据库备份还原操作(注:从一台服务器转移至另一台服务器)

    1.exp和imp备份还原数据库操作命令(cmd下操作)

      exp username/password@ip地址/实例名 file=磁盘:/目录/备份文件名.dmp owner=username log=磁盘:/目录/exp备份文件名.log

      imp 新用户名/密码@ip地址/ip地址 file=磁盘:/备份文件名.dmp full=y log=磁盘:/imp备份文件名.log

      授予新用户权限最后执行sql脚本

    2.expdp和impdp备份还原数据库操作命令(cmd下操作)

    2.1创建自己的备份文件expdp导出安放的逻辑目录(个人习惯)

      create directory DBDIR as 'E:dbdir';(需要手动建立该文件夹)

      根据select * from dba_directories;查询DBDIR映射的逻辑目录即'E:dbdir'

    2.2执行expdp命令

      expdp 导出的用户名/密码@ip地址/实例名 schemas=导出的用户名 dumpfile=备份文件名.dmp DIRECTORY=DBDIR(ip地址可替换为localhost,下同)

    2.3创建新用户名及密码

      create user 导入的用户名 identified by 密码;

    2.4创建自己的impdp导入的备份文件的逻辑目录(个人习惯)

      create directory DBDIR as 'E:dbdir';(手动建立文件夹,注意文章标题这是另一台服务器)

    2.5授予新建的导入用户权限

      如果有表空间先赋予表空间权限;

      grant read,write on directory DBDIR to 导入的用户名;

      grant resource,connect to 导入的用户名;

      后面impdp导入命令执行完,执行sql脚本可能还需要其它权限比如创建视图权限

    2.6执行impdp命令

      impdp 导入的用户名/密码@ip地址/实例名 directory=DBDIR dumpfile=备份的文件名.dmp logfile=impdp备份的文件名.log remap_schema=导出时的用户名:导入的用户名

      有时候这一条命令可能执行不成功,尝试执行:

      impdp 导入的用户名/密码@实例名 directory=DBDIR dumpfile=备份的文名.dmp logfile=impdp备份的文件名.log remap_schema=导出时的用户名:导入的用户名

    2.7最后一步执行sql脚本

      

    3.exp/imp与expdp/impdp个人经验总结

      对于小表处理效果exp/imp效果更好,当备份文件较大时推荐expdp/impdp,如果是整个数据库迁移可以用冷迁移或者热迁移,这时候迁移的注意数据库配置文件的一致性。一般imp或impdp导出操作时间都比较短,5g的dmp文件导出只需要十几分钟,但是导入的时候需要2个小时左右,而且导入的磁盘得二三十g大小容纳,最后推荐一本书《Oracle DBA 工作笔记 运维、数据迁移与性能调优》,可以学习Oracle运维、数据迁移与性能调优。

  • 相关阅读:
    按钮字体颜色的设置
    异常
    数据存储
    SQLiteOpenHelper
    MVC
    在单线程模型中 Message、Handler、Message Queue、Looper 之间的关系
    ListView 的优化方案
    fragment生命周期及优点
    ANR
    Android系统架构
  • 原文地址:https://www.cnblogs.com/klzs226/p/8622260.html
Copyright © 2011-2022 走看看