在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

Oracle参数设置之set和reset怎么用

99次阅读
没有评论

共计 5097 个字符,预计需要花费 13 分钟才能阅读完成。

这篇文章主要为大家展示了“Oracle 参数设置之 set 和 reset 怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让丸趣 TV 小编带领大家一起研究并学习一下“Oracle 参数设置之 set 和 reset 怎么用”这篇文章吧。

环境:Oracle 10.2.0.5 RAC

需求:节点 1 的 aq_tm_processes 要求恢复默认,节点 2 设置要求保持不变

背景介绍:

从 10.2 官档可以查到 aq_tm_processes 参数,看到该参数的默认值是 0,我们姑且叫做它为默认 0.

然后,在实际上发现,这个默认 0 和我们手工将其 SET 设置成 0,效果是完全不一样的。

与同事交流此事,最终得知一个技术细节:

Oracle 中,使用 SET 设置参数值实际上是少做很多事情的,如果你想恢复 Oracle 的默认值,最有效的办法就是 RESET 该值,这样,才会一切都按照 Oracle 默认的设计。

具体来看现在的场景,如果你对参数 aq_tm_processes 设置为 0. 那和本来的默认 0 是完全不一样的。

如果是设置 0,所有 q00 小工进程都会关闭不会再启动。如果是默认 0,q00 小工进程是可以启动的。

1. 构建测试环境

目前生产的参数内容是类似这样,有全局设置,有实例 1 的设置,如下:

*.aq_tm_processes=1
jy1.aq_tm_processes=0

我们知道,针对实例的设置优先级是高的,也就是说这样设置的效果就是实例 1 该参数是 0,实例 2 该参数是 1.

即:实例 1 无法启动 q00 小工进程,实例 2 可以启动 q00 小工进程。

构建测试环境模拟生产:

先设置 aq_tm_processes 为 1:

alter system set aq_tm_processes = 1 scope=both sid= * 
--create pfile= /tmp/pfile11.ora  from spfile;

此时参数文件中就会有这样的设置:

*.aq_tm_processes=1

再设置实例 1 的 aq_tm_processes 为 0

alter system set aq_tm_processes = 0 scope=both sid= jy1 
--create pfile= /tmp/pfile12.ora  from spfile;

此时参数文件中就会有这样的设置:

*.aq_tm_processes=1
jy1.aq_tm_processes=0

此时就模拟了生产环境的现状。下面来看下实际的操作过程:

SQL  
SQL  alter system set aq_tm_processes = 1 scope=both sid= * 
System altered.
SQL  create pfile= /tmp/pfile11.ora  from spfile;
File created.
SQL  show parameter aq
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
SQL  !ps -ef|grep q00
oracle 1462 27385 0 15:27 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00
oracle 1464 1462 0 15:27 pts/1 00:00:00 grep q00
oracle 26534 1 0 15:08 ? 00:00:00 ora_q002_jy1
oracle 31538 1 0 15:21 ? 00:00:00 ora_q000_jy1
SQL  
SQL  alter system set aq_tm_processes = 0 scope=both sid= jy1 
System altered.
SQL  create pfile= /tmp/pfile12.ora  from spfile;
File created.
SQL  show parameter aq
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
SQL  !ps -ef|grep q00
oracle 2044 27385 0 15:28 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00
oracle 2046 2044 0 15:28 pts/1 00:00:00 grep q00
SQL

可以看到,确实设置为 0 之后 q00 进程就消失了,即使再重启实例也是一样的,q00 进程不再会启动。

2. 测试方案

现在我们要做的就是保障不更改节点 2 的设置情况下,将节点 1 的 aq_tm_processes 恢复默认。

2.1 尝试直接 reset 参数指定节点 1,然后重启验证?

alter system reset aq_tm_processes scope=spfile sid= jy1 
create pfile= /tmp/pfile13.ora  from spfile;

重启节点 1 验证?确认是否可以实现需求?

具体实际操作如下:

SQL  alter system reset aq_tm_processes scope=spfile sid= jy1 
System altered.
SQL  create pfile= /tmp/pfile13.ora  from spfile;
File created.
SQL  show parameter aq
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
SQL  !ps -ef|grep q00
oracle 3801 27385 0 15:32 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00
oracle 3803 3801 0 15:32 pts/1 00:00:00 grep q00
SQL  startup force
ORACLE instance started.
Total System Global Area 599785472 bytes
Fixed Size 2098112 bytes
Variable Size 301993024 bytes
Database Buffers 289406976 bytes
Redo Buffers 6287360 bytes
Database mounted.
Database opened.
SQL  show parameter aq
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
SQL  !ps -ef|grep q00
oracle 4228 1 0 15:33 ? 00:00:00 ora_q000_jy1
oracle 4232 1 0 15:33 ? 00:00:00 ora_q002_jy1
oracle 5021 27385 0 15:35 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00
oracle 5023 5021 0 15:35 pts/1 00:00:00 grep q00
SQL

