1. 程式人生 > >Oracle 11g 客戶端連線 12g 服務端,程式啟動報 ORA-28040 的解決

Oracle 11g 客戶端連線 12g 服務端,程式啟動報 ORA-28040 的解決

客戶端:11.1.0
服務端:12.1.0
Java 程式啟動時報錯:

org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ORA-28040: No matching authentication protocol) at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225) at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) at com.defonds.als.dao.ALSDAOBase.initConnection(ALSDAOBase.java:141) at com.defonds.als.dao.DBQuery.initQuery(DBQuery.java:599) at com.defonds.als.dao.DBQuery.initQuery(DBQuery.java:537) at com.defonds.als.dao.DBQuery.executeQueryWithModelData(DBQuery.java:342) at com.defonds.als.dao.DBQuery.executeQueryWithModelData(DBQuery.java:316) at com.defonds.framework.controller.ejb.util.EventMappingLoader.loadEventMappings(EventMappingLoader.java:76) at com.defonds.framework.controller.ejb.util.EventMappingLoader.getEventMapping(EventMappingLoader.java:102) at com.defonds.framework.controller.SameJVMController.execute(SameJVMController.java:85) at com.defonds.als.gui.model.SameJVMModelLoader.doBusinessEvent(SameJVMModelLoader.java:33) at com.defonds.als.gui.model.ModelLoader.doBusiness(ModelLoader.java:193) at com.defonds.als.gui.model.ModelLoader.doBusiness(ModelLoader.java:96) at com.defonds.als.Startup.initCustomerInfor(Startup.java:223) at com.defonds.als.Startup.(Startup.java:101) at com.defonds.als.Startup.main(Startup.java:284)orange
解決辦法: 1、D:\app\admin\product\11.1.0\client_1\network\admin\sqlnet.ora 新增以下行:
SQLNET.ALLOWED_LOGON_VERSION=8
2、將編譯依賴的 ojdbc 版本由 ojdbc14 改為 ojdbc7。

ojdbc依賴.png
兩者缺一不可。