不可靠的EXP远程备份
前天接到一个求助电话, 说是一个dmp文件不能导入, 一开始经验性地认为可能是ftp传文件的模式问题, 后来对方再三确认不是这个问题, 就让人家将dmp文件传给我看一下, 在导入指定用户时遇到了不正常的dmp文件结束错误.
虽然因为写AUL而对数据文件块格式比较清楚, 但DMP文件如果乱了却是没有什么招的, 虽然如此, 试着导入几次无果后, 还是用UltraEdit以十六进制打开了DMP文件, 看到DMP文件中有SH等Oracle Demo用户的表, 于是指定导入SH用户试试, 居然全部导入, 然后报了一个不正常的dmp文件结束错误.
这时明白了最终的原因, 这个DMP文件不全, 也就是只给了完整DMP文件的一部份, 于是在DMP文件中查找所有的"CONNECT"字符, 没有发现用户表所在的用户名, 就告诉用户这个DMP文件不全, 只导出了部份, 有没有更大的DMP文件. 但心中明白了一些原委, 一般情况下在安装Oracle时都会装很多的Demo用户, 并且一般会使用具有DBA权限的用户(给常用的帐户授于DBA权限), 所以进行导出时, 虽然连到了准确的用户, 但还是因为拥有DBA权限而做了全库导出, 每次都优先导出了那一堆Demo用户的数据, 而不是用户的真正数据.
进一步与用户确认, 原来用户为了做灾备, 对这个并不重要的数据, 用Internet的连接来做EXP备份, 猜想由于国内互联网的不稳定性, 经常导到一半或更少时就断开了, 造成了一个不全的EXP备份. 然后以为有EXP备份, 没有确认就将系统重新格掉重装Oracle了, 引起了这一悲剧.
上一次去做现场服务时, 发现只用EXP做备份的情况还是比较多的存在, 这下要小心了, 至少要判断EXP命令的返回值, 最好是做EXP备份的导入验证, 以确保这个唯一的备份是有效的, 当然更好的是咨询专业人员采用更好的备份策略.
如果你正在用Internet连接做远程备份, 千万要小心了!
建议继续学习:
- 仅仅只备份是不够的 (阅读:4895)
- 使用scp在windows和Linux之间互传文件 (阅读:4178)
- rsync自动输入密码实现数据备份 (阅读:4082)
- rman备份对各种数据块操作 (阅读:3685)
- 将远程共享文件夹挂载到linux本地目录 (阅读:3606)
- 使用 rsync 或 unison 备份或同步支持 ssh 的 web 主机 (阅读:3280)
- mydumper的使用和源代码分析 (阅读:3166)
- MySQL 备份和其恢复机制原理简述 (阅读:3129)
- linux 定期自动备份mysql的shell (阅读:3069)
- xtrabackup知多少 (阅读:2666)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:anysql 来源: AnySQL.net
- 标签: EXP 备份 远程
- 发布时间:2010-05-29 10:55:21
- [55] IOS安全–浅谈关于IOS加固的几种方法
- [55] Oracle MTS模式下 进程地址与会话信
- [54] 如何拿下简短的域名
- [53] android 开发入门
- [52] Go Reflect 性能
- [52] 图书馆的世界纪录
- [49] 读书笔记-壹百度:百度十年千倍的29条法则
- [47] 【社会化设计】自我(self)部分――欢迎区
- [38] 程序员技术练级攻略
- [33] 视觉调整-设计师 vs. 逻辑