Home > 2010年04月17日

2010年04月17日 Archive

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  • Comments (Close): -
  • TrackBack (Close): -

Oracle削除方法メモ

  • Posted by: tam
  • 2010-04-17 Sat 21:06:35
  • Oracle
Oracle11gR2 削除手順を忘れないようメモ

1.OUIで削除。
2.再起動
3.ゴミファイル削除
 C:\app\user
 C:\Program Files\Oracle
4.レジストリ削除
 HKEY_LOCAL_MACHINE
   SOFTWARE
      ORACLE←こいつ
5.再起動
6.サービスが残ってたので削除
 コマンドラインユーティリティscで削除。

C:\Users\tam>sc delete OracleVssWriterORCL
[SC] OpenService FAILED 5:

アクセスが拒否されました。


orz
自分はvistaも使ってないので良くわからないけど、これが管理者権限の問題なんだろうか。
ググッてみたら、コマンドラインを管理者権限で実行すればいいらしい。
スタートメニューから右クリックでコマンドプロンプトを「管理者として実行」

C:\Windows\system32>sc delete OracleVssWriterORCL
[SC] DeleteService SUCCESS


おお、今度は成功。サービスからも消えたことを確認。
この調子で他のサービスも削除しよう。

・・・ひょっとして、今までemctlでアクセス拒否されたのもこれが原因じゃないだろうか?
今度再インストールしたら試してみよう。



ゴミだらけ

  • Posted by: tam
  • 2010-04-17 Sat 20:10:12
  • Oracle
バッチを実行して、再起動したものの、とくに削除された気配がなかった。
OUIで確認してみても削除対象として表示されている。はて。

仕方ないのでOUI上で、ホームにはチェックを入れず、その下のアプリを個別に削除した後ホームを削除してみた。
今度は成功したらしく、OUI上には何も表示されない。

しかしまだまだゴミだらけ。

スタートメニューには、EMのリンク、インストールしてたフォルダにはファイルの山、そしてサービスは停止状態だけどそのまま残っている。

とりあえず順次削除するしかないのかな、はぁ。


一旦リセット

  • Posted by: tam
  • 2010-04-17 Sat 19:27:07
  • Oracle
どんどん深みにはまったので、一旦Oracleを再インストールすることにした。

まずはUniveersalInstallerでデータベース削除実行。

DB削除01

ホーム下のデータベースを指定して削除実行。

すると以下の警告が

DB削除02

確認してみると、ここにバッチファイルがあったのでいざ実行。

実行すると、リスナー、データベース名を聞かれるので、随時入力。

データベース名入力後、結構待たされます。

さて結果はどうなることやら。

ついでだから、初回インストールに失敗して出来たhome_1フォルダも削除しておこう。


ログインできない

  • Posted by: tam
  • 2010-04-17 Sat 16:59:50
  • Oracle
サービスを自動起動に戻して、いざ勉強と思ったら・・sysdbaでログインできないorz

EMでログイン実行すると
ユーザー名またはパスワード(あるいはその両方)が無効です。

ためしにsqlplusでログインしたところ、こちらは成功。

はて、適当に触ってるうちに環境壊したのだろうか。

このまま原因を追いかけてもよし、一旦再インストールでリセットしても良し。

とりあえず今回は再インストールにしようかなぁ(弱気)

listener.oraの反映

  • Posted by: tam
  • 2010-04-17 Sat 15:31:45
  • Oracle
残念ながら、lsnrctlからのリロードが出来なかったため、Windowsサービスを直接再起動してから、サービスを確認してみた。

C:\Users\tam>lsnrctl services

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 17-4月 -2010 15:2
1:01

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))に接続中
サービスのサマリー...
サービス"Oracle8"には、1件のインスタンスがあります。
  インスタンス"ORCL"、状態UNKNOWNには、このサービスに対する1件のハンドラがありま
す...
    ハンドラ:
      "DEDICATED" 確立:0 拒否:18
         LOCAL SERVER
コマンドは正常に終了しました。


うーん、ちょっとスッキリしない。
そしてこの状態でデータベースコントロールを確認したが、これまたエラーは解消されていない。

次にWindowsサービス上からデータベースを起動してみる。(どんどん逃げ腰になってる)

今度は成功。
データベースコントロールにアクセスするとログイン画面が表示された。
しかし、この状態でノーマルログインは出来ず(?)
sysdbaでログインすると、シャットダウン状態だった。
おそらく構成時の権限など、さまざまな要因があるのだろうが、今の知識では手に負えないと判断。
このまま時間を割くのもあれなので、一旦試験勉強を優先することにした。

