WeChat'teki bir arkadaşım bana içeriği izlememi sordu, bu yüzden bugün bunu çözmek için zaman ayırdım.
Oracle'da TNS'nin tam tanımı: Transparence Network Substrate şeffaf ağ alt katmanı, izleme hizmeti bunun önemli bir parçasıdır, hepsi değil, TNS'yi sadece bir dinleyici olarak ele almayın.
TNS, Oracle veritabanını ve istemci bağlantısını yönetmek ve yapılandırmak için özel olarak kullanılan bir araç olan Oracle Net'in bir parçasıdır.Çoğu durumda, istemci ve veritabanı TNS ile iletişim kuracak şekilde yapılandırılmalıdır.Tabii ki, birkaç durumda, TNS gerekli değildir. Oracle veritabanına, örneğin JDBC aracılığıyla bağlanın. Oracle'a TNS aracılığıyla bağlanırsanız, istemcinin Oracle istemci programını kurması gerekir.
Oracle'da, bir sunucuya erişmek istiyorsanız, TNS kurmanız gerekir , SQL SERVER'dan farklı olarak, istemci tarafında yerel alan ağındaki tüm çevrimiçi sunucuları otomatik olarak listelemez.Sadece istemci tarafında gerekli sunucuyu seçip hesap ve şifre ile oturum açmanız yeterlidir. Oracle, ağdaki sunucuları otomatik olarak listeleyemez Yapılandırılan sunucu adlarını listelemek için TNS yapılandırma dosyasını okuması gerekir.
Yapılandırma dosyası adı genellikle şöyledir: tnsnames.ora, varsayılan yol:% ORACLE_HOME% \ network \ admin \ tnsnames.ora
Yukarıdaki şekildeki CGDB ve STDCG, karşılık gelen TNS'dir ve HOST, veritabanı sunucusunun IP'sidir.Elbette, LAN'da bilgisayar adını kullanmak da mümkündür. İstemci Net Manager aracılığıyla veritabanı sunucusuna bir bağlantı hizmeti oluştururken, aslında tnsnames.ora dosyasına bir TNS içeriği ekler.
TNS'nin yapılandırma dosyası iki bölümden oluşur: sunucu ve istemci. Sunucu tarafında listener.ora, sqlnet.ora ve tnsnames.ora bulunur.Müşteri bağlantısı OCM (Oracle Connection Manage) ve alan adı servisi ile yönetiliyorsa, sunucu tarafında cman.ora gibi dosyalar da bulunabilir; istemci tarafında tnsnames.ora, sqlnet .ora. Tüm Oracle TNS yapılandırma dosyalarının varsayılan yolu:% ORACLE_HOME% \ network \ admin
listener.ora: listener yapılandırma dosyası, başarılı bir başlangıçtan sonra sunucu tarafında bulunan bir hizmettir. Dinleyici, istemcinin bağlantı talebini dinlemek ve istemci ile sunucu arasında bir bağlantı kanalı kurmak için kullanılan bir hizmet programıdır. Varsayılan olarak Oracle, 1521 numaralı bağlantı noktasındaki istemci bağlantı isteklerini dinler.
sqlnet.ora: tns bağlantılarının konfigürasyonunu yönetmek ve kısıtlamak veya kısıtlamak için kullanılır.Bu dosyada bazı parametreleri ayarlayarak TNS bağlantılarını yönetebilirsiniz. Parametrelerin farklı işlevlerine göre sırasıyla sunucu ve istemci üzerinde yapılandırılması gerekir.
tnsnames.ora: İstemcinin bağlanacağı sunucu ve veritabanı yapılandırma bilgileri dahil olmak üzere istemciden sunucuya bağlantı hizmetini yapılandırın.
TNS, Oracle Net Configure Assitant aracılığıyla veya manuel olarak yapılandırılabilir. İlk olarak, Oracle sunucusunun kurulumu tamamlandıktan sonra, önce LISTENER'ı yapılandırmalısınız.DINLEYİCİ, Oracle iletişimi için birincil bileşendir.Sonra Oracle istemcisini istemciye kurun ve tnsnames.ora dosyasını yapılandırın.
Öncelikle dinleyici iki bölümden oluşur: Oracle tarafından izlenecek adres, bağlantı noktası ve iletişim protokolü; Oracle tarafından izlenecek veritabanı örneği.RAC dışı bir ortamda LISTENER yalnızca sunucunun adresini ve örneğini izleyebilir ve RAC ortamında LISTENER da izleyebilir Uzak sunucu. Her veritabanı için en az bir dinleyici yapılandırılmalıdır. (Not: RAC ortamı, Oracle sunucu kümesi yapılandırmasının ortamını ifade eder)
LISTENER bölümü, Oracle'ın izlemek istediği adres ve bağlantı noktası bilgilerini yapılandırır; dosya ayrıca Oracle'ın izlemesi gereken örneği yapılandıran SID_LIST_LISTENER bölümünü de içerecektir. (Not: Yukarıdaki ekran görüntüsünde SID_LIST_LISTENER bölümü yoktur. Bunun nedeni Oracle'ın 9i sürümünden beri dinamik izleme hizmeti kaydını başlatmasıdır. Veritabanı başladığında, mevcut veritabanı örneğini otomatik olarak izleme listesine kaydedecektir, bu nedenle SID_LIST_LISTENER bölümünü yapılandırmaya gerek yoktur)
HOST parametresi, Oracle sunucu ana bilgisayar adı veya karşılık gelen IP adresi olabilir. Bir çoklu IP sunucusunda, dinleyici, aşağıdaki yapılandırma gibi, birden çok adresi aynı anda izleyecek şekilde yapılandırılabilir: LISTENER = (DESCRIPTION = (ADDRESS_LIST = (ADRES = (PROTOKOL = tcp) (HOST = 192.168.0.11) (PORT = 1521)) (ADRES = (PROTOKOL = tcp) (HOST = 192.168.2.11) (PORT = 1521)) )) veya farklı IP adreslerini dinlemek için birden çok dinleyici yapılandırabilirsiniz.
Genel anlamda, TNS yapılandırması aslında tnsnames.ora dosyasının yapılandırmasıdır.Tnsnames.ora, istemci tarafı yapılandırmasına ve sunucu tarafı yapılandırmasına sahiptir. İstemci ve sunucu yapılandırması arasındaki fark, sunucu yapılandırmasının LISTENER yapılandırmasıyla ilgili olmasıdır. İşte basit bir yapılandırma örneği:
tnsnames.ora ayrıca iki bölüm içerir: ADDRESS_LIST bölümü, TNS veritabanına MÜŞTERİ ile bu adres üzerinden iletişim kurmasını söyleyen Oracle veritabanı sunucusunun dinleme adresi bilgilerini içerir; CONNECT_DATA, MÜŞTERİ'nin bağlanmak istediği veritabanını ve veritabanının bağlantı yöntemini tanımlar. (Adanmış veya paylaşılmış).
Çoklu IP ortamında, TNS birden fazla uzak IP adresini de yapılandırabilir:
NWPPDB = (AÇIKLAMA = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = 192.168.1.55) (PORT = 1521)) (ADDRESS = (PROTOCOL = TCP) (HOST = 192.168.1.56) (PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = NWPPDB) (SUNUCU = ÖZEL)))sqlnet.ora çok önemli bir konfigürasyondur, istemci tarafında mı yoksa sunucu tarafında mı konfigüre edileceğine karar vermek için parametrelerin rolüne bağlı olarak Oracle bağlantısının özelliklerini kontrol edebilir ve yönetebilir. Sqlnet.ora'nın yapılandırması globaldir, yani sqlnet.ora'nın yapılandırması tüm bağlantılarda çalışır.Belirli bir bağlantı veya hizmeti kısıtlamak veya kısıtlamak istiyorsanız, TNS'de ilgili parametreleri yapılandırabilirsiniz.
TNS, TNS ile ilgili bilgilere aşina olan başka birçok işleve sahiptir, DBA için gerekli bir beceridir, daha sonra daha fazla DBA içeriği paylaşacağız, ilgilenen arkadaşlar buna dikkat edebilir ~