可以看到,答案明显是:不可以。

因为这样只会将实例 1 的参数 reset,但是由于之前还有全局参数 *,所以重启实例 1 后会发现,aq_tm_processes 参数会是 1。
也就是说,针对实例 1 的设置去掉了,自然会沿袭整体的设置。

2.2 实验正确的方式

有了上面的基础,就有了实现需求的思路:

我们想下,如果把全局参数也 reset,会影响到节点 2 之前的设置,那么这样,只能将节点 2 的值单独设定,然后再 reset 全局参数。

alter system set aq_tm_processes = 1 scope=both sid= jy2 
--create pfile= /tmp/pfile14.ora  from spfile;
alter system reset aq_tm_processes scope=spfile sid= * 
--create pfile= /tmp/pfile15.ora  from spfile;
重启节点 1 验证??确认是否可以实现需求?具体实际操作如下:SQL  alter system set aq_tm_processes = 1 scope=both sid= jy2 
System altered.
SQL  create pfile= /tmp/pfile14.ora  from spfile;
File created.
SQL  alter system reset aq_tm_processes scope=spfile sid= * 
System altered.
SQL  create pfile= /tmp/pfile15.ora  from spfile;
File created.
SQL  startup force
ORACLE instance started.
Total System Global Area 599785472 bytes
Fixed Size 2098112 bytes
Variable Size 301993024 bytes
Database Buffers 289406976 bytes
Redo Buffers 6287360 bytes
Database mounted.
Database opened.
SQL  show parameter aq
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
SQL  !ps -ef|grep q00
oracle 7446 1 1 15:40 ? 00:00:00 ora_q000_jy1
oracle 7448 1 0 15:40 ? 00:00:00 ora_q001_jy1
oracle 7450 1 0 15:40 ? 00:00:00 ora_q002_jy1
oracle 7452 1 0 15:40 ? 00:00:00 ora_q003_jy1
oracle 7480 27385 0 15:41 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00
oracle 7482 7480 0 15:41 pts/1 00:00:00 grep q00
SQL

可以看到,真实操作测试验证的答案和预想的一致:可以。

注:所有创建 pfile 的步骤都可以去掉。当时是因为想确认理论是否正确才给每一步后加了这个操作。

3. 总结

那么总结归纳下,实际在客户环境下,就是应该做以下三个步骤完成需求:

-- 保障节点 2 的设置不变
alter system set aq_tm_processes=1 scope=spfile sid= jy2 
--reset 节点 1 的设置
alter system reset aq_tm_processes scope=spfile sid= jy1 
--reset 全局的设置
alter system reset aq_tm_processes scope=spfile sid= *

本文知识点总结:其实只需下面这 3 个知识点清楚就 ok 了:

reset 操作实际只是将这个值从 spfile 中移除;

针对某个实例级别的设置优先级高于整体设置;

注意 Oracle 对于 SET 参数值这种方式,实际上少做了很多事情,简单理解就是默认 0 和设置 0 不一样。

以上是“Oracle 参数设置之 set 和 reset 怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计5097字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产人澡人澡澡澡人 | 黄色动漫网站在线观看 | 国精产品一二三区精华液 | 亚洲网站在线播放 | 亚洲欧美精品中字久久99 | 国内精品第一页 | 日本一级~片免费永久 | 国产精品99久久久久久夜夜嗨 | 中文字幕久荜一区日本精品 | 天天爽夜夜爽人人爽一区二区 | 四虎在线免费观看 | 精品视频一区二区观看 | 青青久久99久久99久久999 | 中文有码无码人妻在线 | 18禁裸男晨勃露j毛网站 | 九九精品在线观看 | 色欲麻豆国产福利精品 | 99精品国产丝袜在线拍国语 | 国产免费av片在线无码免费看 | 亚洲成人免费 | 四虎影视在线影院在线观看观看 | aa毛片免费全部播放完整 | 尤物视频在线免费观看 | 伊人大杳焦在线 | 欧美又大粗又爽又黄大片视频 | 亚洲免费在线播放 | 国产精品久久久爽爽爽麻豆色哟哟 | 男女一级毛片免费视频看 | 久久亚洲精品中文字幕第一区 | 中文无码精品a∨在线 | 四虎精品成在线播放 | 狠狠热精品免费观看 | 亚洲精品天堂自在久久77 | 四虎影院地址 | 中文字幕色偷偷人妻久久 | 91亚洲精品一区二区三区 | 亚洲第一精品夜夜躁人人爽 | 日本japanese丰满多毛 | 中文字幕欧洲有码无码 | 久草欧美| 亚洲国产高清在线精品一区 |