Zainstalowałem Oracle 11G na moim systemie Windows 2008 R2 Server. Zainstalowałem także biblioteki klienta Oracle przy użyciu oddzielnego nośnika instalacyjnego. Po instalacji klienta, kiedy próbuję zalogować się do bazy danych przy użyciu:
C:\>sqlplus / as sysdba
Otrzymuję następujący błąd:
ORA-01031: niewystarczające uprawnienia
Działało to przed instalacją klienta. Moje konto jest w ORA_DBA
grupie. Moje konto znajduje się również w grupie Administrator. Nie ORACLE_SID
ustawiłem na liście zmiennych środowiskowych. Czy to musi być? Działało to przed instalacją klienta, a ja również nie miałem tej zmiennej.
Kontrola konta użytkownika jest włączona na najniższym poziomie i zawsze działam cmd
jako administrator.
Mam taki sqlnet.ora
plik w folderze:
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
Z rejestru systemu Windows (przy użyciu regedit), ze ścieżki Computer > HKEY_LOCAL_MACHINE > SOFTWARE > Wow6432Node > ORACLE
mogę znaleźć dwa klucze:
KEY_OraClient11g_home1
KEY_OraDb11g_home1
I pod tymi kluczami mogę znaleźć ORACLE_HOME
zmienne. Wygląda więc na to, że instalacja klienta również została wygenerowana, ORACLE_HOME
więc mam teraz dwa ORACLE_HOME
. Nie wiem czy to ma coś wspólnego z tym problemem?
Jak rozwiązać ten błąd na moim komputerze z systemem Windows?
źródło
Mam na laptopie zarówno 10 g, jak i 11 g, a ostatnio także klienta OBIEE. Kiedyś mogłem się zalogować jako instancja sysdb do instancji 11g, ale otrzymałem następujące informacje rano:
Rozwiązałem problem, wykonując następujące czynności:
tnsping orcl
; następnieset ORACLE_SID=orcl
sqlplus sys/"passwd"@orcl as sysdba
Mam nadzieję że to pomoże.
źródło