ORACLE坏块(ORA-01578)处理方法
ORACLE 的坏块即 ORA-01578 错,同时还可能伴随 ORA-01110 错,这种错误对于初学者或是那些没有实践经验的 dba 来说无疑是很棘手的。我当初就深受其害,写下这篇文章则是希望对大家有所帮助。 [@more@] 一、 出问题时的情景 1、 我的一个计费的入库的进程停掉,报的便是 ORA-01578 错,对应用相关的表 tg_bill03 做 SQL>select from tg_cdr03 where rownum<10; 这样是可以的,但做 SQL>select count(*) from tg_bill03; 时则报 ORA-01578 错。 2、 检查 alter<sid>.log 中看到一几条报错信息: Errors in file
性能调优之分区篇(二)
可通过查询USER_TAB_PARTITIONS视图来查询分区名单。[@more@] SQL> desc user_tab_partitions; Name Null? Type ----------------------------------------- -------- ---------------------------- TABLE_NAME
性能调优之分区篇(原创)
为了使大型数据库的管理更方便,可以使用分区。分区讲表中的行动态的分到小一些的表中,尽管数据在物理上被分开但逻辑上仍以一个整体出现,可以改进维护操作,备份,恢复,事务处理和查询的性能。本篇主要是在windows 2000环境下得oracle 9.2.0.1,用emp作为例表。对于已经有数据的表采用先改名的方法。然后根据已改名的表新建这个表执行分区。[@more@] SQL>rename emp to emp1;rename complete.SQL> create table emp 2 partition by range(sal) 3 (partition p
temp表空间不能收缩的问题(转载)
正常来说,在完成Select语句、create index等一些使用TEMP表空间的排序操作后,Oracle是会自动释放掉临时段a的。但有些有侯我们则会遇到临时段没有被释放,TEMP表空间几乎满的状况,甚至是我们重启了数据库仍没有解决问题。这个问题在论坛中也常被网友问到,下面我总结一下,给出几种处理方法。[@more@]法一、重启库 库重启时,Smon进程会完成临时段释放,TEMP表空间的清理操作,不过很多的时侯我们的库是不允许down的,所以这种方法缺少了一点的应用机会,不过这种方法还是很好用的。 法二、Metalink给出的一个方法&n