My Life My Dream!

守信 求实 好学 力行
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  Oracle

摘要:服务器本地连接自身没有问题,但远程客户端连接时报错,远程客户端使用tnsping也没有问题。cmd->tnsping 192.168.56.101:1521/ora11gR2tnsping命令:如果能够ping通,则说明客户端能解析listener的机器名,而且lister也已经启动,但是并不能说明... 阅读全文

posted @ 2016-01-19 17:28 召冠 阅读(1509) 评论(0) 推荐(0) 编辑

摘要:数据库长时间运行后,因断电、操作系统、物理存储等的原因可能会造成数据库内部的逻辑或物理错误,我们可以使用一般的方式尝试修复。对于sqlserver 我们可以使用DBCC命令:-- sqlserveruse dbName GO--exec sp_dboption @databasename, N'si... 阅读全文

posted @ 2016-01-19 15:14 召冠 阅读(817) 评论(0) 推荐(0) 编辑

摘要:有时会考虑一件事情,如果在Oracle环境下出现了锁阻塞的情况,如何定位到SQL源头(通过session、lock、transaction等视图仅能定位到会话)?或许有人会想有没有可能通过AWR相关的数据库性能历史视图找到有用的信息呢?答案是否定的,因为AWR仓库中的历史性能数据都是收集的有性能问题的会话、语句、活动,而最初加锁的那个update语句执行速度非常快,往往根本达不到AWR收集的阀值,不被Oracle注意到。而Oracle注意到的都是被“它”给阻塞的那些会话。 是不是没方法,找到那个始作俑者?有的,只不过比较麻烦,有一个地方是始终会忠实记录DML活动-----日志(打开Oracle的补充日志) 阅读全文

posted @ 2016-01-18 17:48 召冠 阅读(2531) 评论(0) 推荐(1) 编辑

摘要:跟踪文件由各个后台进程生成,警报日志中记录关键操作包括: ·所有启动和关闭命令,包括中间命令,如alter database mount ·实例的所有内部错误(ORA-600错误,只能报告给Oracle Support解决) ·任何检测到的数据文件块损坏情况 ·任何已... 阅读全文

posted @ 2016-01-13 17:36 召冠 阅读(2298) 评论(2) 推荐(1) 编辑

摘要:dbms_stats包问世以后,我们可通过一种新的方式来为CBO收集统计数据。目前,已经不再推荐使用老式的Analyze分析表和dbms_utility方法来生成CBO统计数据。dbms_stats能良好地估计统计数据(尤其是针对较大的分区表),并能获得更好的统计结果,最终制定出速度更快的SQL执行... 阅读全文

posted @ 2016-01-13 11:11 召冠 阅读(1500) 评论(0) 推荐(0) 编辑

摘要:问题现象:完整的SQL脚本如下:select ac.constraint_name key_name, acc.column_name key_col, 1 from all_cons_columns acc, all_constraints ac where acc.owner = ac.owne... 阅读全文

posted @ 2016-01-05 19:42 召冠 阅读(1007) 评论(0) 推荐(0) 编辑

摘要:Oracle临时表空间不足-- 用户的缺省表空间、临时表空间select t.username, t.default_tablespace, t.temporary_tablespace from dba_users t order by t.username;-- 临时表空间对应临时文件的大小及使... 阅读全文

posted @ 2016-01-04 17:42 召冠 阅读(453) 评论(0) 推荐(0) 编辑

摘要:如果遇到绑定窥探导致执行计划慢的情况,想要清除某条SQL的执行计划,让它硬解析,找了很久都没有找到直接操作share pool的方法(除非alter system flush shared_pool),只能通过对表ddl使SQL硬解析。现在终于找到了,使用sys.dbms_shared_pool.p 阅读全文

posted @ 2015-12-16 18:07 召冠 阅读(1825) 评论(1) 推荐(0) 编辑

摘要:检查并重建索引,释放数据空间 阅读全文

posted @ 2015-12-16 12:14 召冠 阅读(3633) 评论(1) 推荐(0) 编辑

摘要:用户反映修改密码后程序明显变慢,查看AWR发现: ASH信息如下: 进一步验证: SQL>select event,p1 from v$session t where t.username is not null and t.status='ACTIVE'; EVENT P1 row cache l 阅读全文

posted @ 2015-12-13 15:02 召冠 阅读(919) 评论(0) 推荐(0) 编辑