ちょっとくやしい。


あれ

  • Posted by: tam
  • 2010-04-17 Sat 15:01:59
  • Oracle
OS再起動したらまたDBにつながらなくなった。
データベースコントロールも前回同様ORA-12505エラー発生。
っていうか、listener.oraが元にもどってる!?

リスナーファイル確認01
念のため、現状ハードコピー。

次にリスナーにサービス追加。
追加後のハードコピー。
リスナーファイル確認02

念のため追加後の内容も確認。

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = Oracle8)
      (SID_NAME = ORCL)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = Charlotte)(PORT = 1521))
    )
  )

そしてデータベースコントロールで現在の状況を確認。
前回はこの段階で
ORA-12505: TNS: リスナーは接続記述子で指定されたSIDを現在認識していません
が解消されていた。

ところが今回は解消されず。 はて?
試しにリスナーコントロールでサービスを確認。

C:\Users\tam>lsnrctl services

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 17-4月 -2010 14:4
9:43

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))に接続中
リスナーはサービスをサポートしていません。
コマンドは正常に終了しました。


あれ、前回と結果が違う。
前回はサービスの再起動とか色々やってたのが関係あるんだろうか。
とりあえずlistener.oraの再読み込み実行。

C:\Users\tam>lsnrctl reload

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 17-4月 -2010 14:5
1:33

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))に接続中
TNS-01190: ユーザーに、リクエストされたリスナー・コマンドを実行する権限がありま
せん


権限がありませんorz

ググッてみたところ、パスワード設定されているらしい。
確認方法はlsnrctl statusを実行して

セキュリティ              ON: Local OS Authentication


で確認可能。
OS認証らしいので、ログイン時パスを入力すればいいのだろうか。

LSNRCTL> set password
Password:
コマンドは正常に終了しました。
LSNRCTL> reload
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))に接続中
TNS-01190: ユーザーに、リクエストされたリスナー・コマンドを実行する権限がありま
せん


だめ、もう一度ググッてみると、どうもデフォルトだとリスナーを起動したOSユーザーだけ操作できるようだ。


コネクトできない

  • Posted by: tam
  • 2010-04-17 Sat 13:24:21
  • Oracle
最近emctlのコマンドユーティリティからの起動にばかり時間を割いていたけど、もうひとつ課題があった。
それはsqlplusからのコネクトに失敗すること。

現在、PCの起動時間を早くするため、dbconsoleとデータベースサービスはデフォルトで停止させている。
問題はデータベース停止状態だと、sqlplusからデータベースの起動が出来ないこと。
せっかく教科書に手順が書いてあるんだから出来れば実際に動かしてみたい。

C:\Users\tam>sqlplus/nolog

SQL*Plus: Release 11.2.0.1.0 Production on 土 4月 17 11:38:13 2010

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

SQL> connect system/*****@orcl
ERROR:
ORA-12514: TNS:
リスナーは接続記述子でリクエストされたサービスを現在認識していません


試しにデータベースコントロールから確認することにした。
するとログイン画面の代わりに以下のメッセージが・・

SIDを現在認識していません
listener.oraファイルを確認してみたところ

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = Charlotte)(PORT = 1521))
    )
  )


接続先データベース情報がなかった。
動的サービス登録のため、そもそも先にインスタンスが立ち上がっていないのが原因っぽい。
せっかくなので静的サービス登録を試してみよう。

上記listener.oraに接続先情報を書き加えてみる。
OracleNetManager上から、リスナーに対してデータベース情報の追加を行ってみる。
初期表示で、グローバルデータベース名にOracle8と表示されてたのがちょっと気になるがそのまま保存。

保存後のlistener.oraを確認すると以下のようになっていた。

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = Oracle8)
      (SID_NAME = ORCL)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = Charlotte)(PORT = 1521))
    )
  )

早速lsnrctlで読み込み前後のサービスを確認してみよう。
・・と思い確認したところすでにorclを認識してた。
あれ、ひょっとしてNetManager上で編集すると、保存後listener.oraの再読み込みまでやってくれるんだろうか。

試しにデータベースコントロールをリフレッシュしてみたところ、通常のログイン画面が表示された。
まぁ静的サービス登録は出来たようなので良しとしよう。




Index of all entries

Home > 2010年04月17日

タグクラウド
検索フォーム
Twitter
リンク
QRコード
QR
RSSリンクの表示

Return to page top

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。