Ho installato Oracle 11G sul mio server Windows 2008 R2. Ho anche installato Oracle Client Libraries utilizzando supporti di installazione separati. Dopo l'installazione del client, quando provo ad accedere al database usando:
C:\>sqlplus / as sysdba
Ottengo un errore seguente:
ORA-01031: privilegi insufficienti
Questo ha funzionato prima dell'installazione del client. Il mio account è nel ORA_DBAgruppo. Il mio account è anche nel gruppo Amministratore. Non ho ORACLE_SIDimpostato nell'elenco delle variabili di ambiente. Deve essere? Questo ha funzionato prima dell'installazione del client e non avevo nemmeno quella variabile in quel momento.
Controllo dell'account utente è attivo al livello più basso e corro sempre cmdcome amministratore.
Ho un sqlnet.orafile come questo nella cartella:
C:\app\myaccount\product\11.2.0\dbhome_1\NETWORK\ADMIN
sqlnet.ora
# sqlnet.ora Network Configuration File: C:\app\myaccount\product\11.2.0\dbhome_1\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
tnsnames.ora
# tnsnames.ora Network Configuration File: C:\app\myaccount\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.mydb.com)
)
)
listener.ora
# listener.ora Network Configuration File: C:\app\myaccount\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\myaccount\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\myaccount\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
ADR_BASE_LISTENER = C:\app\myaccount
Dal registro di Windows (usando regedit), dal percorso Computer > HKEY_LOCAL_MACHINE > SOFTWARE > Wow6432Node > ORACLEposso trovare due chiavi:
KEY_OraClient11g_home1
KEY_OraDb11g_home1
E sotto quelle chiavi posso trovare ORACLE_HOMEvariabili. Quindi sembra che l'installazione del client sia stata generata anche in ORACLE_HOMEmodo che ora abbia due ORACLE_HOMEsecondi. Non so se questo ha qualcosa a che fare con questo problema?
Come risolvere questo errore sul mio computer Windows?