Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle Database12c ORA 01918 और कनेक्शन त्रुटि

आपने अपने डेटाबेस को कैसे कॉन्फ़िगर किया? क्या आपने Pluggable database . के विकल्प की जांच की? ? यदि हाँ, तो कृपया सुनिश्चित करें कि आपने PDB में लॉगिन किया है और नहीं CDB

कृपया पढ़ें Oracle 12c पोस्ट इंस्टालेशन अनिवार्य कदम

डिफ़ॉल्ट रूप से, pre-installed उपयोगकर्ता पसंद करते हैं SCOTT , HR आदि container database में रहता है और Pluggable database में नहीं ।

tnsnames.ora

PDB विवरण जोड़ने के लिए अपनी tnsnames.ora फ़ाइल संपादित करें। उदाहरण के लिए,

PDBORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = pdborcl)
    )
  )

सभी पीडीबी खोलें

लॉगऑन के तुरंत बाद सभी/विशिष्ट पीडीबी खोलने के लिए, स्टार्टअप के बाद . बनाएं सीडीबी में सिस्टम स्तरीय ट्रिगर।

चूंकि, सीडीबी प्रारंभ के माध्यम से पीडीबी खुले नहीं हैं। आइए देखें:

SHUTDOWN IMMEDIATE;
STARTUP;

SQL> SELECT name, open_mode FROM v$pdbs;

NAME                           OPEN_MODE
------------------------------ ----------
PDB$SEED                       READ ONLY
PDBP6                          MOUNTED

तो, सभी पीडीबी स्वचालित रूप से खोलने के लिए, यह करें:

करें, “SQLPLUS / AS SYSDBA ”, और फिर निष्पादित करें:

CREATE OR REPLACE TRIGGER open_pdbs 
  AFTER STARTUP ON DATABASE 
BEGIN 
   EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN'; 
END open_pdbs;
/

यह सीडीबी में आफ्टर स्टार्टअप सिस्टम लेवल ट्रिगर बनाता है।

SQLPLUS / AS SYSDBA

सबसे आम गलतफहमी "SQLPLUS / AS SYSDBA" के उपयोग के बारे में है।

चूंकि हमने एकल सीडीबी . बनाने के विकल्प की जांच की है , "SQLPLUS / AS SYSDBA" कमांड हमेशा CDB में लॉग इन करेगा। आमतौर पर डेवलपर्स SYSDBA के रूप में लॉग इन करने के बाद सीधे "SCOTT" खाते को अनलॉक करते थे। लेकिन ये रही तरकीब :

“SCOTT” और अन्य नमूना स्कीमा PDB में हैं और CDB में नहीं हैं . तो, आपको PDB में sysdba के रूप में लॉगिन करना होगा।

sqlplus SYS/[email protected] AS SYSDBA

SQL> ALTER USER scott ACCOUNT UNLOCK IDENTIFIED BY tiger;

sqlplus scott/[email protected]

SQL> show user;
USER is "SCOTT"



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस लिंक के माध्यम से Oracle संग्रहीत कार्यविधि को कैसे निष्पादित करें

  2. पीएल/एसक्यूएल का उपयोग करके मैं एक ब्लॉब में फ़ाइल की सामग्री कैसे प्राप्त करूं?

  3. NLS_UPPER () Oracle में फ़ंक्शन

  4. Oracle श्रोता को बाहरी रूप से सुनने के लिए कॉन्फ़िगर करना

  5. डेटा डिक्शनरी रिपोर्ट टूल