oracle备份数据库


1. 连接远程数据库
打开cmd
执行sqlplus/nolog
执行 connect 用户名/密码@IP:端口/服务名
例:connect system/ETYY@114.116.211.102:1521/ETYY
2. 创建directory,首先要保证存在该文件夹
create directory 名字 as '路径';
例:create directory expdir as 'E:\expdir';
3. 授权
grant read,write on directory expdir to 用户;
例:grant read,write on directory expdir to yl_etyy;
4. 执行导出
     1) exp 用户名/密码@IP:端口/服务名 file=路径:文件名 owner=(用户),只导出该用户下的表
    例: exp yl_etyy/sx_etyy@114.116.211.102:1521/ETYY file=E:\20220224.dmp owner=(yl_etyy)
     2) expdp  用户名/密码@IP:端口/服务名  schemas= 用户名  directory=expdir dumpfile= 文件名
    例: expdp yl_etyy/sx_etyy@114.116.211.102:1521/ETYY schemas=yl_etyy directory=expdir dumpfile=20220224.dmp
说明:第二种方式在远程备份的时候执行报错了,错误信息:

连接到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Pr

With the Partitioning, OLAP, Data Mining and Real Application Testing

ORA-39002: 操作无效

ORA-39070: 无法打开日志文件。

ORA-29283: 文件操作无效

ORA-06512: 在 "SYS.UTL_FILE", line 488

ORA-29283: 文件操作无效等类似的错误。

网上查询资料解释是:expdp只能在服务器端执行,在客户端执行会出现上述错误

参考另一篇笔记:expdp,impdp导出导入远程数据库到本地

5. oracle导出导入指定表

从源数据库导出:

exp user1/pwd@server1 file=c:\temp\exp.dmp tables=(table1, table2)
导入到目标数据库:

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

导入到指定用户下:
imp user/pwd @IP:端口/服务名  file=c:\temp\exp.dmp fromuser=用户名 touser=用户名






免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM