Windows Server 2003 veya Windows XP Service Pack 2 yükledikten sonra bağlı bir sunucuda bir dağıtılmış işlem çalıştırdığınızda SQL Server 2000'de bir 7391 hata iletisi alabilirsiniz

Windows Server 2003 desteği 14 Temmuz 2015'te sona erdi

Microsoft, Windows Server 2003 desteğini 14 Temmuz 2015'te sona erdirdi. Bu değişiklik yazılım güncelleştirmelerinizi ve güvenlik seçeneklerinizi etkiledi. Bunun sizin için ne anlama geldiğini ve korunmaya nasıl devam edebileceğinizi öğrenin.

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

Makalenin İngilizcesi aşağıdaki gibidir:839279
Belirtiler
SQL Server örneğine karşı bir dağıtılmış işlem çalıştırdığınızda, aşağıdakine benzer bir hata iletisi alabilirsiniz:

Sunucu: 7391 hata, Düzey 16, State 1, 1 satır
Işlem gerçekleştirilemedi, çünkü OLE DB Sağlayıcısı 'SQLOLEDB' bir dağıtılmış işlem olarak başlatmak açamadı. [OLE/DB sağlayıcı iletisini verdi: yeni bir hareket içinde belirtilen işlem düzenleyicisine listeleme edemiyor.] OLE DB hata izleme [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction 0x8004d00a döndürdü.].


Bu sorun, aşağıdaki koşullardan biri doğru olduğunda oluşabilir:
  • Microsoft Windows Server 2003 veya Microsoft Windows XP Service Pack 2 (SP2), dağıtılmış hareket başlatan bilgisayara yüklenir.
  • Microsoft Windows Server 2003 veya Microsoft Windows XP SP2, Microsoft SQL Server 2000 çalıştıran uzak bilgisayarda yüklü olan ve bu bilgisayarda dağıtılmış hareket başlatan bilgisayara bağlanır.
Neden
Bu sorun, aşağıdakilerden birini veya birkaçını aşağıdaki nedenlerden dolayı oluşur:
  • Microsoft Dağıtılmış işlem Düzenleyicisi (MSDTC) için ağ işlemlerini devre dışı bırakılır.
  • Windows Güvenlik Duvarı etkin. Varsayılan olarak, Windows Güvenlik Duvarı, Microsoft Dağıtılmış işlem engeller Düzenleyicisi (MSDTC) program.

    Not Bu sorun ortaya çıkabilir bile Windows Güvenlik Duvarı kapalı.
Pratik Çözüm
Önemli Bu bölüm, yöntem veya görev kayıt defterini nasıl söyleyin adımları içerir. Ancak kayıt defterini hatalı olarak değiştirirseniz önemli sorunlar oluşabilir. Bu nedenle, bu adımları dikkatlice uyguladığınızdan emin olun. Ek koruma için, kayıt defterini değiştirmeden önce yedeklemeyi unutmayın. Bir sorun oluşursa kayıt defterini daha sonra geri yükleyebilirsiniz. Kayıt defterini yedekleme ve geri yükleme hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
322756Windows'da kayıt defterini yedekleme ve geri yükleme


