はじめに
今まで発生したエラーはここで整理
発生エラー
Oracle接続失敗[ORA-12518/ORA-00020]
対応時のポイント
-- 表示幅調整
SQL> show LINESIZE
SQL> SET PAGESIZE 2000
SET LINESIZE 200
SET LONGCHUNKSIZE 200
SET LONG 10000
-- 現在使用中のプロセス数と最大数を確認
SQL> COL RESOURCE_NAME FOR A20
COL INITIAL_ALLOCATION FOR A18
COL LIMIT_VALUE FOR A11
SQL> select * from v$resource_limit
where resource_name in ('processes','sessions');
-- 接続別セッション数確認
SQL> SELECT SERVER, COUNT(*) FROM V$SESSION GROUP BY SERVER;
-- 接続元情報取得
SQL> COL PROGRAM FOR A35
COL USERNAME FOR A10
COL OSUSER FOR A10
COL MACHINE FOR A15
COL PROCESS FOR A7
COL EVENT FOR A90
COL SPID FOR A5
SQL> SELECT
S.PROGRAM,
S.USERNAME,
S.OSUSER,
S.MACHINE,
S.PROCESS,
P.SPID,
S.EVENT
FROM
V$PROCESS P
JOIN V$SESSION S
ON P.ADDR = S.PADDR
ORDER BY
S.PROGRAM,
S.MACHINE,
S.PROCESS;
WHERE
S.MACHINE <> '1395a06f5a6a'
参考サイト
◆「ORA-00020: 最大プロセス数(150)を超えました」が発生した場合の調査方法
https://www.yamacho-blog.com/2018/02/ora-00020.html
◆Oracleに負荷をかけているプログラムを探す
https://www.yamacoco.com/program/oracle-load-check/
◆[Oracle] 終了したはずのユーザー・プロセスがOS上に残り続ける...
https://ameblo.jp/archive-redo-blog/entry-10150676111.html
◆4.9.5.3 Windows アプリケーションが閉じない
https://docs.oracle.com/cd/E41492_01/E41727/html/troubleshoot-apps.html#app-session-not-exit-win-apps
◆Oracle 共有サーバ接続関連
https://qiita.com/sowd/items/a7e1a83c746d5f3b0c66
※役立つコマンドたくさん...
◆データベース管理者ガイド - 5 プロセスの管理
https://docs.oracle.com/cd/E82638_01/admin/managing-processes.html#GUID-9B3A136E-D275-417B-B6F4-59A45D42655F
◆4.9.5.3 Windows アプリケーションが閉じない
https://docs.oracle.com/cd/E41492_01/E41727/html/troubleshoot-apps.html#app-session-not-exit-win-apps
◆Oracle JDBC Drivers README
https://docs.oracle.com/cd/E57425_01/121/READM/jdbc_readme.htm
◆8.116 V$PROCESS
https://docs.oracle.com/cd/E57425_01/121/REFRN/GUID-BBE32620-1043-4345-9448-51DB21547FEB.htm
◆9.16 V$SESSION
https://docs.oracle.com/cd/E57425_01/121/REFRN/GUID-28E2DC75-E157-4C0A-94AB-117C205789B9.htm
Oracleに接続できない[ORA-01034/ORA-12514]
対応時のポイント
-- リスナー状態確認
> lsnrctl status
-- リスナー起動
> lsnrctl start
-- Oracleインスタンス起動
> sqlplus /nolog
SQL> conn / as sysdba
SQL> startup
参考サイト
◆Oracleに接続する際の忘備録
https://qiita.com/Fernand/items/7bad8c68ceb561a03586
Oracleの認証失敗!?[ORA-12638]
参考サイト
◆データベース(オラクル)に接続できない時の確認項目
http://infra29.hatenablog.com/entry/2017/04/01/235404
※意外とこのサイトにある下記なんじゃないかと
あと以前ハマったのは、「ORA-12638: 資格証明の取出しに失敗しました 」のエラー。クライアント側とサーバ側のドメインが違ったので、認証で失敗していたらしい。
認証系の設定ファイルとして、クライアントに「sqlnet.ora」があるのだが、osでも認証しているのでドメイン違いにより認証が失敗していたらしい。
なので、内容の「SQLNET.AUTHENTICATION_SERVICES=(NTS)」を「=(NONE)」にするか、コメントアウトする。
これでOS側の認証機能は使わないけれども、oracle側が結局IDとPASSの認証はやっているので問題ない。
Oracleパスワード関連エラー[ORA-01017/ORA-28001]
以前まとめた下記参照
◆【Solved】Oracleパスワード関連でORA-01017エラー発生
https://qiita.com/wakasama_pcmaster/items/62851bb18aa09ea4cfd7
調査用参考サイト
◆Oracle Databaseで接続障害が発生した際の調査手法
https://www.ashisuto.co.jp/tech-note/article/20150626_oracle.html
※ここが一番切り分けしやすいか!?
◆必ずつながる! 接続時トラブル虎の巻 (1/5)
https://www.atmarkit.co.jp/ait/articles/0906/15/news095.html
※ここもよいが。。。
◆Oracle DB Tips | 技術情報 | 株式会社コーソル
https://cosol.jp/knowledge/knowledge_category/oracle-db-tips/
※すごい詳しく書いてある
◆10 Windowsでの外部ユーザーおよびロールの管理
https://docs.oracle.com/cd/E16338_01/win.112/b58885/external.htm
※Oracleのサイトは一応見ておかないと
◆10 Windows環境におけるデータベース・ユーザーの認証
https://docs.oracle.com/cd/E57425_01/121/NTQRF/authen.htm