eygle.com   eygle.com
eygle.com  
 

« April 24, 2006 | Blog首页 | April 26, 2006 »



April 25, 2006

DBA警世录:Truncate之生产与测试环境

作者:eygle

出处:http://blog.eygle.com

不断的看到很多DBA在学习或工作过程中犯过很多相同或相似的错误.忽然想到,如果我把这些常见的错误或者故障收集记录下来,做为《警世录》,那么大家是不是可以做为借鉴,并使得后来人少犯或者不犯这些错误呢?

这就是DBA警世录的由来.

今天看到有朋友记下了这样一个案例:

因为要导两个表的数据到测试库,结果在产品库上用了Truncate......
更糟的是客户首先发现了问题 而不是自己 自己以为目标是
测试库............

总结:
1. 谨慎&细心
操作涉及产品库慎之再慎
2. 产品库和测试库有相同的user/pw(这在某种程度上造成了假象)

ps:此次事件被定性为生产事故 严重

这样的案例很多见,因为测试环境和生产环境混淆而导致的误Delete,误Truncate操作经常发生。除了DBA不够严谨之外,制度上没有保证也是问题之一。

这位同学总结的很好,通常我们的测试库和产品库应该设置不同的用户密码,不同的SID,在进行重要操作时,应该先select instance_name from v$instance命令验证一下当前连接的例程:

SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
eygle

这就如同我们在Unix/Linux主机上应该经常用hostname来确认一下当前连接的主机一样。

如果在本地登陆,我们还可以通过修改本地glogin.sql文件,显示当前连接的实例等信息。

总之,在执行任何数据变更操作之前,我们都应当谨慎。这是对于DBA的基本要求之一。

参考连接:
生产事故 http://www.itpub.net/533262.html  

 

Posted by eygle at 10:31 AM | Comments (1)


我的写作进度之二

作者:eygle

出处:http://blog.eygle.com

从上次公布我的写作进度以来,已经过去一个多月了.现在再向大家汇报一下我的写作进度.

最初计划写一本Oracle初学者指南之类的书,结果发现很难把一本书控制在初学者的范畴,所以写起来难度就逐渐深入了下去.不过也好,符合我原来的想法.去年曾经计划写一本《Oracle诊断案例》的书,一直没有动笔,现在两本书合为一本了。

现在每章的布局基本上分为三个部分,基础知识、进阶知识、结合实际的案例分析。我希望能够摆脱传统技术书刊要么基础知识,要么代码实例的模式,将基础知识,深入研究,性能调整,诊断案例等相关内容,按照每章一根主线展开,从而能够使读者通过每一章的阅读,就能够对相关知识有一个纵向的深入认知。

这也是我一直主张的由点及线再到面的学习方法。

我自己是如此学习的,我也希望可以通过这本书将这个思想传达出来。而且我也希望,这本书不仅能给初学者以帮助,也能给熟练者带来一些新的东西。

现在这本书已经完成了七章的初稿,分别是:

Oracle的启动
参数及参数文件
SGA与PGA管理
数据字典
重做
回滚与撤销
等待事件

现在开始着手回头重新修订这七章,希望能够在5月中旬定稿这七章内容,最终全书可能写9章。

希望大家能够对书名及章节内容给我一些建议,谢谢大家!

最近基本保证每天写作2小时左右,希望可以尽快完成这本书。

详细目录很快就可以出来:)

 

Posted by eygle at 10:14 AM | Comments (0)



CopyRight © 2004-2008 eygle.com, All rights reserved.