Bu soruna geçici bir çözüm bulmak için <a0></a0>, Windows Server 2003 veya Windows XP SP2 yüklü olduğu bir bilgisayarda aşağıdaki adımları izleyin:
  1. Farklı oturum açma hesabının MSDTC hizmetinin Network Service hesabının olduğundan emin olun. Bunu yapmak için şu adımları izleyin:
    1. Başlat ' ı tıklatın ve sonra da <a2>Çalıştır</a2>'ı tıklatın.
    2. Çalıştır iletişim kutusuna Services.msc yazın ve Tamam ' ı tıklatın.
    3. Hizmetleri penceresinde sağ bölmede, ad alanında Dağıtılmış işlem düzenleyicisi hizmetini bulun.
    4. Farklı oturum aç sütunu altında Farklı oturum açma hesabı Ağ hizmeti veya Yerel sistem olup olmadığına bakın.

      Farklı oturum açma hesabı Ağ hizmeti, adım 2'ye geçin. Farklı oturum açma hesabı, Yerel sistem hesabı ise, bu adımlara devam edin.
    5. Başlat ' ı tıklatın ve sonra da <a2>Çalıştır</a2>'ı tıklatın.
    6. Çalıştır iletişim kutusuna cmd yazın ve Tamam ' ı tıklatın.
    7. Komut isteminde net stop msdtc MSDTC hizmeti durdurulamıyor yazın.
    8. Komut isteminde, MSDTC kaldırmak için MSDTC –uninstall yazın.
    9. Komut isteminde, Kayıt Defteri Düzenleyicisi'ni açmak için regedit yazın.
    10. Kayıt Defteri Düzenleyicisi'nde, aşağıdaki anahtarı bulun:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
      Kayıt defteri anahtarı.

      Bu anahtarı silin.
    11. Kayıt Defteri Düzenleyicisi'nden çıkın.
    12. Komut isteminde, MSDTC yüklemek için MSDTC –install yazın.
    13. Net start msdtc MSDTC hizmetini başlatmak için komut istemine yazın.

      Not, hesabın Farklı oturum aç MSDTC hizmetinin Network Service hesabı.
  2. MSDTC ağ hareket olanak sağlar. Bunu yapmak için şu adımları izleyin:
    1. Başlat ' ı tıklatın ve sonra da <a2>Çalıştır</a2>'ı tıklatın.
    2. Çalıştır iletişim kutusuna dcomcnfg.exe yazın ve Tamam ' ı tıklatın.
    3. Bileşen Hizmetleri penceresinde, Component Services ' ı genişletin, bilgisayarlar ' ı genişletin ve Bilgisayarım ' ı genişletin.
    4. Bilgisayarım ' ı sağ tıklatın ve sonra da Özellikler ' i tıklatın.
    5. My bilgisayar özellikleri iletişim kutusunda MSDTC sekmesinden Güvenlik Yapılandırması ' nı tıklatın.
    6. Güvenlik Yapılandırması iletişim kutusunda <a0>Ağ DTC erişimi</a0> onay kutusunu seçmek için tıklatın.
    7. Bu bilgisayarda, uzak bir bilgisayardan çalıştırmak bir dağıtılmış hareket izin vermek için İzin gelen onay kutusunu seçmek için tıklatın.
    8. Bu bilgisayardan uzak bir bilgisayarda çalıştırmak bir dağıtılmış hareket izin vermek için <a0></a0>, izin ver giden seçin onay kutusu.
    9. Işlem yöneticisi iletişimi grubunun altında No, kimlik doğrulaması gerekiyor</a1> seçeneğini tıklatın. Hayır, kimlik doğrulama gerekli hem istemci hem de uzaktaki sistemleri ayarlayın.
    10. Güvenlik Yapılandırması iletişim kutusunda, <a3>Tamam</a3>'ı tıklatın.
    11. My bilgisayar özellikleri iletişim kutusunda, <a3>Tamam</a3>'ı tıklatın.
  3. MSDTC program eklemek ve bir özel durum olarak 135 numaralı bağlantı noktası eklemek için Windows Güvenlik Duvarı'nı yapılandırın. Bunu yapmak için şu adımları izleyin:
    1. Başlat ' ı tıklatın ve sonra da <a2>Çalıştır</a2>'ı tıklatın.
    2. Çalıştır iletişim kutusuna Firewall.cpl yazın ve sonra Tamam'ı tıklatın.
    3. Denetim Masası ' ndaki Windows Güvenlik Duvarı ' nı çift tıklatın.
    4. Windows Güvenlik Duvarı iletişim kutusunda, özel durumlar sekmesinde, Program Ekle'yi tıklatın.
    5. Program Ekle iletişim kutusundaki Gözat düğmesini tıklatın ve sonra Msdtc.exe dosyasını bulun. Varsayılan olarak, dosya < Yükleme sürücü > içinde depolanır: \Windows\System32 klasör.
    6. Program Ekle iletişim kutusunda, <a3>Tamam</a3>'ı tıklatın.
    7. Windows Güvenlik Duvarı iletişim kutusunda, Programlar ve hizmetler listesinde msdtc seçeneğini tıklatın.
    8. Özel durumlar sekmesinde, Bağlantı Noktası Ekle'yi tıklatın.
    9. Bağlantı Noktası Ekle iletişim kutusunda, 135 numaralıbağlantı noktası numarası</a1> metin kutusuna yazın ve TCP seçeneğini tıklatın.
    10. Bağlantı Noktası Ekle iletişim kutusunda, özel durum için bir ad adı metin kutusuna yazın ve Tamam ' ı tıklatın.
    11. Windows Güvenlik Duvarı iletişim kutusu, Programlar ve hizmetler listesinde j adım özel durum için kullanılan adı seçin ve Tamam ' ı tıklatın.
  4. Ana sunucunun uzak sunucuya ve ana sunucunun netbios adı (etki alanı olmadan, sunucu adı) kullanarak, uzak bir sunucuya ping işlemi sınayın. Microsoft Distributed Transaction Coordinator netbios adı, tam etki alanı adı değil sunucularının konumlandırılması amacıyla kullanır. Ad çözümlemesi başarısız olursa, dağıtılmış işlemleri başarısız olur. Netbios adını kullanarak ping başarısız olursa, aşağıdaki knowledge base makalesine başvurun:
    172218Microsoft TCP/IP ana bilgisayar adı çözünürlük sırası
