2015年4月21日火曜日

[Oracle] 11.2.0.4.0に対してDBLINKを使用してアクセスするとORA-00600が出ることがある

新サーバにOracle Database 11.2.0.4.0を導入し、運用していたところ
外部からのDBLINKアクセス時間帯にORA-00600エラーが発生。

ORA-00600: 内部エラー・コード, 引数: [12224], [], [], [], [], [], [], [], [], [], [], []

外部Oracle側でもORA-00600を含め、ORAエラーが多発していたそうです。
# 管理下にないため詳細は確認できず。。

11.2.0.4.0側にパッチを適用すれば解消されるらしいので
適用してしばらく様子見ということで。


ついでにopatchを初めて使ったので、適用手順をざっくり覚書。

1. DB接続しているアプリ、Oracle関連サービスを停止
2. sh $ORACLE_HOME/OPatch/opatch lsinventory で適用状況確認
3. sh $ORACLE_HOME/OPatch/opatch apply [パッチ展開先Path] で適用
4. Oracle関連サービス、DB接続アプリを起動

Windowsなら、手順2,3はbatファイルになるのかな。
時間があるときに試してみよう。

# 2015/5/25追記
Windows向けのパッチはまだ提供されていない模様。。

2015年4月9日木曜日

[Linux] bashでのインクリメントの記述

bashでインクリメントを行うにはどうすればいいかを調べていたところ、
二重括弧を使ったほうが速いとの記述があったので覚書。


#!/bin/bash

COUNTER=0

while [ $COUNTER -lt 100 ]
do
  echo $COUNTER
  # COUNTER=`expr $COUNTER + 1` # 汎用性が高い
  COUNTER=$(( COUNTER + 1 ))    # 速いがOS依存
done


毎回インクリメントしたいときに調べて、という感じになってるので
いい加減に覚えてしまいたい。