Der Fehler: java.sql.SQLException: Keine weiteren Daten aus Socket zu lesen
2 wichtige Lösungsmöglichkeiten:
richtige JDBC Treiber, man kann den richtigen Treiber in Oracle Website herunterladen.
richtige SID, man kann die richtige SID in der Datei tnsnames.ora (in Ordner %Oracle%\network\admin) nachschlagen.
richtige Syntax:
conURL="jdbc:oracle:thin:@::";
DriverManager.registerDriver(neworacle.jdbc.driver.OracleDriver());
Connectionconnection=java.sql.DriverManager.getConnection(conURL,userName,password);
Referenz:
When using two JDBC connections accessing the same Oracle database, “SqlException : No more data to read from socket” thrown.
This is because your database doesn’t support connection sharing, or it’s a dedicated server that will not respond to different clients.
Solution 1:
- $ dbca
- –Configuration & Migration Tool
- —-database Configuration Assistant
- Select radio button —Configure Data base options in database
- Select your database—e.g. Oracle or pspl
- Select —– shared server mode
Solution 2 (same to 1 but manual work):
- open $ORACLE_HOME/network/admin/tnsnames.ora
- change “(SERVER = DEDICATED)” to “(SERVER = SHARED)”
- restart database and listener
Now your database is sharable, so we can use from different client.