li
  当前位置:主页 > 性能优化 > 文章内容
li
Oracle中疑难问题的解决方案
来源: www.ixdba.net  作者: IXDBA.NET官方    时间:2008-03-07   阅读:10  
本文章共1965字,分2页,当前第1页,快速翻页:
 

问题1:假如发现表中有坏块,怎样检索其它未坏的数据?

答:首先需要找到坏块的ID(可以运行dbverify实现),假设为1234。运行下面的查询查找段名:

select segment_name, segment_type, block_id, blocks 
from dba_extents
where (1234 between block_id and (block_id + blocks - 1));

一旦找到坏段名称,若段是一个表,则最好建立一个临时表,存放好的数据。若段是索引,则删除它,再重建。

create table good_table 
as
select  from bad_table where rowid not in
( select /+index(bad_table, any_index)/ rowid
from bad_table where substr( rowid, 1, 8 ) = 1234)

问题2:如何关闭FORM调用REPORT时的小窗口?

答:在利用Oracle数据库的Develop 2000设计开发界面的过程中,当FORM调用REPORT时,会显示一个背景窗口REPORT BACKGROUD ENGINE,等待FORM对REPORT的调用,当FORM调用其它REPORT时,也使用这个后台服务器,不论调用多少个REPORT,这个后台服务器存在且只有一个。但当FORM与REPORT全部退出后,该窗口仍处于等待状态,不会关闭,这时,我们需要手工将其关闭。

我们可以使用以下参数在FORM调用REPORT时不显示这个小窗口:

Add_Parameter( pl_id, 
'ORACLE_SHUTDOWN',TEXT_Parameter, 'Yes' );

需要注意的是,该参数必须加在所有参数的前面,即它必须为第一个参数。

问题3:如何根据查询条件在REPORT中动态显示记录?

答:1、在REPORT的“数据模型”下面的“用户参数”中,创建用户自定义参数W_CLAUSE,W_CLAUSE为从FORM传递过来的查询条件,数据类型为字符型,缺省值为NULL。

2、修改查询Q_1,将SQL查询语句修改为select from dept &&w_clause。

3、在运行报表时,报表会自动将符合&&w_clause的查询条件记录显示出来。

如果从FORM传递过来的w_clause为where dept=1,本报表的SQL查询自动转换为select  from dept where dept=1,并在报表运行结果中显示符合该查询条件的记录,如果从FORM传递过来的w_cluase为where to_char(年度,'YYYY.MM')='2000.03',则在报表运行结果中自动显示2000年3月份的记录。

问题4:在Oracle数据库中,如何查看某表上的约束?

答:我们可以使用下面语句从all_constraints视图中查看某表上的约束:

SELECT constraint_name, table_name, r_owner, r_constraint_name 
IXDBA.NET技术社区
FROM all_constraints
WHERE table_name = 'table_name' and owner = 'owner_name';

另一个视图ALL_CONS_COLUMNS也包括组成表上约束列的信息。

问题5:怎样将数据库从noarchivelog方式改变为archivelog方式?

答:首先打开Init.ora文件,确保存档日志目标指向一有效目录。

然后启动Server Manager。

svrmgrl〉 shutdown immediate 
svrmgrl〉 startup mount
svrmgrl〉 alter database archivelog;
svrmgrl〉 alter database open;
svrmgrl〉 archive log list;

在init.ora中设置参数archive_log_start=TRUE,它设置存档日志为自动启动。在Oracle 8i中支持多个存档日志的目标,因此参数修改为log_archive_dest[n],其中n为1到5。

问题6:在Oracle数据库中,我们如何增加表空间的大小?

答:在开发Oracle数据库中,我们有两种方法增加表空间的大小:

1、增加额外的数据文件到表空间中。



阅读更多内容1 · 2 · 下一页>>


  上一篇: Oracle 10g的AWR性能优化工具使用   下一篇: oracle表碎片的相关知识与解决方...
li
 §相关评论  
 热点文章

·Resize datafile导致ASM Crash
·在Oracle10g RAC下新增ASM磁盘
·ORACLE SQL性能优化系列 (一)
·oracle性能调优:管理oracle日志
·oracle RAC环境中系统时钟的调
·why:Rac的心跳线不支持交叉线?
·RAC的VIP及实例依赖关系:版本O
·如何启动DataGuard的备用数据库
·系统表空间IO错误 数据损坏处理
·不幸中的万幸:遭遇ORA-00600 [
·用ORACLE的高级复制实现内外网
li
 编辑推荐
·Resize datafile导致ASM Crash
·在Oracle10g RAC下新增ASM磁盘
·ORACLE SQL性能优化系列 (一)
·oracle性能调优:管理oracle日志
·oracle RAC环境中系统时钟的调
·why:Rac的心跳线不支持交叉线?
·RAC的VIP及实例依赖关系:版本O
·如何启动DataGuard的备用数据库
·系统表空间IO错误 数据损坏处理
·不幸中的万幸:遭遇ORA-00600 [
·用ORACLE的高级复制实现内外网
li
 相关篇章
·Oracle 10g的AWR性能优化工具使用
·有效创建Oracle dblink的两种方式
·Oracle中hints的调整机制研究
·Unix环境下的Oracle调优原则
·Oracle常见等待事件介绍
·ORACLE执行计划的一些基本概念
·Oracle的封锁机制研究
·Oracle锁简单经验介绍
·Oracle索引基本原理介绍
·Oracle数据库空间管理对系统性能...
·oracle表碎片的相关知识与解决方...
·如何整理Oracle数据库碎片
·全面解析Oracle数据库字符集问题
·AIX下oracle10g rac:ora-12545错...
·Oracle 10g RAC for AIX安装配置...
·ora-12514错误以及解决方案
·oracle10g RAC中VIP和实例的版本...
·oracle rman备份时出现ORA-19502...
·RMAN备份还原时出现Ora-01220错误...
·oracle rac案例:时间同步问题导致...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接