นำไปใช้กับ
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Enterprise Core

สรุป

เมื่อคุณไม่สามารถสร้างตัวฟังกลุ่มความพร้อมใช้งานของ Microsoft SQL Server 2012 AlwaysOn มักจะเป็นอาการของปัญหาอื่นๆ ที่คุณไม่สามารถสร้างวัตถุใน Active Directory หรือลงทะเบียนที่อยู่ IP ใน DNS ปัญหาเหล่านี้มักจะเกิดขึ้นเนื่องจากนโยบายโดเมน หรือเนื่องจากไม่มีสิทธิ์สําหรับคลัสเตอร์ Windows ในการโต้ตอบกับ Active Directory หรือ DNSเมื่อคุณสร้างตัวรอรับการใน SQL Server คลัสเตอร์ของ Windows จะสร้างทรัพยากรจุดเข้าใช้งานไคลเอ็นต์ หาก SQL Server ไม่สามารถสร้างตัวรอรับการได้ อาจไม่สามารถรายงานสาเหตุได้เนื่องจากคลัสเตอร์ Windows กําลังสร้างทรัพยากร ในสถานการณ์นี้ คุณสามารถรวบรวมบันทึกคลัสเตอร์ของ Windows และบันทึกเหตุการณ์ของระบบ Windows เพื่อวินิจฉัยสาเหตุหากคุณไม่สามารถสร้างผู้ฟัง ได้ อาจเป็นเพราะสาเหตุใดสาเหตุหนึ่งต่อไปนี้:

  • คุณไม่มีสิทธิ์คลัสเตอร์ของ Windows เพียงพอในการสร้างและเปลี่ยนแปลงบัญชีผู้ใช้ชื่อคลัสเตอร์ Active Directory

  • คุณไม่สามารถลงทะเบียนที่อยู่ IP ใน DNS ได้เนื่องจากปัญหาบางอย่างที่เกี่ยวข้องกับที่อยู่ IP ซ้ําหรือไม่ถูกต้อง

  • คุณละเมิดนโยบายของ Windows

บทความนี้อธิบายถึงขั้นตอนที่คุณสามารถดําเนินการเพื่อวินิจฉัยความพยายามในการสร้างตัวฟังล้มเหลวถ้า SQL Server ไม่สามารถรายงานสาเหตุได้ นอกจากนี้ บทความนี้แสดงรายการข้อความแสดงข้อผิดพลาดบางอย่างที่คุณอาจเห็นเมื่อการสร้างตัวรอรับการติดต่อกลุ่มความพร้อมใช้งานล้มเหลว

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

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

เมื่อคุณสร้างตัวรอรับการติดต่อกลุ่มความพร้อมใช้งานโดยใช้กล่องโต้ตอบเพิ่ม Listener ของ SQL Server Management Studio คุณอาจได้รับข้อความแสดงข้อผิดพลาดที่มีข้อมูลเกี่ยวกับสาเหตุของข้อผิดพลาด ซึ่งสามารถช่วยให้คุณแก้ไขปัญหาได้ ตัวอย่างเช่น คุณได้รับข้อความแสดงข้อผิดพลาดเกี่ยวกับที่อยู่ IP ที่ไม่ถูกต้องสําหรับเครือข่ายย่อยที่มีลักษณะต่อไปนี้:

ที่อยู่ IP '<ที่อยู่ IP>' ที่ระบุไม่ถูกต้องในช่วง IP ที่อนุญาตคลัสเตอร์ ตรวจสอบกับผู้ดูแลระบบเครือข่ายเพื่อเลือกค่าที่เหมาะสมสําหรับช่วง IP ที่คลัสเตอร์อนุญาต (Microsoft SQL Server, ข้อผิดพลาด: 19457)

รูปภาพ 1อย่างไรก็ตาม คุณอาจได้รับข้อความแสดงข้อผิดพลาดที่ไม่อธิบายสาเหตุที่คุณไม่สามารถสร้างตัวฟังกลุ่ม ตัวอย่างเช่น เมื่อคุณพยายามสร้างตัวรอรับการติดต่อกลุ่มความพร้อมใช้งาน คุณได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกับต่อไปนี้ ซึ่งไม่ได้ระบุสาเหตุที่แท้จริงของข้อผิดพลาด:

Msg 19471, ระดับ 16, สถานะ 0, บรรทัด 2คลัสเตอร์ WSFC ไม่สามารถนําทรัพยากรชื่อเครือข่ายที่มีชื่อ DNS '<ชื่อ DNS>' ทางออนไลน์ได้ ชื่อ DNS อาจถูกนําไปใช้หรือขัดแย้งกับบริการชื่อที่มีอยู่ หรือบริการคลัสเตอร์ WSFC อาจไม่ทํางานหรือไม่สามารถเข้าถึงได้ ใช้ชื่อ DNS อื่นเพื่อแก้ไขข้อขัดแย้งของชื่อ หรือตรวจสอบบันทึกคลัสเตอร์ WSFC สําหรับข้อมูลเพิ่มเติม

Msg 19476, ระดับ 16, สถานะ 4, บรรทัด 2ความพยายามที่จะสร้างชื่อเครือข่ายและที่อยู่ IP สําหรับผู้ฟังล้มเหลว บริการ WSFC อาจไม่ทํางานหรือไม่สามารถเข้าถึงได้ในสถานะปัจจุบัน หรือค่าที่ระบุสําหรับชื่อเครือข่ายและที่อยู่ IP อาจไม่ถูกต้อง ตรวจสอบสถานะของคลัสเตอร์ WSFC และตรวจสอบชื่อเครือข่ายและที่อยู่ IP กับผู้ดูแลระบบเครือข่าย

รูปภาพ 2

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

ขั้นตอนที่ 1: โปรดสังเกตเวลาที่แน่นอนที่ปัญหาเกิดขึ้นดําเนินการขั้นตอนใดก็ตามที่จําเป็นเพื่อจําลองปัญหาขึ้นใหม่ และจดบันทึกเวลาที่เกิดปัญหานี้

ขั้นตอนที่ 2: ตรวจสอบข้อมูลในบันทึกคลัสเตอร์ของ Windows (Cluster.log)ค้นหาไฟล์ Cluster.log สําหรับชื่อเครือข่ายที่คุณกําหนดไว้สําหรับผู้ฟังกลุ่มหมาย เหตุ

  • รายการไฟล์ Cluster.log จะเข้าสู่ระบบตามเวลามาตรฐานสากล (UTC)

  • เมื่อต้องการสร้างบันทึกคลัสเตอร์ของ Windows โดยใช้พร้อมท์คําสั่งการดูแลระบบใน Windows Server 2008 R2 หรือ Windows Server รุ่นที่ใหม่กว่า ให้เรียกใช้คําสั่งต่อไปนี้:

    Cluster log /g

    รูปภาพ 4

  • เมื่อต้องการสร้างบันทึกคลัสเตอร์ของ Windows โดยใช้ Windows PowerShell ให้เรียกใช้ cmdlet ต่อไปนี้ในหน้าต่าง PowerShell แบบยกระดับ:

    Get-ClusterLog

    รูปภาพ 5

  • ตามค่าเริ่มต้น แฟ้มบันทึกจะถูกสร้างขึ้นใน %WINDIR%\cluster\reports

ขั้นตอนที่ 3: ตรวจสอบข้อมูลจากบันทึกเหตุการณ์ของระบบ Windows ดูบันทึกเหตุการณ์ของระบบ Windows สําหรับรายการที่เกี่ยวข้องกับความพยายามในการสร้างผู้ฟังโดยใช้เวลาที่คุณบันทึกไว้ในขั้นตอนที่ 1

ในบางครั้ง SQL Server ไม่สามารถรายงานข้อมูลเฉพาะเกี่ยวกับสาเหตุที่คุณไม่สามารถสร้างตัวฟังกลุ่มได้เนื่องจากนโยบายโดเมน ตัวอย่างเช่น นโยบายโดเมนช่วยให้ผู้ใช้โดเมนสามารถสร้างบัญชีคอมพิวเตอร์สิบบัญชีตามค่าเริ่มต้น เมื่อคุณพยายามสร้างผู้ฟังกลุ่มที่จะเป็นบัญชีคอมพิวเตอร์ที่สิบเอ็ดของคุณ SQL Server สามารถรายงานข้อความแสดงข้อผิดพลาดทั่วไป "Msg 19471" และ "Msg 19476" ที่กล่าวถึงในส่วน "ข้อมูลเพิ่มเติม" เท่านั้นหากต้องการค้นหาสาเหตุที่คุณไม่สามารถสร้างตัวรอรับข้อความกลุ่ม ให้ตรวจสอบบันทึกเหตุการณ์ของระบบ Windows และไฟล์ Cluster.log

  • เมื่อต้องการตรวจสอบบันทึกเหตุการณ์ของระบบ Windows ให้ทําตามขั้นตอนเหล่านี้:

    1. คลิก เริ่ม ชี้ไปที่ โปรแกรม ชี้ไปที่ เครื่องมือในการดูแล แล้วคลิก ตัวแสดงเหตุการณ์

    2. ในคอนโซลทรี ขยาย Windows Logs แล้วคลิก ระบบ

    3. ในบานหน้าต่างรายละเอียด ให้เลื่อนดูเหตุการณ์ล่าสุดและค้นหาเหตุการณ์ 1194 ภายใต้แท็บ ทั่วไป มีสาเหตุหลายประการสําหรับสาเหตุของความล้มเหลว

    4. คลิกแท็บ รายละเอียด ในมุมมอง ที่จําง่าย ภายใต้ส่วน EventData คุณสามารถค้นหาข้อความแสดงข้อผิดพลาดที่เฉพาะเจาะจงมากขึ้นที่มีลักษณะดังต่อไปนี้:

      คุณได้สร้างบัญชีคอมพิวเตอร์เกินจํานวนสูงสุดที่คุณได้รับอนุญาตให้สร้างในโดเมนนี้

      รูปภาพ 6

  • เมื่อต้องการตรวจสอบรายการในแฟ้ม Cluster.log ให้ทําตามขั้นตอนต่อไปนี้:

    1. คลิก เริ่ม ชี้ไปที่ โปรแกรมทั้งหมด ชี้ไปที่ Windows PowerShell V2 คลิกขวา Windows PowerShell ISE แล้วคลิก เรียกใช้ในฐานะผู้ดูแล

    2. ที่พร้อมท์คําสั่ง เรียกใช้ cmdlet ต่อไปนี้เพื่อสร้างบันทึกคลัสเตอร์:

      Get-ClusterLog

      รูปภาพ 5

    3. เปิดไฟล์ Cluster.log ในแผ่นจดบันทึก

    4. คลิก แก้ไข แล้วคลิก ค้นหา ในแผ่นจดบันทึก และค้นหาสตริง "ไม่สามารถสร้างวัตถุคอมพิวเตอร์ <ชื่อ DNS>" รีวิวผลลัพธ์ และคุณสามารถค้นหาข้อความที่มีลักษณะดังต่อไปนี้:

      00000d24.00000dc8::<ประทับเวลา> INFO [RES] ชื่อเครือข่าย: [<ชื่อเครือข่าย>] วัตถุ NetUserAdd <ชื่อ DNS> บน ชื่อโดเมนย่อย: \\Domain name, result: 8557

      00000d24.00000dc8::<ประทับเวลา> ERR [RES] ชื่อเครือข่าย: [<ชื่อเครือข่าย>] ไม่สามารถสร้าง ชื่อ DNS <วัตถุคอมพิวเตอร์> ใน Active Directory ได้ ข้อผิดพลาด 8557

    5. เมื่อต้องการตรวจสอบว่าข้อผิดพลาดระบุอะไร ให้พิมพ์ Net helpmsg 8557 ที่พร้อมท์คําสั่ง แล้วกด Enter รูปภาพ 9

สรุปคุณสามารถสรุปได้ว่าสาเหตุของปัญหาเกิดจากนโยบาย Active Directory ที่มีผลกับสภาพแวดล้อมของคุณ ในกรณีนี้ ผู้ใช้ที่ได้รับการรับรองความถูกต้องในโดเมนซึ่งได้รับการกําหนดสิทธิ์ผู้ใช้ "เพิ่มเวิร์กสเตชันไปยังโดเมน" และสามารถสร้างบัญชีผู้ใช้คอมพิวเตอร์ได้สูงสุดสิบบัญชีในโดเมน คุณได้รับข้อความแสดงข้อผิดพลาดเนื่องจากเกินขีดจํากัดนี้