Durum
Microsoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır.
Daha fazla bilgi

Davranışı Yeniden Oluşturma Adımları

  1. Windows Server 2003 veya Windows XP SP2'in yüklü olduğu bir bilgisayarda oturum açın.
  2. Başlangıç Sorgu çözümleyicisi.
  3. Bağlantılı sunucu olarak Microsoft SQL Server 2000 çalıştıran bir uzak bilgisayara ekleyin. Bunu yapmak için <a0></a0>, Query'de aşağıdaki Transact-SQL deyimini çalıştırın Çözümleyicisi:
    EXEC sp_addlinkedserver  '<remote_server>',  N'SQL SERVER'GO

    Notremote_server bağlantılı sunucu yapılandırılmış bir bilgisayar adını değiştirin.
  4. Bir dağıtılmış işlem, bu bilgisayar ile uzak bilgisayar arasında çalıştırın. Bunu yapmak için <a0></a0>, Query Analyzer'da aşağıdaki Transact-SQL deyimini çalıştırın:
    SET xact_abort ON GOUSE  pubsGOBEGIN DISTRIBUTED TRANSACTIONSELECT  *  FROM <remote_server>.pubs.dbo.authorsCOMMIT TRANGO
    "Belirtiler" bölümünde açıklanan hata iletisini alabilirsiniz.
Referanslar
SQL Server 2000 ile kullanmak için Windows XP Service Pack 2'i yapılandırma hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
841249Windows XP Service Pack 2 SQL Server ile kullanılacak şekilde nasıl yapılandırılır
MSDTC RPC springboard XP SP2'yi DTC

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 839279 - Son İnceleme: 08/25/2009 04:33:32 - Düzeltme: 4.0

Microsoft SQL Server 2000 Standard Edition, Microsoft Windows XP Embedded, Microsoft Windows Server 2003 Standard Edition, Microsoft Windows Server 2003 Datacenter Edition, Microsoft Windows Server 2003 Enterprise Edition

  • kbmt kbregistry kberrmsg kbdtc kbdomain kbauthentication kbtransaction kbrpc kbprb KB839279 KbMttr
Geri bildirim