降低lms进程数量oracle,基于Solaris sparc的Oracle调优

一、RAC 中cluster wait time高问题

1.设置LMS进程为FX 60,不要过多调整lms进程的数量

注:在Solaris 10 Update 10之后,以及Solaris 11,才可以设置进程的优先级。可以通过看/etc/release看其版本。如Oracle Solaris 10 1/13 是表示Solaris 10 Update 11,可参考:Oracle Solaris 10 Update版本及其历史

Oracle Solaris 10 1/06 (Update 1) U1

Oracle Solaris 10 6/06 (Update 2) U2

Oracle Solaris 10 11/06 (Update 3) U3

Oracle Solaris 10 8/07 (Update 4) U4

Oracle Solaris 10 5/08 (Update 5) U5

Oracle Solaris 10 10/08 (Update 6) U6

Oracle Solaris 10 5/09 (Update 7) U7

Oracle Solaris 10 10/09 (Update 8) U8

Oracle Solaris 10 9/10 (Update 9) U9

Oracle Solaris 10 8/11 (Update 10) U10

Oracle Solaris 10 1/13 (Update 11) U11

1

2

3

4

5

6

7

8

9

10

11

OracleSolaris101/06(Update1)U1

OracleSolaris106/06(Update2)U2

OracleSolaris1011/06(Update3)U3

OracleSolaris108/07(Update4)U4

OracleSolaris105/08(Update5)U5

OracleSolaris1010/08(Update6)U6

OracleSolaris105/09(Update7)U7

OracleSolaris1010/09(Update8)U8

OracleSolaris109/10(Update9)U9

OracleSolaris108/11(Update10)U10

OracleSolaris101/13(Update11)U11

2. UDP的参数:

In /etc/system

set ip:ip_squeue_bind = 0

1

2

In/etc/system

setip:ip_squeue_bind=0

二、在大型系统中,startup启动慢,加载sga慢。

1.为了加速sga内存加载,可以加大并发加载内存的模式:(注:默认为最大16个并发,下面的改成了32个并发),修改/etc/system中的参数:

set vmtask_ntasks_max = 0x20

1

setvmtask_ntasks_max=0x20

2.或者直接在线修改:

echo “vmtask_ntasks_max /W 0x20” | /bin/mdb -kw

1

echo“vmtask_ntasks_max/W0x20”|/bin/mdb-kw

在测试环境中,在T3-4的机器上,加载450G的SGA,如果默认16个并发,需要60秒,如果用64个并发,只需要20秒左右。

三、log file sync问题

log file sync等待较多,但是log file parallel write等待时间不多。

可以用prstat -p -v 检查lgwr的cpu使用情况,如%sys的比例,如LAT的latency。

1. 降低每个信号量的process数:

# projadd -U oracle -K "process.max-sem-nsems=(priv,64,deny)" user.oracle

# projmod –a -K "process.max-sem-nsems=(priv,64,deny)" user.oracle

# prctl -n process.max-sem-nsems -r -v 64 -i process

1

2

3

# projadd -U oracle -K "process.max-sem-nsems=(priv,64,deny)" user.oracle

# projmod –a -K "process.max-sem-nsems=(priv,64,deny)" user.oracle

# prctl -n process.max-sem-nsems -r -v 64 -i process

2.提高lgwr的进程优先级到FX 60

# priocntl –c FX -m 60 -p 60 -s `/usr/bin/pgrep -f ora_lgwr`

1

# priocntl –c FX -m 60 -p 60 -s `/usr/bin/pgrep -f ora_lgwr`

3. 给lgwr以独占的方式使用cpu

# #Create Processor Set

# psrset –c 56-63

# #Turn off all but one CPU in the processor set

# psradm –f 57-63

# #Bind the lgwr to the processor set

# psrset –b 1 `pgrep –f ora_lgwr`

# #Mark the CPU as non-interruptible

# psrset –f 56

1

2

3

4

5

6

7

8

# #Create Processor Set

# psrset –c 56-63

# #Turn off all but one CPU in the processor set

# psradm –f 57-63

# #Bind the lgwr to the processor set

# psrset –b 1 `pgrep –f ora_lgwr`

# #Mark the CPU as non-interruptible

# psrset –f  56

四、db file sequential/parallel read等待过高的问题。

1. 还是如上面的方式,使用processor sets来独占CPU。

2.确认IO已经均匀分布在每个可用的controllers/channels/ports上

3.在SAN环境中,考虑使用多路径MPXIO

4.使用Database Smart Flash Cache:

- db_flash_cache_file =

- db_flash_cache_size =

1

2

-db_flash_cache_file=

-db_flash_cache_size=

参考:CON1741_Mcintosh-Top 10 Database Performance Tips for SPARC Systems Running Oracle Solaris.pptx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值