web-dev-qa-db-ja.com

Oracle DBCAユーティリティ:「リスナーが起動していないか、データベースサービスが登録されていません」

私は、SQL Serverである程度の経験を積んだソフトウェアエンジニアですが、Oracleの初心者です。

私はリモートのLinuxマシンでdbcaを実行して、メモリがゼロでアイドルになるように最初に構成されていたデータベースを再構成しようとしています(そうです)。 Enterprise Managerが正しく構成されておらず、listener.oraは次のとおりです。

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION = 
      (ADDRESS = 
        (PROTOCOL = TCP)
        (Host = Myhost)
        (PORT = 1521)
      )
    )
  )

このデータベースはポート1521ではなく、ポート15321にあります。SQLDeveloperを使用して、正しいポートとの接続を手動で作成するなどして、データベースに接続できます。

Dbcaで[完了]を押すと、タイトルにエラーが表示されます。非常に長いログファイルもあります。 dbcaを修正する方法を教えてください。最終的には、Enterprise Managerを構成する必要があります。

2
ThomasMcLeod

私の知る限り、マシンにはデータベースがあります。このデータベースは、それ自体をリスナーに登録する必要があります。リスナーがどこで(どのポートで)実行されるかがわかっている場合は、そうすることができます。この場合、リスナーはポート15321にあります。インスタンスの自動登録を有効にするには、リスナーに接続できるように、LOCAL_LISTENERパラメータに正しいポート番号が入力されていることを確認する必要があります。ドキュメントチェックの場合 Oracle®Database Reference 11g Release 1(11.1)

. oraenv
[YOUR_Oracle_SID]
sqlplus / as sysdba
-- if the instance appears not to be running:
startup
alter system set local_listener = '(ADDRESS = (PROTOCOL=TCP)(Host=Myhost)(PORT=15321))';
-- to force immediate registration:
alter system register;

これで、データベースがリスナーサービスリストに表示されます。listener.oraは次のようになります。PORT=

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION = 
      (ADDRESS = 
        (PROTOCOL = TCP)
        (Host = Myhost)
        (PORT = 15321)
      )
    )
  )

結果を確認します。

  lsnrctl services
3
ik_zelf