ในบางครั้ง SQL Server ไม่สามารถรายงานข้อมูลเฉพาะเกี่ยวกับสาเหตุที่คุณไม่สามารถสร้างตัวฟังกลุ่มได้เนื่องจากมีสิทธิ์ไม่เพียงพอใน Active Directory ตัวอย่างเช่น บัญชีชื่อคลัสเตอร์ต้องการสิทธิ์ "สร้างวัตถุคอมพิวเตอร์" เมื่อคุณสร้างบริการแบบคลัสเตอร์หรือแอปพลิเคชัน เมื่อบัญชีชื่อคลัสเตอร์ไม่มีสิทธิ์นี้ SQL Server ไม่สามารถสร้างตัวรอรับการติดต่อกลุ่มความพร้อมใช้งานได้ เมื่อคุณพยายามสร้างตัวรอรับกลุ่มที่มีสิทธิ์ไม่เพียงพอ SQL Server สามารถรายงานข้อความแสดงข้อผิดพลาดทั่วไป "Msg 19471" และ "Msg 19476" ที่กล่าวถึงในส่วน "ข้อมูลเพิ่มเติม" เท่านั้นหากต้องการค้นหาสาเหตุของปัญหานี้ ให้ตรวจสอบบันทึกเหตุการณ์ของระบบ Windows และไฟล์ Cluster.log

  • ตรวจสอบบันทึกเหตุการณ์ของระบบ Windows โดยทําตามขั้นตอนต่อไปนี้:

    1. คลิก เริ่ม ชี้ไปที่ โปรแกรม ชี้ไปที่ เครื่องมือในการดูแล แล้วคลิก ตัวแสดงเหตุการณ์

    2. ในคอนโซลทรี ขยาย Windows Logs แล้วคลิกบันทึก ของระบบ ที่มีเหตุการณ์ที่คุณต้องการดู

    3. ภายใต้แท็บ รายละเอียด ให้เลื่อนดูเหตุการณ์ล่าสุดและค้นหาเหตุการณ์ 1194 ภายใต้แท็บ ทั่วไป มีการเสนอเหตุผลหลายประการสําหรับสาเหตุของความล้มเหลว เช่น "ข้อมูลประจําตัวของคลัสเตอร์ '<ผู้ใช้โดเมน>' มีสิทธิ์สร้างวัตถุคอมพิวเตอร์"

    4. คลิกแท็บ รายละเอียด ในมุมมอง ที่จําง่าย ภายใต้ส่วน EventData คุณสามารถค้นหาข้อความแสดงข้อผิดพลาดที่เฉพาะเจาะจงมากขึ้นที่มีลักษณะดังต่อไปนี้:

      ไม่มีแอตทริบิวต์หรือค่าของบริการไดเรกทอรีที่ระบุอยู่

      รูปภาพ 12

  • ตรวจทานรายการในไฟล์ Cluster.log โดยทําตามขั้นตอนต่อไปนี้:

    1. คลิก เริ่ม ชี้ไปที่ โปรแกรมทั้งหมด ชี้ไปที่ Windows PowerShell V2 คลิกขวา Windows PowerShell ISE แล้วคลิก เรียกใช้ในฐานะผู้ดูแล

    2. ที่พร้อมท์คําสั่ง เรียกใช้ cmdlet ต่อไปนี้เพื่อสร้างบันทึกคลัสเตอร์:

      Get-ClusterLog

      รูปภาพ 5

    3. เปิดไฟล์ Cluster.log ในแผ่นจดบันทึก

    4. คลิก แก้ไข แล้วคลิก ค้นหา ในแผ่นจดบันทึก ค้นหาสตริง "ไม่สามารถสร้างวัตถุคอมพิวเตอร์ <ชื่อ DNS>" รีวิวผลลัพธ์ และคุณสามารถค้นหาข้อความที่มีลักษณะดังต่อไปนี้:

      00000d24.000005f8::<ประทับเวลา> ERR [RES] ชื่อเครือข่าย: [<ชื่อเครือข่าย>] ไม่สามารถสร้าง ชื่อ DSN ของวัตถุคอมพิวเตอร์ <> ใน Active Directory ได้ ข้อผิดพลาด 8202

    5. เมื่อต้องการตรวจสอบว่าข้อผิดพลาดระบุอะไร ให้พิมพ์ Net helpmsg 8202 ที่พร้อมท์คําสั่ง แล้วกด Enter รูปภาพ 14

สรุปคุณสามารถสรุปได้ว่าบัญชีชื่อคลัสเตอร์ไม่มีสิทธิ์ "สร้างวัตถุคอมพิวเตอร์" ในคอนเทนเนอร์คอมพิวเตอร์ในผู้ใช้และคอมพิวเตอร์ Active Directory

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการรับสิทธิ์ที่เพียงพอใน Active Directory เมื่อคุณสร้างตัวรอรับการติดต่อกลุ่มความพร้อมใช้งานใน SQL Server ไปที่เว็บไซต์ Microsoft TechNet ต่อไปนี้:

วิธีการกําหนดค่าบัญชีคอมพิวเตอร์ Active Directory ในคลัสเตอร์เมื่อเกิดข้อผิดพลาดก่อนที่คุณจะสร้างคลัสเตอร์เมื่อเกิดข้อผิดพลาดของ Windows คุณต้องตรวจสอบว่าบัญชีผู้ใช้โดเมนที่กําลังเรียกใช้ตัวช่วยสร้างคลัสเตอร์มีสิทธิ์ "สร้างวัตถุคอมพิวเตอร์" หรือไม่ สําหรับข้อมูลเพิ่มเติม คุณสามารถดูส่วน "ขั้นตอนสําหรับการกําหนดค่าบัญชีสําหรับบุคคลที่ติดตั้งคลัสเตอร์" ของ คู่มือที่กล่าวถึงก่อนหน้านี้ถ้านโยบายความปลอดภัยขององค์กรของคุณไม่อนุญาตให้คุณมอบสิทธิ์นี้ให้กับบัญชีผู้ใช้ที่ระบุ คุณสามารถขอให้ผู้ดูแลโดเมนของคุณให้สิทธิ์ "สร้างวัตถุคอมพิวเตอร์" แก่บัญชีชื่อคลัสเตอร์หลังจากที่คุณสร้างคลัสเตอร์ Windows Failover สําหรับข้อมูลเพิ่มเติม คุณสามารถดูส่วน "ขั้นตอนสําหรับการตั้งค่าบัญชีชื่อคลัสเตอร์" ของ คู่มือที่กล่าวถึงก่อนหน้านี้ได้เมื่อคุณเรียกใช้ตัวช่วยสร้างความพร้อมใช้งานสูง โดยปกติแล้วจะง่ายกว่าที่จะปล่อยให้บัญชีผู้ใช้ถูกสร้างขึ้นและกําหนดค่าโดยอัตโนมัติถ้าคุณไม่ได้ติดตั้งบัญชีคอมพิวเตอร์ไว้ล่วงหน้าสําหรับบริการแบบคลัสเตอร์ แอปพลิเคชัน หรือชื่อเครือข่ายเสมือนของผู้ฟัง อย่างไรก็ตาม ถ้าคุณจําเป็นต้องติดตั้งบัญชีล่วงหน้าเนื่องจากข้อกําหนดในองค์กรของคุณ ให้ทําตามขั้นตอนในส่วน "ขั้นตอนสําหรับการกําหนดค่าบัญชีสําหรับบริการหรือแอปพลิเคชันแบบคลัสเตอร์" ของ คู่มือที่กล่าวถึงก่อนหน้านี้ หมาย เหตุ

  • เมื่อต้องการใช้ขั้นตอนที่อธิบายไว้ในส่วนนี้ คุณต้องมีสิทธิ์ผู้ดูแลโดเมนหรือตัวดําเนินการบัญชี

  • ถ้าคุณตั้งค่าตัวรอรับการติดต่อกลุ่มความพร้อมใช้งานในเครือข่ายย่อยหลาย คุณต้องรับที่อยู่ IP แบบคงที่จากแต่ละเครือข่ายย่อยที่แบบจําลองของคุณอยู่ โดยปกติแล้วคุณต้องพูดคุยกับผู้ดูแลระบบเครือข่ายเพื่อทําสิ่งนี้

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