[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
以前Oracle11.1と11.2間でUpGrade/DownGrade検証をしたサーバにて。
別の検証のため、久々にアクセスを試みると・・・
$ sqlplus /nolog
SQL*Plus: Release 11.1.0.6.0 - Production on Fri May 12 14:21:51 2010
Copyright (c) 1982, 2007, Oracle. All rights reserved.
SQL> conn /as sysdba
Connected to an idle instance.
■マウントしていたと思ったがidle状態だったのでDBを起動する。
SQL> startup
ORACLE instance started.
Total System Global Area 626327552 bytes
Fixed Size 2146992 bytes
Variable Size 360713552 bytes
Database Buffers 255852544 bytes
Redo Buffers 7614464 bytes
ORA-00205: error in identifying control file, check alert log for more info
■なぜかORAエラー発生。暫く放置してたから機嫌を損ねたか?・・・
アラートログをチェックしてみると
ORA-00202: control file: '/data/M92/data02/M92_ctl1.dbf'
ORA-27086: unable to lock file - already in use
Linux-x86_64 Error: 11: Resource temporarily
unavailable
Additional information: 8
Additional information: 30105
■どうやら制御ファイルを別プロセスが使用しているためにロックを獲得できないらしい。
Oracleのプロセスを確認してみると・・・
SQL> !ps -ef | grep smon
oracle 6573 1 0 14:22 ? 00:00:00 ora_smon_M92
oracle 6617 5876 0 14:22 pts/3 00:00:00 /bin/bash -c ps -ef | grep smon
oracle 6619 6617 0 14:22 pts/3 00:00:00 grep smon
oracle 30107 1 0 Jan14 ? 00:06:43 ora_smon_M92
■シングル・インスタンスなのにプロセスが2つ。2重起動されている模様。
これは先ほどのstartupが怪しいぞ。まずはシャットダウンを実行し、プロセスが1つに
なることを確認してみる。
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> exit
$ ps -ef | grep smon
oracle 30107 1 0 Jan14 ? 00:06:43 ora_smon_M92
oracle 31105 7299 0 13:05 pts/0 00:00:00 grep smon
■プロセスが1つになった。起動していたのにstartupしたから
2重起動になってしまった模様。制御ファイルを使用しているのは
Jan14から動き続けている(!?)Oracleプロセスで間違いないようだ。
はっ
ここで気づいた。
最初にアクセスを試みたのはoracleというユーザ。環境変数を確認すると、
【ユーザ:oracleの環境変数】
ORACLE_SID=M92
ORACLE_BASE=/p1/oracle1
PATH=/usr/local/bin:/bin:/usr/bin:/home/oracle/bin:/p1/oracle1/product/11.1.0/dbhome/bin
■パスがOracle11.1用のプロダクトに向いている。
最後に検証したのはUpgrade検証だったのでOracleは11.2で起動しているはず。
そこで環境変数を下記のようにOracle11.2用プロダクトのパスに修正して再度アクセスを試みる。
ORACLE_SID=M92
ORACLE_BASE=/p1/oracle2
PATH=/usr/local/bin:/bin:/usr/bin:/home/oracle/bin:/p1/oracle2/product/11.2.0/dbhome/bin
$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Fri May 12 14:38:32 2010
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> conn /as sysdba
Connected.
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
ACCESS$ TABLE
ALERT_QT TABLE
ALL_ALL_TABLES VIEW
ALL_APPLY VIEW
ALL_APPLY_CHANGE_HANDLERS VIEW
■無事アクセス出来た。「これはヤヴァイトラブルに巻き込まれた」などと
嫌な汗を流しながら作業をしていたが、何のことはないうっかりミスだった。
ちなみにクライアント経由からだとtns経由になるため、こんなことは起こらない。
無駄な時間を・・・などとは思わない。寧ろ(自分で作った)問題が解決した
爽快感に包まれている。B型で良かった。
03 | 2025/04 | 05 |
Su | Mo | Tu | We | Th | Fr | Sa |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |