วิธีการสร้างใหม่ หรือย้ายการติดตั้ง MSDTC จะใช้กับคลัสเตอร์ล้มเหลว SQL

สรุป

บทความนี้อธิบายถึงวิธีการติดตั้ง Microsoft แจกจ่ายธุรกรรมผู้ประสานงาน (MSDTC) แบบใช้งานไม่ได้สำหรับการใช้งาน ด้วยการติดตั้ง SQL Server คลัสเตอร์ล้มเหลวในการสร้างใหม่ และวิธีการย้าย MSDTC คลัสเตอร์ทรัพยากรไปยังกลุ่มใหม่

Microsoft สนับสนุนเฉพาะการเรียกใช้ MSDTC บนโหนดคลัสเตอร์เป็นทรัพยากรคลัสเตอร์ เราไม่แนะนำ หรือสนับสนุนการเรียกใช้ MSDTC ในโหมดสแตนด์อโลนบนคลัสเตอร์ ใช้ MSDTC เป็นทรัพยากรคลัสเตอร์ที่ไม่ใช่บนคลัสเตอร์ Windows มีปัญหา การกำหนดค่านี้เป็นตัวที่มีปัญหาได้เนื่องจากธุรกรรมที่ไม่สามารถถูกใช้งาน และคุณอาจพบความเสียหายของข้อมูลได้หากเกิดการล้มเหลวของคลัสเตอร์

หมายเหตุ ควรดำเนินการตามขั้นตอนเหล่านี้บนคอมพิวเตอร์ที่กำลังใช้ ไม่ผ่านการเชื่อมต่อระยะไกลชนิดใดก็ได้โดยตรง

หมายเหตุ ข้อมูลในบทความนี้ไม่ใช้กับ Microsoft Windows Server 2003 สำหรับระบบที่ใช้ Microsoft Windows Server 2003 ดูบทความในฐานความรู้ของ Microsoft ต่อไปนี้:
301600วิธีการกำหนดค่า Microsoft แจกจ่ายธุรกรรมพิกัดบนคลัสเตอร์ Windows Server 2003

ข้อมูลเพิ่มเติม

สร้างใหม่ MSDTC บนเซิร์ฟเวอร์คลัสเตอร์ล้มเหลวเซิร์ฟเวอร์ SQL

สิ่งสำคัญ ส่วน วิธีการ หรืองานนี้ประกอบด้วยขั้นตอนที่บอกให้คุณทราบวิธีการปรับเปลี่ยนรีจิสทรี อย่างไรก็ตาม ปัญหาร้ายแรงอาจเกิดขึ้นหากคุณปรับเปลี่ยนรีจิสทรีอย่างไม่ถูกต้อง ดังนั้นจึงให้ตรวจสอบจนแน่ใจว่าคุณทำตามขั้นตอนเหล่านี้อย่างระมัดระวัง สำหรับการปกป้องเพิ่มเติม ให้สำรองรีจิสทรีก่อนที่คุณทำการปรับเปลี่ยน จากนั้นคุณจะสามารถคืนค่ารีจิสทรีได้หากเกิดปัญหาขึ้น สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสำรองข้อมูลและคืนค่ารีจิสทรี ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
322756วิธีการสำรอง และคืนค่ารีจิสทรีใน Windows
  1. สลับการบริการทั้งหมดไปยังโหมดด้วยตนเอง อย่างไรก็ตาม ไม่สัมผัสบริการต่อไปนี้ (ถ้ามี):
    • Alerter
    • บริการคลัสเตอร์
    • คอมพิวเตอร์เบราว์เซอร์
    • ระบบแฟ้มที่กระจาย
    • ไคลเอ็นต์การติดตามการเชื่อมโยงแบบกระจาย
    • เซิร์ฟเวอร์การติดตามการเชื่อมโยงแบบกระจาย
    • ไคลเอ็นต์ DNS
    • แฟ้มบันทึกเหตุการณ์
    • ตัวแทนของนโยบาย IPSEC
    • บริการบันทึกสิทธิ์การใช้งาน
    • ตัวจัดการดิสก์แบบลอจิคัล
    • Messenger
    • เข้าสู่ระบบสุทธิ
    • ผู้ให้บริการสนับสนุนการรักษาความปลอดภัย NTLM
    • ตัวเชื่อมต่อเครือข่าย
    • แบบพลักแอนด์เพลย์
    • ควบคุมกระบวนการ
    • ตัวระบุตำแหน่ง (RPC) การเรียกขั้นตอนระยะไกล
    • บริการ (RPC) การเรียกขั้นตอนระยะไกล
    • บริการรีจิสทรีระยะไกล
    • เก็บข้อมูลแบบถอดได้
    • ตัวจัดการบัญชีความปลอดภัย
    • เซิร์ฟเวอร์
    • ตัวจัดคิว
    • ตัวช่วย NetBIOS TCP/IP
    • เวลาการบริการ
    • ส่วนขยายของโปรแกรมควบคุม Instrumentation จัดการของ Windows
    • เซอร์วิส Windows Time
    • เวิร์กสเตชัน
    หมายเหตุ ติดตั้งบางอย่างอาจไม่มีบริการเหล่านี้ทั้งหมด เนื่องจากรายการนี้ครอบคลุมทั้ง Microsoft Windows NT 4.0 องค์กร Edition และ Microsoft Windows 2000 Server ขั้นสูง
  2. ปิด'แผงควบคุม' และเริ่มการทำงานของเซิร์ฟเวอร์ นี้ล้างหน่วยความจำของ Dll ที่โหลด โดยบริการ มิฉะนั้น บริการเหล่านี้ยังคงอยู่ในหน่วยความจำ และเก็บล็อกบนทรัพยากรของระบบ
  3. ถ้าคุณกำลังใช้ Windows NT 4.0 รันmsdtc-เอาบนโหนดทั้งหมด ถ้าคุณกำลังใช้ Windows 2000 รันmsdtc-ถอนการติดตั้งบนโหนดทั้งหมด
  4. ในรีจิสทรี เอาคีย์ต่อไปนี้หากมีอยู่:

    HKEY_CLASSES_ROOT\CID
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet0\Services\MSDTC
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet1\Services\MSDTC
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet2\Services\MSDTC
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet3\Services\MSDTC

    หมายเหตุ จำนวน ControlSets จะแตกต่างกัน โดยระบบ
  5. เอาZ: \MSDTCLog ไดเรกทอรี ที่Zเป็นดิสก์คลัสเตอร์ที่ไดเรกทอรีนี้ในขณะนี้ตั้งอยู่

    คำเตือน ถ้าคุณมีแฟ้มบันทึกที่ใช้งานอยู่และ noncommitted ธุรกรรมซึ่งคุณจำเป็นต้องเก็บรักษา ไม่ทำเช่นนี้ ต่อไป ติดต่อเจ้าหน้าที่ฝ่ายสนับสนุนของคุณ SQL Server สำหรับคำแนะนำเพิ่มเติม
  6. ลบแฟ้มต่อไปนี้บนทั้งสองโหนดของคลัสเตอร์ถ้าคุณกำลังใช้ Windows NT 4.0 คุณสามารถข้ามขั้นตอนนี้สำหรับการติดตั้ง Windows 2000
    • Adme.dll
    • Dac.exe
    • Dacdll.dll
    • Dtccfg.cpl
    • Dtccm.dll
    • Dtctrace.dll
    • Dtctrace.exe
    • Dtcxatm.dll
    • Dtcuic.dll
    • Dtcuis.dll
    • Dtcutil.dll
    • Enudtc.dll
    • Logmgr.dll
    • Msdtc.exe
    • Msdtc.dll
    • Msdtcprx.dll
    • Mtxclu.dll
    • Msdtctm.dll
    • Svcsrvl.dll
    • Xolehlp.dll
    หมายเหตุ ลักษณะการทำงานค่าเริ่มต้นคือ ว่า MSDTC จะติดตั้งให้กับกลุ่มแรกที่ประกอบด้วยทรัพยากรที่อยู่ IP ที่ถูกต้อง ทรัพยากรชื่อเครือข่าย และทรัพยากรบนดิสก์ทางกายภาพ ถ้า SQL Server 7.0 แล้วคลัสเตอร์ และ กลุ่มแรกให้ตรงกับเกณฑ์นี้ MSDTC จะใช้ทรัพยากรแรกที่พบในกลุ่มนั้น ซึ่งอาจเป็นทรัพยากรของเซิร์ฟเวอร์ SQL หรือทรัพยากร MSDTC

    คุณสามารถค้นหาการตั้งค่า MSDTC บนซีดีของ SQL Server Service Pack 2 ในโฟลเดอร์ \x86\Other ที่แสดงเป็น Dtcsetup.exe ซึ่งควรจะเป็นแหล่งข้อมูลของคุณบนระบบ Windows NT 4.0 ระบบ Windows 2000 ควรใช้แฟ้ม Dtcsetup.exe จากโฟลเดอร์ %systemroot%\System32 โดยทั่วไปแล้วนี่จะเป็นโฟลเดอร์ Winnt\System32 ของคุณ

    คำเตือน ก่อนที่คุณเรียกใช้ Dtcsetup.exe ตรวจสอบว่า โหน 1 มีตัวควบคุมของกลุ่มทรัพยากรทั้งหมดในคลัสเตอร์'
  7. เรียกใช้ Dtcsetup.exe บนโหนดแรก ซึ่งคัดลอกแฟ้มเหล่านี้ไปยังโฟลเดอร์ %windir%/System32

    คำเตือน เมื่อโปรแกรม Dtcsetup.exe เสร็จสมบูรณ์ อ่านหน้าจออย่างระมัดระวัง คลิกตกลงจนกระทั่งคุณอ่านข้อความนั้นอย่างรอบคอบ Dtcsetup.exe อาจจำเป็นต้องดำเนินการขั้นตอนเดียวกันนี้บนโหนอื่น ๆ ก่อนที่คุณคลิกตกลงกัน

    หมายเหตุ สำหรับ Microsoft Windows 2000 เรียกใช้ Dtcsetup.exe บนโหนดของคลัสก็ต่อเมื่อคุณได้รับพร้อมท์ให้เรียกใช้หลังจากที่คุณเรียกใช้ Dtcsetup.exe บนโหนดแรก
  8. เมื่อได้รับพร้อมท์ให้เรียกใช้ Dtcsetup.exe บนโหนดไลบราสอง ทำเช่นนั้น ถ้า Dtcsetup.exe เสร็จสิ้น โดยไม่มีข้อความใด ๆ บนโหนดแรก ดำเนินต่อเพื่อเรียกใช้บนโหนดที่สอง

    หมายเหตุ คุณอาจต้องการตรวจสอบตัวแสดงเหตุการณ์เพื่อให้แน่ใจว่า Dtcsetup.exe สำเร็จในแต่ละโหนด

    คำเตือน ย้ายทรัพยากรคลัสเตอร์ใด ๆ ถ้าคุณย้ายทรัพยากรใด ๆ หรือประสบการณ์ใช้งานล้มเหลวในระหว่างกระบวนการนี้ คุณต้องเริ่มต้นใหม่
  9. หลังจากที่คุณคลิกปุ่มตกลงในการติดตั้งของโหนดที่สอง แล้วคลิกตกลงบนโหนดแรก และคุณรีสตาร์ทเครื่องคอมพิวเตอร์ใด ๆ ตามที่ต้องการติดตั้ง
  10. ผู้ใช้ Windows 2000 เท่านั้น: จากโหนดแรกที่คุณเรียกใช้ Dtcsetup.exe เปิดพร้อมท์คำสั่ง พิมพ์comclust.exeและจากนั้น คลิกEnter หลังจากขั้นตอนนี้เสร็จสมบูรณ์บนโหนดแรก ทำซ้ำขั้นตอนนี้บนโหนอื่น ๆ
  11. ตรวจสอบว่า โฟลเดอร์ DTCLOG ถูกสร้างขึ้นบนดิสก์คลัสเตอร์ โดยค่าเริ่มต้น บริการ MSDTC เริ่มต้น ด้วยบัญชีระบบภายในเครื่อง บัญชี local system นี้ควรมีสิทธิ์แบบเต็มไปยังโฟลเดอร์ DTCLOG

ขั้นตอนการตั้งค่า MSDTC กลับไปยังการติดตั้งแบบปกติบนเซิร์ฟเวอร์เสมือนของ SQL Server 6.5 และ SQL Server 7.0

ปัญหา

เมื่อต้องการติดตั้ง MSDTC ไม่ มี unclustering SQL Server ถูกเรียกใช้ Dtcsetup.exe มีใช้อยู่ IP หรือชื่อเครือข่าย ในระหว่างกระบวนการนี้ ผู้ใช้มีการขึ้นต่อกันสำหรับทรัพยากรคลัสเตอร์ MSDTC ไม่ควบคุมถ้าอยู่ในกลุ่มเดียวกับอินสแตนซ์ของ SQL Server

ถ้าทรัพยากร MSDTC ในกลุ่มอื่น อื่นนอกเหนือจากที่ SQL Server ติดตั้ง นี้ไม่สามารถใช้

การแก้ปัญหา
  1. สร้างทรัพยากรคลัสเตอร์ที่อยู่ IP สำหรับ MSDTC ชื่อเป็น "ที่อยู่ IP MSDTC" และกำหนดที่อยู่ IP ไม่ซ้ำกัน ซึ่งต้องเป็นที่อยู่ IP แท้จริง (ไม่ใช่แค่ประกอบด้วย) หลังจากสร้างเสร็จเรียบร้อยแล้ว นำทรัพยากรแบบออนไลน์
  2. สร้างทรัพยากรชื่อเครือข่ายคลัสเตอร์ ชื่อเป็น "ชื่อเครือข่าย MSDTC" และทำให้ขึ้นอยู่กับอยู่ IP MSDTC ใช้ชื่อที่ไม่ซ้ำเช่น "CLUSTDTC"
  3. จากคลัสเตอร์ผู้ดูแลระบบ ทรัพยากรคลัสเตอร์ MSDTC คลิกขวา และเลือกออฟไลน์
  4. คลิกขวาทรัพยากรคลัสเตอร์ MSDTC และจากนั้น คลิกคุณสมบัติ
  5. ในกล่องโต้ตอบคุณสมบัติคลิกอ้างอิงและจากนั้น คลิกปุ่มปรับเปลี่ยน
  6. เลือกทรัพยากร MSDTC สร้างขึ้นใหม่ (MSDTC เครือข่ายชื่อและที่อยู่ IP) เป็นการอ้างอิง และจากนั้น คลิกเพิ่ม
  7. เลือกใด ๆ ที่มีอยู่แล้ว SQL Server ทรัพยากรคลัสเตอร์แสดงรายการเป็นการอ้างอิง และจากนั้น คลิกเอาออก
  8. คลิกตกลงและจากนั้น คลิกตกลงอีกครั้ง
  9. คลิกขวาทรัพยากร MSDTC และเลือกเพื่อนำทรัพยากรกลับแบบออนไลน์ และทดสอบล้มเหลว
  10. เพื่อให้แน่ใจว่า แฟ้มระบบทั้งหมดถูกต้อง เราแนะนำให้ ผู้ใช้ของ Windows 2000 ให้ใช้ตัวตรวจสอบ Windows 2000 แฟ้มเพื่อตรวจสอบแฟ้มระบบ เมื่อต้องการทำเช่นนี้ พิมพ์sfc /scannowที่พร้อมท์คำสั่ง

    หมายเหตุ มีซีดี Windows 2000 และ Windows 2000 Service Pack ซีดีของคุณพร้อมใช้งาน หากพบการไม่สอดคล้องกัน คุณจะจำเป็นซีดี

การย้ายทรัพยากร MSDTC ในกลุ่มเฉพาะ

โดยค่าเริ่มต้น MSDTC ทรัพยากรมีการติดตั้งแตกต่าง ขึ้นอยู่กับระบบปฏิบัติการ

Windows NT 4.0

MSDTC ติดตั้ง MSDTC คลัสเตอร์ที่ให้กับกลุ่มแรกที่ประกอบด้วยทรัพยากรที่อยู่ IP ที่ถูกต้อง ทรัพยากรชื่อเครือข่าย และทรัพยากรบนดิสก์คลัสเตอร์ ซึ่งโดยทั่วไปคือกลุ่ม SQL Server

Windows 2000

เมื่อคุณต้องการย้าย MSDTC ไปยังกลุ่ม SQL Server ในคลัสเตอร์ fellover 6.5 เซิร์ฟเวอร์ SQL และ SQL Server 7.0 โปรดดูที่ส่วน "ขั้นตอนการตั้งค่า MSDTC กลับไปติดตั้งแบบปกติบน SQL Server 6.5 และเซิร์ฟเวอร์เสมือนของ SQL Server 7.0" ของบทความนี้

ขั้นตอนการย้ายทรัพยากร MSDTC
  1. เริ่มการทำงานของผู้ดูแลคลัสเตอร์ ลบทรัพยากรทั้งหมดที่สร้างขึ้นสำหรับ Windows NT 4.0 สิ่งเหล่านี้โดยทั่วไปจะอยู่ MSDTC ชื่อเครือข่าย MSDTC และ MSDTC IP

    หมายเหตุ โดยค่าเริ่มต้น Windows 2000 ติดตั้ง MSDTC กลุ่มทรัพยากรคลัสเตอร์ และจะให้คุณลบทรัพยากร MSDTC หลังจากได้ทำขณะออฟไลน์เท่านั้น
  2. สร้างทรัพยากรต่อไปนี้ในกลุ่มปลายทางที่คุณเลือก SQL Server ที่จัดกลุ่ม ตัวอย่างเช่น:
    1. MSDTC ที่อยู่ TCP/IP ขึ้นอยู่กับไดรฟ์ที่คุณต้องการให้ DTC ที่จะสร้าง
    2. ชื่อเครือข่าย MSDTC ขึ้นอยู่กับอยู่ MSDTC TCP/IP
    3. ธุรกรรมทรัพยากรผู้ประสานงาน ขึ้นอยู่กับชื่อเครือข่าย MSDTC การแจกจ่าย
  3. ทำอย่างหนึ่งต่อไปนี้:
    • ย้ายโฟลเดอร์ Dtclog ที่มีอยู่จากไดรฟ์เดิมไปยังไดรฟ์ใหม่
    • ลบโฟลเดอร์ Dtclog ต้นฉบับ และสร้างโฟลเดอร์ที่ชื่อว่า Dtclog บนไดรฟ์ (เหมือนกับขั้นตอนที่ 2) บนตำแหน่งที่คุณต้องการ MSDTC การติดตั้ง
  4. ที่พรอมต์คำสั่ง พิมพ์comclustบนโหนสำนักกฎหมาย a หลังจากเสร็จสิ้น ทำซ้ำขั้นตอนนี้บนโหนด b
  5. เรียกใช้msdtc resetlogจากพรอมต์คำสั่งบนโหนสำนักกฎหมาย a

    คำเตือน คำสั่งmsdtc resetlogคือการดำเนินการที่เป็นอันตราย ตรวจสอบว่า คุณไม่มีธุรกรรมที่ใช้งานอยู่เมื่อคุณดำเนินการดังนี้
  6. นำ MSDTC ทรัพยากรทั้งหมดแบบออนไลน์
Windows Server 2003

ถ้าคุณเป็นผู้ใช้ Windows Server 2003 ดูบทความในฐานความรู้ของ Microsoft ต่อไปนี้:
301600วิธีการกำหนดค่า Microsoft แจกจ่ายธุรกรรมพิกัดบนคลัสเตอร์ Windows Server 2003

คุณสมบัติ

รหัสบทความ: 294209 - การตรวจสอบครั้งสุดท้าย: 24 ก.พ. 2017 - ฉบับแก้ไข: 1

คำติชม