Oracleクライアントから別マシンのOracleに接続できるよう、例のごとく「Net Configuration Assistant」で接続を試みる。弊社マルチデータベース対応レプリケーションソフトDBMotoでOracleに接続するためです。
ところが以下のエラー発生
ORA-12541: TNS: リスナーがありません。
リスナーが見つからないだけなので、リモート接続はできている模様。しかし以前はできていたはずなのに何故できなくなったのか。思い当たるとすれば、以前はOracle11gだったのが今はOracle11gR2であることくらい。
ちょっとlistener.oraを確認
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
・・・ついでに、tnsnames.oraも確認
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
・・・なんとhostがローカルホストになってます!!これではリモートから接続できません。
localhostをマシン名やIPに変えて解決したわけですが、11gR2ではデフォルトがlocalhostに。
関連したトピックス
- [HiT ODBC/DB2]設定とDB2 UDBとSQL開発ツール(Accessなど)との連携
- SQL Server, IBM DB2 for iで使用するポート番号【リアルタイムレプリケーションツールDBMoto】
- データベース接続情報の変更手順:DBMoto(Syniti)
- [DBMoto]テーブル数が多く、レプリケーション対象のテーブル選択が煩雑なときは
- Oracle DB起動時にエラーORA-00257が出て起動しない際の対処法
- Heroku Postgres と 異種DB間でのリアルタイム・レプリケーションを検証・確認[Syniti DR]
- Oracle RAC One Node環境を構成してみました ステップ4 Oracle Grid Infrastructureの導入
- DB2/400→SQLServer リフレッシュレプリケーション手法について【リアルタイムレプリケーションDBMoto】
- Amazon Redshiftに対してOracle、AS/400、SQL Server、MySQLなどからデータをリアルタイムにレプリケーション[DBMoto]
- MySQLの匿名ユーザについて