เกิดข้อผิดพลาดในการเริ่มบริการ SQL Server 2017 รหัสข้อผิดพลาด 3417


13

ฉันติดตั้ง SQL Server 2017 บนคอมพิวเตอร์ของฉันแล้ว นี่คือสิ่งที่SELECT @@VERSIONส่งคืน:

Microsoft SQL Server 2017 (RTM-GDR) (KB4293803) - 14.0.2002.14 (X64) 21 กรกฎาคม 2561, 07:47:45 ลิขสิทธิ์ (C) 2017 Microsoft Corporation รุ่นองค์กร (64 บิต) บน Windows 10 Enterprise 10.0 (รุ่น 17134: ) `

มันทำงานได้ดีจนกระทั่งเมื่อวาน ทันใดนั้นSQL SERVER Serviceไม่ได้ทำงาน 3417 errorเมื่อผมอยากจะเรียกใช้บริการด้วยตนเองมันแสดงให้เห็น เมื่อฉันตรวจสอบบันทึกเหตุการณ์ฉันเห็นข้อผิดพลาดนี้:

การอัปเกรดระดับสคริปต์สำหรับฐานข้อมูล 'ต้นแบบ' ล้มเหลวเนื่องจากขั้นตอนการอัพเกรด 'msdb110_upgrade.sql' พบข้อผิดพลาด 200, สถานะ 7, ความรุนแรง 25 นี่เป็นเงื่อนไขข้อผิดพลาดร้ายแรงซึ่งอาจรบกวนการทำงานปกติและฐานข้อมูลจะออฟไลน์ หากเกิดข้อผิดพลาดระหว่างการอัพเกรดฐานข้อมูล 'master' จะเป็นการป้องกันไม่ให้อินสแตนซ์ของ SQL Server ทั้งหมดเริ่มทำงาน ตรวจสอบรายการข้อผิดพลาดก่อนหน้านี้เพื่อหาข้อผิดพลาดดำเนินการแก้ไขที่เหมาะสมและเริ่มต้นฐานข้อมูลใหม่เพื่อให้ขั้นตอนการอัปเกรดสคริปต์ทำงานจนเสร็จสมบูรณ์ "

หลังจาก googling ฉันพบฉันสามารถเรียกใช้ด้วย/T902 switchและพยายามแก้ไขปัญหา แต่ไม่มีวิธีแก้ปัญหาสำหรับฉัน ดังนั้นฉันจึงติดตั้งอินสแตนซ์อื่นของSQL SERVER 2017ฐานข้อมูลเดียวกันและกู้คืน ตอนนี้อินสแตนซ์ที่ติดตั้งใหม่มีปัญหาเดียวกัน

มีปัญหาอะไร

UPDATE นี่คือบันทึกข้อผิดพลาดแบบเต็มของ SQL Server

2018-09-17 13: 06: 47.29 spid6s ตัวเลือกการกำหนดค่า 'แสดงตัวเลือกขั้นสูง' เปลี่ยนจาก 1 เป็น 1 เรียกใช้คำสั่ง RECONFIGURE เพื่อติดตั้ง

2018-09-17 13: 06: 47.29 spid6s ตัวเลือกการกำหนดค่า 'แสดงตัวเลือกขั้นสูง' เปลี่ยนจาก 1 เป็น 1 เรียกใช้คำสั่ง RECONFIGURE เพื่อติดตั้ง

2018-09-17 13: 06: 47.29 spid6s ตัวเลือกการกำหนดค่า 'Agent XPs' เปลี่ยนจาก 1 เป็น 1 เรียกใช้คำสั่ง RECONFIGURE เพื่อติดตั้ง

2018-09-17 13: 06: 47.29 spid6s ตัวเลือกการกำหนดค่า 'Agent XPs' เปลี่ยนจาก 1 เป็น 1 เรียกใช้คำสั่ง RECONFIGURE เพื่อติดตั้ง

2018-09-17 13: 06: 47.29 spid6s กำลังสร้างโฟลเดอร์ SSIS ...

2018-09-17 13: 06: 47.30 spid6s ขั้นตอนการปล่อย [dbo]. [sp_syscollector_get_instmdw]

2018-09-17 13: 06: 47.30 spid6s กำลังสร้างโพรซีเดอร์ [dbo]. [sp_syscollector_get_instmdw] ...

2018-09-17 13: 06: 47.30 spid6s ขั้นตอนการปล่อย [dbo]. [sp_syscollector_upload_instmdw]

2018-09-17 13: 06: 47.30 spid6s กำลังสร้างโพรซีเดอร์ [dbo] [sp_syscollector_upload_instmdw] ...

2018-09-17 13: 06: 47.30 spid6s การอัพโหลดแพ็คเกจตัวรวบรวมข้อมูลจากดิสก์: c: \ Program SQL Server \ MSSQL14.SQL2017 \ MSSQL \ Install \ SqlTraceCollect.dolx SQL Server \ MSSQL14 \ MSSQL \ Install \ SqlTraceCollect.dtsx

2018-09-17 13: 06: 47.30 spid6s การอัพโหลดแพ็คเกจตัวรวบรวมข้อมูลจากดิสก์: c: \ Program SQL Server \ MSSQL14.SQL2017 \ MSSQL \ Install \ SqlTraceCollect.dolx SQL Server \ MSSQL14 \ MSSQL \ Install \ SqlTraceCollect.dtsx

2018-09-17 13: 06: 47.30 spid6s ข้อผิดพลาด: 2775, ความรุนแรง: 17, สถานะ: 12

2018-09-17 13: 06: 47.30 spid6s เซิร์ฟเวอร์ไม่รองรับหน้ารหัส 65001

2018-09-17 13: 06: 47.30 spid6s ข้อผิดพลาด: 912, ความรุนแรง: 21, สถานะ: 2

2018-09-17 13: 06: 47.30 spid6s การอัพเกรดระดับสคริปต์สำหรับฐานข้อมูล 'ต้นแบบ' ล้มเหลวเนื่องจากขั้นตอนการอัพเกรด 'msdb110_upgrade.sql' พบข้อผิดพลาด 200, สถานะ 7, ความรุนแรง 25 นี่เป็นเงื่อนไขข้อผิดพลาดร้ายแรงซึ่งอาจรบกวนการทำงานปกติ และฐานข้อมูลจะถูกออฟไลน์ หากเกิดข้อผิดพลาดระหว่างการอัพเกรดฐานข้อมูล 'master' จะเป็นการป้องกันไม่ให้อินสแตนซ์ของ SQL Server ทั้งหมดเริ่มทำงาน ตรวจสอบรายการ errorlog ก่อนหน้านี้เพื่อหาข้อผิดพลาดดำเนินการแก้ไขที่เหมาะสมและเริ่มฐานข้อมูลอีกครั้งเพื่อให้ขั้นตอนการอัพเกรดสคริปต์ทำงานจนเสร็จสมบูรณ์

2018-09-17 13: 06: 47.30 spid6s ข้อผิดพลาด: 3417, ความรุนแรง: 21, สถานะ: 3

2018-09-17 13: 06: 47.30 spid6s ไม่สามารถกู้คืนฐานข้อมูลหลัก SQL Server ไม่สามารถเรียกใช้ กู้คืนข้อมูลหลักจากการสำรองข้อมูลเต็มรูปแบบซ่อมแซมหรือสร้างใหม่ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้างฐานข้อมูลหลักดู SQL Server Books Online

2018-09-17 13: 06: 47.30 spid6s การปิด SQL Server ได้เริ่มขึ้นแล้ว

2018-09-17 13: 06: 47.30 spid6s การติดตาม SQL ถูกหยุดลงเนื่องจากการปิดเซิร์ฟเวอร์ ติดตาม ID = '1' นี่เป็นข้อความให้ข้อมูลเท่านั้น กระทำของผู้ใช้ไม่จำเป็นต้องมี.

UPDATE บรรทัดนี้มีบางอย่างที่จะบอก The code page 65001 is not supported by the server.เมื่อเร็ว ๆ Version 1803 (OS Build 17134.285)นี้หน้าต่างของฉันการปรับปรุงเพื่อให้ หลังจากอัพเดทนี้ข้อความของแอปพลิเคชั่นบางตัวเปลี่ยนไปเป็นตัวละครที่ไม่รู้จัก นี่เป็นสาเหตุของปัญหาได้หรือไม่?

รูปภาพรีจิสตรีสำหรับโค้ดเพจ

คำตอบ:


16

ฉันจะเริ่มต้นด้วยการบอกว่าคุณกำลังใช้ SQL Server 2017 บน Windows 10 (ลูกค้า OS) ซึ่งไม่ได้รับการสนับสนุนเห็นฮาร์ดแวร์และซอฟต์แวร์ข้อกำหนดสำหรับ SQL Server 2017 คุณกำลังสูญเสียความสามารถของรุ่นองค์กรและเงินจำนวนมากโดยการเรียกใช้บนระบบปฏิบัติการไคลเอ็นต์

บวกฉันเชื่อว่าปัญหาดังกล่าวส่วนใหญ่เป็นข้อบกพร่องดังนั้นฉันขอแนะนำให้คุณใช้SQL Server 2017 CU 10ล่าสุด แจ้งให้เราทราบหากคุณแก้ไขปัญหา หากคุณต้องการลองวิธีแก้ปัญหาสำหรับปัญหานี้โปรดอ้างอิงบล็อกนี้

ได้รับการยืนยันโดย OP ปัญหาไม่ได้แก้ไขแม้หลังจากใช้ SQL Server 2017 CU10

แก้ไข: ปัญหาเริ่มต้นด้วยคำสั่งด้านล่าง

2018-09-17 13: 06: 47.30 spid6s เซิร์ฟเวอร์ไม่รองรับหน้ารหัส 65001

code page65001 วิธีการเข้ารหัส UTF-8 ซึ่งไม่ได้รับการสนับสนุนโดย SQL Server และผมเชื่อว่าเป็นสาเหตุของปัญหา นี่เป็นข้อผิดพลาดอย่างแน่นอนที่ฉันสงสัยว่าทำไมเรื่องนี้ยังไม่ได้รับการแก้ไขใน CU10 กระบวนการอัปเกรดกำลังพยายามbulk loadข้อมูลที่มีการเข้ารหัส UTF 8 และเนื่องจาก SQL Server ไม่สนับสนุนกระบวนการดังกล่าวจึงล้มเหลว

คุณมี windows 10 ไปที่control pane, ตอนนี้เลือกregion and languageapplet, มันอาจเป็นเพียงregionคุณใน Windows 10 ไปที่administrative tabและในส่วนล่างของแท็บที่คุณต้องคลิกบน, change system Localeจากนั้นไปข้างหน้าและเปิดใช้งาน / เลือกBeta: UTF8 Supportและเริ่มต้น เครื่อง windows ด้านล่างเป็นตัวเลือกสิ่งที่ดูจากเครื่อง windows 7 ของฉัน ตัวเลือกที่อาจจะเกือบเดียวกันสำหรับ Windows 10

ป้อนคำอธิบายรูปภาพที่นี่

ตามที่ได้รับจาก OP ปัญหาทั้งหมดที่เริ่มต้นหลังจากใช้แพตช์ OS บางอย่าง ประเด็นสำคัญคือการแก้ไขหลังจากยกเลิกการเลือก "เบต้าสนับสนุน UTF8" ปัญหาดูเหมือนจะเป็น 2 สิ่ง

  1. OP มีเบต้าแล้ว: UTF8 สนับสนุนการตรวจสอบและทำงานได้ดีจนกระทั่งเขาใช้ระบบปฏิบัติการแก้ไขซึ่งเปลี่ยน "บางสิ่ง"

  2. ปัญหาได้รับการแก้ไขหลังจากยกเลิกการเลือกเบต้า: การสนับสนุน UTF8 จากแผงควบคุมที่มีระบบปฏิบัติการแก้ไขอยู่แล้ว

SQL Server ทำงานได้ดีด้วยการสนับสนุนเบต้า: UTF8 แต่เมื่อมีการใช้โปรแกรมปะแก้ระบบปฏิบัติการ "อะไร" ในลักษณะที่ฐานข้อมูลหลักของเซิร์ฟเวอร์ SQL ไม่สามารถมาออนไลน์ได้ซึ่งข้อความหน้ารหัส 65001 ไม่ได้รับการสนับสนุน การปิดใช้งานเบต้า: UTF8 จากแผงควบคุมสามารถแก้ไขปัญหาได้ แม้ว่าฉันเชื่อว่านี่เป็นวิธีการแก้ปัญหามากกว่าและ MS ต้องออกมาพร้อมกับบทความ KB ที่เหมาะสมสำหรับเรื่องนี้

PS: ฉันยังพบConnect Bug ที่ยกมาแล้วสำหรับปัญหานี้ เมื่อฉันบอกว่าไม่รองรับ (สำหรับการติดตั้งรุ่นองค์กรบนไคลเอนต์ระบบปฏิบัติการ) ซึ่งไม่ได้หมายความว่าคุณไม่สามารถเรียกใช้โครงสร้างพื้นฐานนี้ได้ก็หมายความว่าคุณเป็นเจ้าของด้วยตัวคุณเองหากคุณกด "บั๊ก" หรือมีบางอย่างผิดพลาด หากคุณแจ้งปัญหากับ MS เกี่ยวกับปัญหาดังกล่าวฉันมั่นใจว่าพวกเขาจะชี้ประเด็นนี้ออกไป


1
@ ผู้เริ่มต้นและ Shanky: ฉันตรวจสอบไฟล์นั้น ( C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Install\SqlTraceCollect.dtsx) ใน Notepad ++ และมันแสดงการเข้ารหัสของ "UCS-2 LE BOM" ซึ่งเป็น UTF-16 LE จริงๆซึ่งใน Microsoft-land นั้นเรียกว่า "Unicode" ไม่แน่ใจว่าข้อผิดพลาดอยู่ใน Windows หรือ SQL Server แต่เนื่องจากไฟล์นั้นมี Byte Order Mark (BOM) ก็ไม่ควรพยายามอ่านมันเป็น UTF-8 โดยไม่คำนึงถึงการเข้ารหัสเริ่มต้นของระบบ นั่นคือหลังจากทั้งหมดวัตถุประสงค์ทั้งหมดของการมีรายการวัสดุ ;-) <?xml version="1.0" encoding="utf-16"?>ไฟล์ที่แม้จะเริ่มต้นด้วย:
โซโลมอน Rutzky

1
ฉันติดตั้งรุ่นนักพัฒนาซอฟต์แวร์ (SQL Server 2014 ต้องทดสอบความสามารถในการย้อนหลัง) และใช้สิ่งเดียวกันที่นั่น โซลูชันของคุณใช้งานได้ดีมาก
jgauffin

2
ปัญหาได้รับการแก้ไขหลังจากยกเลิกการเลือก "การสนับสนุน Beta: UTF8" ขอบคุณ @Shanky ฉันเสียเวลาสองวันในเรื่องนี้และคุณช่วยชีวิตฉันไว้
TechNovIT
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.