数据库

Stored Outline

存储概要(stored outline) 是固定执行计划的一种传统技术。在Oracle 11g以前要固定执行计划只能使用outline,Oracle11g中引入了SPM来固定执行计划,创建stored outline需要有create any outline权限,为了管理还需要有对dba_outlines的查询权限。创建stored outline在会话级outlineALTER SESSION SET CREATE_STORED_...

eric0435
Oracle
2016-06-02 12:42

不要在存储过程中控制事务

MySQL技术内幕 InnoDB存储引擎 344页.原来看过这段,总而言之,就是MySQL不要在存储过程中控制事务.当时没有仔细看细节,只是记住了一个结论.毕竟都21世纪了.还有用存储过程的?但是..#(×&%¥×&@……&……#@&以如下过程为例.drop table nums;  drop procedure pCreateNum...

壹頁書
MySQL
2016-06-01 23:31

AWR生成快照间隔调整

一、描述       测试环境经常会对数据库进行压力测试,在这个测试过程中,有稳定性,也有突发性,因为我对测试方面不是很专业,所以自己理解成这个样子,要在短时间内高并发的测试时,需要调整ORACLE数据库AWR生成快照的间隔才可以生成短时间内的AWR报告,使用DBMS_WORKLOAD_REPOSITORY包...

yhdmy
Oracle
2016-06-01 18:29

dbms_outln.create_outline在10.2.0.5中创建outline所包含的执行计划并不正确

Oracle 10g中想要固定执行计划只能使用outline,sql profile不能起固定sql执行的效果,但是在Oracle 10.2.0.5中使用dbms_outln.create_outline通过使用共享池中的游标来创建outline,发现创建的outline与游标中的执行计划并不一致,而在oracle 10.2.0.4与oracle 11.2.0.4中是通过游标来创建的outline与cursor的实际执行计划...

eric0435
Oracle
2016-06-01 16:40

DataGuard搭建 (一主两备)

DG搭建(一主两备)节点网络ip地址数据库名unique name数据库实例名数据文件位置zyx.test.com...

彩伦
Oracle
2016-06-01 09:45

服务器迁移的两种方式浅谈

最近在处理服务器机房迁移的事宜,很多事情其实看起来简单,但是实现的时候总会有一些不如意的地方,很可能你考虑的是一个看起来非常稳定完美的迁移,但是实现中总会有这样那样的限制最后不得不采用一种混合式或者看起来有些别扭的方式来实现。这种方式里面有一个坑就是如果一旦看到这种迂回或者别扭的方式能够改善问题,那...

jeanron100
Oracle
2016-05-30 23:36

rman

    迁移数据库的方法有多种,较为常用的则是使用RMAN来迁移。使用RMAN迁移数据库属于数据库的物理备份与恢复范畴,整个过程中数据库的相关信息是完整地镜像。因此,基于此种方式还原恢复的数据库用于测试会使得与真实的生产环境差异相对较小。本文描述了使用RMAN来还原Oracle 10g数据库的过程。 ...

Mr_Man
Oracle
2016-05-30 11:05

使用 DBMS_SQLDIAG诊断各种查询问题

这篇文章主要介绍通过dbms_sqldiag来解决与SQL相关的各种问题。dbms_sqldiag是与标准版本数据库软件一起发布,使用它并不需要额外的许可。dbms_sqldiag可以用于以下问题类型的诊断:.problem_type_performance 怀疑是性能问题.problem_type_wrong_results 怀疑查询返回了不一致的结果.problem_type_compilation_error ...

eric0435
Oracle
2016-05-30 11:02

Oracle Column Group Statistics

基数是CBO通过行资源或行资源组合评估出来的操作将产生的行数。在有些情况下,结果集的基数可能被评估错误。最常见的是使用复杂谓词且统计信息不能精确反映出谓词相关联的数据。例如:select ename from emp where sal >= 25000 and job = 'PRESIDENT';在这个例子中,在sal与job列中的数据存在一种隐藏的关联。只有董事长...

eric0435
Oracle
2016-05-30 10:55

Automatic SQL Tuning and SQL Profiles

SQL Profiles是在Oracle 10g中就引入的,并且通过dbms_sqltune包或EM来进行管理是自动SQL调整进程的一部分。自动SQL调整查询优化器会有时会因为缺少信息而对语句的一个属性产生不精确的评估,进而导致低效的执行计划传统上来说,用户不得不通过手动增加hint到代码中来修改这个剖从而指导优化器产生正确的决定。对于...

eric0435
Oracle
2016-05-30 10:51

create index...online操作过程中会申请持有哪些锁

11g下,在给表创建索引时如果加上online选项,不会阻塞同时进行的DML操作,相当给力的一个功能。与不带online的索引创建方式相比在锁的申请与持有机制上有何区别,我们来比较一下###创建测试表sqlplus ad/Uiop246!create table t0528_1 as select * from all_users;select object_id from dba_objects where ob...

oliseh
Oracle
2016-05-30 08:41

一则报警信息所折射出来的诸多问题

在主备库环境中,如果出现数据文件级的一些不一致,后期修复会很麻烦,所以这种情况可以提前规避,减少后期的隐患,我定制了一个数据库监控选项,即数据文件状态的检查。最近几天,在半夜的时候,我总会收到这么一则报警信息,最开始没有留意,看报警信息是在备库中。[DB监控系统]_ora_stest2_s2_yangjr@10.127.xxxx_报警...

jeanron100
Oracle
2016-05-29 23:24

容灾切换中的数据库宕机问题简单分析(一)

最近对一个统计库做了计划内的容灾切换,即主备切换。操作的过程其实还是蛮顺利的。但是灾难切换中如果出现在问题,那就是灾难中的灾难了。按照计划对配置信息做了同步,然后使用DG Broker做了SwitchOver操作。这一次切换速度还是蛮快,我开了几个窗口看到日志都在不断输出,角色已经替换过来了。DG Broker切换的日志如下...

jeanron100
Oracle
2016-05-27 18:10

SQL Plan Management

任何数据库应用程序的性能都严重依赖于它的查询执行。当没有任何用户介入时Oracle优化器是完全能够评估最优执行计划的,SQL语句的执行计划因为各种原因,比如:重新收集优化器统计信息,改变优化器参数或方案/元数据定义而可能会出现改变。但是不能保证执行计划的改变总是会提高性能,因此会导致有些管理员会锁定SQL的执行...

eric0435
Oracle
2016-05-27 10:12

关于两个简单问题的分析

工作中碰到问题当然是见怪不怪了,而处理这些问题也是我们的价值所在。今天处理了几个看起来比较有意思的小问题,当然究其原因,要不是不规范,要不就是基本功不够扎实。问题1:奇怪的ORA-00600报错,常规的原因对于ORA-00600的错误,其实自己也碰到过很多次了,绝大多数的情况下,这个错误还是能够反映出来一些不规范的...

jeanron100
Oracle
2016-05-25 23:07