Bu kısımda, TCP/IP'nin istemci ve sunucu iş istasyonlarında çalışır durumda olduğu varsayılmıştır. Altyapınıza ilişkin protokol gereksinmeleri için bkz: Yazılım Gereksinmeleri. İstemciniz ve sunucunuz için desteklenen iletişim protokollerini öğrenmek için bkz: İstemci-Sunucu Bağlantısına İlişkin Olası Senaryolar.
DB2 istemcilerinde TCP/IP iletişimi tanımlamak için aşağıdaki adımları izleyin:
Adım 1. | Değiştirge değerlerinin tanımlanması ve kaydedilmesi |
Adım 2. | İstemcinin yapılandırılması:
|
Adım 3. | İstemciyle sunucu arasındaki bağlantının sınanması
|
![]() | TCP/IP protokolünün özellikleri nedeniyle, başka bir anasistemdeki bir
ortakta bozukluk oluştuğu TCP/IP'ye hemen bildirilemeyebilir.
Sonuç olarak, TCP/IP protokolünü (ya da sunucudaki ilgili aracıyı) kullanarak
uzak bir DB2 sunucusuna erişen bir istemci uygulaması bazen askıda gibi
görünebilir. DB2, bir bozukluk nedeniyle TCP/IP bağlantısının
kesildiğini algılamak için TCP/IP SO_KEEPALIVE yuva seçeneğini
kullanır.
TCP/IP bağlantınızda sorun çıkıyorsa, bu değiştirgenin ayarlanması ve sık görülen diğer TCP/IP sorunları konusunda bilgi edinmek için bkz: Troubleshooting Guide. |
Yapılanış adımları boyunca ilerlerken, izleyen çizelgenin
Ayarladığınız Değer kolonuna veri girin. Bu protokolü
yapılandırmaya başlamadan önce bazı değerleri girebilirsiniz.
Çizelge 9. İstemcide Gerekli Olan TCP/IP Değerleri
Değiştirge | Tanım | Örnek Değer | Ayarladığınız Değer |
---|---|---|---|
Anasistem Adı
|
Uzak sunucu iş istasyonuna ilişkin anasistemadı ya da ip_adresi değerini kullanın. Bu değiştirgeyi çözmek için:
|
serverhost ya da 9.21.15.235
| |
Hizmet adı
|
Services kütüğünde bulunması gereken değerler Bağlantı hizmeti adı, sunucudaki bağlantı kapısı numarasını (kapı_no (port_number)) gösteren ve isteğe göre seçilebilen bir addır. Kapı numarası, svcename değiştirgesinin sunucudaki Services kütüğünde gösterdiği kapı numarasıyla aynı olmalıdır. (svcename değiştirgesi, sunucudaki veritabanı yöneticisi yapılanış kütüğünde bulunur.) Bu değer başka hiçbir uygulama tarafından kullanılmamalı ve Services kütüğünde benzersiz olmalıdır. Sunucuyu yapılandırırken kullanılan değerler için veritabanı denetimcinize
başvurun.
|
sunucu1
3700/tcp
| |
Düğüm adı (düğüm_adı) |
Bağlanmayı denediğiniz düğümü tanımlayan yerel diğer ad ya da takma
ad. İstediğiniz adı seçebilirsiniz; ancak, yerel düğüm
dizininizdeki tüm düğüm adı değerleri benzersiz olmalıdır.
| db2node |
İzleyen adımlarda, istemci TCP/IP kullanarak sunucuyla iletişim kuracak şekilde yapılandırılmaktadır. Örnek değerlerin yerine, taslağınızdaki değerleri koyun.
![]() |
Ağınızda bir ad sunucusu varsa ya da sunucunun IP adresini
(ip_adresi (ip_address)) doğrudan belirtmeyi planlıyorsanız, bu adımı
atlayıp şuraya geçin: B Adımı: Services Kütüğünün Güncellenmesi.
|
İstemcinin, iletişim kurma girişiminde bulunduğu sunucunun IP adresini bilmesi gerekir. Ağınızda ad sunucusu yoksa, yereI hosts kütüğündeki sunucu IP adresini (ip_address) gösteren bir anasistem adını doğrudan belirtebilirsiniz. Altyapınıza ilişkin hosts kütüğünün yeri için bkz: Çizelge 10.
NIS (Network Information Services) kullanan bir UNIX istemcisini
desteklemeyi planlıyorsanız ve ağınızda ad sunucusu yoksa, NIS ana sunucunuzda
bulunan hosts kütüğünü güncellemelisiniz.
Çizelge 10. Yerel Hosts ve Services Kütüklerinin Yeri
Altyapı | Yer |
---|---|
OS/2 | etc ortam değişkeniyle belirlenir. Yerel hosts ya da services kütüklerinizin yerini belirlemek için set etc komutunu girin. |
Windows NT ya da Windows 2000 | winnt\system32\drivers\etc dizininde bulunur. |
Windows 9x | windows dizininde bulunur. |
UNIX | /etc dizininde bulunur. |
İstemcinin hosts kütüğünü düzenleyin ve sunucunun anasistem adı için bir giriş ekleyin. Örneğin:
9.21.15.235 serverhost # serverhost anasistem adresi
Burada:
Sunucu istemciyle aynı etki alanında değilse, serverhost.vnet.ibm.com gibi, tam olarak belirtilmiş bir etki alanı adı girmeniz gerekir (burada vnet.ibm.com etki alanı adıdır).
![]() |
TCP/IP düğümünü kapı numarası (kapı_no (port_name))
kullanarak kataloğa almayı planlıyorsanız bu adımı atlayıp şu kısma
geçin: C Adımı: TCP/IP Düğümünün Kataloğa Alınması.
|
Yerel bir metin düzenleyicisi kullanarak, TCP/IP desteği için bağlantı hizmeti adını ve kapı numarasını istemcinin services kütüğüne ekleyin. Örneğin:
sunucu1 3700/tcp # DB2 bağlantı hizmeti kapısı
Burada:
NIS (Network Information Services) kullanan bir UNIX istemcisini desteklemeyi planlıyorsanız, NIS ana sunucunuzda bulunan services kütüğünü güncellemelisiniz.
services kütüğü, yerel hosts kütüğüyle (bu kütüğü A. Sunucunun Anasistem Adresinin Çözülmesi adımında düzenlemiş olabilirsiniz) aynı dizinde bulunur.
Altyapınıza ilişkin Services kütüğünün yerini öğrenmek için bkz: Çizelge 10.
Uzak düğümü tanımlamak için istemcinin düğüm dizinine bir giriş eklemeniz gerekir. Bu giriş, istemcinin uzak sunucuya erişmek için kullanacağı, seçilen diğer adı (düğüm_adı), anasistemadı (ya da ip_adresi) değerini ve svcename (ya da kapı_no) değerini belirtir.
TCP/IP düğümünü kataloğa almak için aşağıdaki adımları izleyin:
Adım 1. | Geçerli bir DB2 kullanıcı kimliğiyle sistemde oturum açın. Ek bilgi
için bkz: Ek F, Adlandırma Kuralları.
| ||
Adım 2. | UNIX istemcisi kullanıyorsanız, başlatma komut kütüğünü aşağıdaki gibi çalıştırın: . INSTHOME/sqllib/db2profile (Bash, Bourne ya da Korn kabuk için) source INSTHOME/sqllib/db2cshrc (C kabuk için) Burada INSTHOME yönetim ortamının ana dizinidir. | ||
Adım 3. | Şu komutları girerek düğümü kataloğa alın: db2 "catalog tcpip node düğüm_adı remote [anasistemadı|ip_adresi] server [svcename|kapı_no]" db2 terminate Örneğin, serverhost adlı uzak sunucuyu db2node düğümünde sunucu1 hizmet adıyla kataloğa almak için şu komutu girin: db2 catalog tcpip node db2node remote serverhost server sunucu1 db2 terminate Uzak sunucuyu 9.21.15.235 IP adresiyle db2node düğümünde 3700 kapı numarasıyla kataloğa almak için şu komutu girin: db2 catalog tcpip node db2node remote 9.21.15.235 server 3700 db2 terminate
|
![]() | catalog node komutuyla belirlenen değerleri değiştirmeniz
gerekirse aşağıdaki adımları izleyin:
|
Bir istemci uygulamasının uzak veritabanına erişebilmesi için, veritabanının sunucu düğümünde ve ona bağlanacak tüm istemci düğümlerinde kataloğa alınmış olması gerekir. Varsayılan olarak, bir veritabanı yarattığınızda, bu veritabanı otomatik olarak, veritabanı adıyla (veritabanı_adı (database_name)) aynı olan veritabanı diğer adıyla (vt_diğer_adı (database_alias)) sunucuda kataloğa alınır. İstemcide uzak veritabanıyla bağlantı kurmak için, düğüm dizinindeki bilgilerle birlikte veritabanı dizinindeki bilgiler kullanılır.
İstemcide bir veritabanını kataloğa almak için aşağıdaki adımları izleyin:
Adım 1. | Geçerli bir DB2 kullanıcı kimliğiyle sistemde oturum açın. Ek bilgi
için bkz: Ek F, Adlandırma Kuralları.
| ||||||
Adım 2. | İzleyen taslakta Ayarladığınız Değer kolonuna veri
girin.
Çizelge 11. Taslak: Veritabanlarını Kataloğa Almak için Değiştirge Değerleri | ||||||
Adım 3. | UNIX istemcisi kullanıyorsanız, başlatma komut kütüğünü aşağıdaki gibi çalıştırın: . INSTHOME/sqllib/db2profile (Bash, Bourne ya a Korn kabuk için) source INSTHOME/sqllib/db2cshrc (C kabuk için) Burada INSTHOME yönetim ortamının ana dizinidir. | ||||||
Adım 4. | Şu komutları girerek veritabanını kataloğa alın: db2 catalog database veritabanı_adı as vt_diğer_adı at node düğüm_adı db2 terminate Örneğin, sample adlı veritabanını tor1 diğer adıyla db2node düğümünde kataloğa almak için şu komutu girin: db2 catalog database sample as tor1 at node db2node db2 terminate
|
İstemciyi iletişim için yapılandırdıktan sonra, bağlantıyı sınamak için uzak bir veritabanına bağlanmanız gerekir.
Adım 1. | Veritabanı yöneticisi sistem başlatıldığında otomatik olarak başlamadıysa, sunucuda db2start komutunu girerek veritabanı yöneticisini başlatın. |
Adım 2. | UNIX istemcisi kullanıyorsanız, başlatma komut kütüğünü aşağıdaki gibi çalıştırın: . INSTHOME/sqllib/db2profile (Bash, Bourne ya da Korn kabuk için) source INSTHOME/sqllib/db2cshrc (C kabuk için) Burada INSTHOME yönetim ortamının ana dizinidir. |
Adım 3. | İstemciyi uzak veritabanına bağlamak için, istemcide şu komutu girin: db2 connect to vt_diğer_adı user klnckimliği using parola
|
Kullanıcı kimliği ve parola değerleri, kimlik denetiminin gerçekleştirileceği sistem için geçerli değerler olmalıdır. Varsayılan olarak, DB2 sunucularının kimlik denetimi sunucuda, DB2 Connect sunucularının kimlik denetimiyse anasistem ya da AS/400 makinesinde gerçekleştirilir.
Bağlantı başarıyla gerçekleşirse, bağlandığınız veritabanının adını belirten bir ileti görüntülenir. Artık o veritabanınındaki verileri alabilirsiniz. Örneğin, sistem kataloğu çizelgesinin içerdiği tüm çizelge adlarının listesini almak için, Komut Merkezi'nde (Command Center) ya da komut satırı işlemcisinde şu SQL komutunu girin:
"select tabname from syscat.tables"
Veritabanı bağlantısını kullanmayı tamamladığınızda, bağlantıyı sona erdirmek için command reset komutunu girin.
Bağlantı başarısız olursa, aşağıdakileri doğrulayın:
Sunucuda:
![]() |
db2comm kayıt değeri ayarlarını denetlemek için db2set
DB2COMM komutunu girin. Ek bilgi için bkz: Administration Guide.
|
![]() |
db2diag.log kütüğüne ilişkin ek bilgi için bkz:
Troubleshooting Guide.
|
İstemcide:
Bu öğeleri doğrulamanızdan sonra bağlantı yine başarısız olursa bkz: Troubleshooting Guide.