我在服務器上部署某個第三方系統的數據庫的時候,服務器數據庫版本為oracle 12c。我采用的方式是新建了一個實例。訪問正常。
後來項目的負責人告訴我,oracle12C支持所謂的可插拔數據庫。可插拔?這是什麼鬼?我立刻在網上尋尋覓覓,找到的示意圖,真的將數據庫畫成一個個U盤的形狀。哇!真的可插拔呀!高大上!我看好你喲。
但是,所謂的可插拔,不就是一個數據庫實例下,掛著一個個數據庫麼?SQL SERVER好像早就有了,卻從不未見它吹噓什麼可插拔。Oracle不是號稱關系型數據庫裡的老大麼?
負責人說,多個實例太耗資源了,要可插拔。於是將數據庫從我建的實例中導到某個實例裡(ORACLE應該管這個實例叫容器數據庫吧。。。)
於是,原本可以正常訪問的系統故障了。
我將該系統的配置文件改來改去,終於發現是jdbc的連接串問題。
如果傳統樣式,數據庫部署在實例中,連接串應該醬紫寫:
jdbc:oracle:thin:@192.168.0.1:1521:SSO
(假設實例名為SSO)
如果是所謂可插拔數據庫,數據庫名為PDBSSO,則連接串應該醬紫:
jdbc:oracle:thin:@192.168.0.1:1521/SSO
可插拔,插插拔拔,不停地插進拔出,呵呵
另外,tomcat下,配置文件如果帶有漢字注釋,最好去掉。否則,有時會導致報錯。