1. ホーム
  2. java

[解決済み] Io例外です。Oracle CloudのOracle Error ORA-12650

2022-02-08 11:17:21

質問内容

私はDBマシン(Oracle 11g)にOracle cloud PAAS linux serverを使用しており、すべてのJavaアプリケーションを実行できるLinuxアプリケーションサーバーを持っています。

クラウドDBマシンに接続できるスプリングベースのウェブアプリケーションがあると仮定します。私はToad for Oracleでスキーマにアクセスしようとしました、それは期待どおりに動作していますが、アプリケーションからデータを取得するためにDBをヒットしようとすると、次のエラーが発生します。

java.sql.SQLException: Io exception: Oracle Error ORA-12650
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:420)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:154)
    at GetConnection.main(GetConnection.java:35)

また、DBマシンのサービスアクセスをSIDからサービス名へ拡張することも試みました。それでも同じエラーが発生します。同じコードは、私たちによって設定された別のクラウドマシンでは正常に動作します。しかし、このクラウドマシンはOracleチームによって作られたもので、ほとんどのものがデフォルトで設定されています。

この問題を解決するためのご提案をお聞かせください。

解決方法は?

この問題は、Oracle DBマシンの暗号化が原因です。 暗号化サーバ の設定があります。デフォルトで有効になっているのは理解できたのですが、この設定を 無効 の行をコメントアウトすると、期待通りに動作するようになります。以下、参考までにファイル名です。

Filename : sqlnet.ora (We have to disable ENCRYPTION_SERVER settings)
File Location : ../oracle/product/11.2.0/dbhome_1/network/admin 

これが誰かの助けになることを願っています。