Bu gerçekten Brad Rippe'in cevabına bir yorum olmalı , ama ne yazık ki, yeterli temsilci değil. Bu cevap beni yolun% 90'ına getirdi. Benim durumumda, veritabanlarının yüklenmesi ve yapılandırılması çalıştırdığım veritabanları için tnsnames.ora dosyasına girişler koydu. İlk olarak, ortam değişkenlerini ayarlayarak veritabanına bağlanabildim (Windows):
set ORACLE_SID=mydatabase
set ORACLE_HOME=C:\Oracle\product\11.2.0\dbhome_1
ve ardından kullanarak
sqlplus / as sysdba
Sonra, Brad Rippe'in cevabından komutu çalıştırmak:
select value from v$parameter where name='service_names';
isimlerin tam olarak eşleşmediğini gösterdi. Orijinal olarak Oracle'ın Veritabanı Yapılandırma Yardımcısı kullanılarak oluşturulan girişler:
MYDATABASE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = mylaptop.mydomain.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mydatabase.mydomain.com)
)
)
Sorgudaki hizmet adı mydatabase
daha doğruydu mydatabase.mydomain.com
. Tnsnames.ora dosyasını, etki alanı bölümü olmadan yalnızca temel adla düzenledim, böylece şöyle görünüyordu:
MYDATABASE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = mylaptop.mydomain.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mydatabase)
)
)
TNS Dinleyici hizmetini yeniden başlattım ( Hizmetler denetim masası yerine sık sık lsnrctl stop
ve lsnrctl start
bir yönetici komut penceresinden [veya Windows Powershell] kullanıyorum, ancak her ikisi de çalışıyor.) Bundan sonra bağlanabildim.