摘要:1. CPU time CPU time其实不是真正的等待事件。是衡量CPU是否瓶颈的一个重要指标。一般来讲,一个良好的系统,CPU TIME 应该排在TOP 5 TIME Event的最前面。 当然这也是相对的, 如果不存在显著的 latch wait 或过高的logical read 等, CP... 阅读全文

posted @ 2015-11-13 20:36 召冠 阅读(2217) 评论(0) 推荐(0) 编辑

摘要:事务属性:ACID(原子性、一致性、隔离性、持久性)隔离级别:主要针对的是共享锁的持有时间和范围SQL标准定义了以下四种事务隔离级别READ UNCOMMITTED 允许脏读、 不可重复读、 允许幻读READ COMMITTED 不允许脏读、 不可重复读、 允许幻读REPEATABLE READ 不... 阅读全文

posted @ 2015-11-10 13:38 召冠 阅读(853) 评论(0) 推荐(0) 编辑

摘要:近期一个项目反馈月底高峰期时系统整体性能下降,抓取对应的AWR和ASH查看,等待事件排第一位的竟然是redo日志切换。进一步看每秒的日志量是5M多,而日志文件大小仅有200M。建议项目上调整日志大小,经验证确认性能问题明显下降,现记录调整联机日志的操作。 数据初始化日志有3组,每组50M。我们建议将日志添加到6组,根据实际情况设日志大小,建议设置为1~2G,我这里设成2G; 归档... 阅读全文

posted @ 2015-11-09 10:30 召冠 阅读(1972) 评论(0) 推荐(0) 编辑

摘要:问题描述:系统不定期报出Oracle“未处理的内部错误(-2)”,严重时IIS会Crash 典型异常日志如下: Exception type: System.AccessViolationException Message: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。 InnerExce 阅读全文

posted @ 2015-10-16 09:42 召冠 阅读(788) 评论(0) 推荐(0) 编辑

摘要:问题描述: 系统中多个功能不定期出现“Unable to get error message (6107) (0).”错误,即分布式事务超时,但报出错误的部分功能根本没有使用分布式事务。原因分析: 推测是存在分布式事务未提交的情况,回到线程池后被复用造成的,例如: 系统中A功能存在分布式事务未提交的... 阅读全文

posted @ 2015-10-10 11:37 召冠 阅读(762) 评论(0) 推荐(0) 编辑

摘要:业务处理中,很多时候使用实表临时表处理中间结果,而实表的Insert操作缺省会记录redo log,针对此问题收集相关测试总结信息如下:【转】 常见dml、ddl语句使用nologging选项所生成的redo和undo大小比较DDL/DML OperationsDirect-pathnologgin... 阅读全文

posted @ 2015-10-10 10:49 召冠 阅读(1580) 评论(0) 推荐(0) 编辑

摘要:-- AWR --相关的信息保存在sysaux表空间 保存周期、设置保存和自动快照的设置 select * from dba_hist_wr_control; exec dbms_workload_repository.create_snapshot(); exec dbms_workload_re 阅读全文

posted @ 2015-09-18 10:21 召冠 阅读(677) 评论(0) 推荐(0) 编辑

摘要:Oracle某一数据表tkk715(数据量在一千万左右),对一个索引字段做获取最大值与最小值的聚合函数操作,响应时间较长(超过3秒); 将SQL改写为分别取最大、最小的聚合值,IO和响应时间显著下降到常量单位。但是,同样两组脚本在SqlServer下的执行计划是完全一样的,IO和响应时间当然也是相同... 阅读全文

posted @ 2015-07-15 14:57 召冠 阅读(1672) 评论(0) 推荐(0) 编辑

摘要:概述目前企业应用系统使用的大多数据库都是关系型数据库,关系数据库依赖的理论就是针对集合运算的关系代数。关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式。不过我们在工作中发现,很多人在面对复杂的数据库运算逻辑时会采用游标、循环、自定义函数等方式处理,因为游标是一种比较熟悉和舒适的面向... 阅读全文

posted @ 2015-07-09 08:58 召冠 阅读(16106) 评论(9) 推荐(1) 编辑

摘要:Oracle的内存配置与Oracle性能息息相关。从总体上讲,可以分为两大块:共享部分(主要是SGA)和进程独享部分(主要是PGA)。在 32 位操作系统下 的Oracle版本,不时有项目反馈关于内存的错误(如ORA-04030、04031错误)都是十分令人头疼的问题。查阅资料了解到,ORA-04... 阅读全文

posted @ 2015-06-27 16:35 召冠 阅读(2826) 评论(0) 推荐(0) 编辑