การกําหนดค่าที่ทํางานบนฝั่งเซิร์ฟเวอร์สําหรับการเชื่อมต่อกับ SQL Server ด้วยการรับรองความถูกต้องของ SQL Server

วันที่สร้างเพจ :

สิ่งแวดล้อม

เซิร์ฟเวอร์ SQL
  • SQL Server 2019
Windows (ใช้เป็นเซิร์ฟเวอร์)
  • วินโดวส์ 10 โปร 20H2
Windows Server (ใช้เป็นเซิร์ฟเวอร์)
  • วินโดวส์เซิร์ฟเวอร์ 2019

เงื่อนไขเบื้องต้น

ฉันได้ลองติดตั้งระบบปฏิบัติการและ SQL Server หลายรุ่นแล้ว แต่ในแต่ละกรณีการตั้งค่าในขณะที่ติดตั้งและหลังจากติดตั้ง SQL Server มีดังนี้

  • SQL Server ได้รับการติดตั้งโดยมีสิทธิ์ของผู้ดูแลระบบ
  • เส้นทางการติดตั้ง SQL Server ยังคงเป็นค่าเริ่มต้น
  • ระบบปฏิบัติการเกือบจะติดตั้งทันที
  • สมมติว่า SQL Server Management Studio ถูกติดตั้งอยู่ฝั่งเซิร์ฟเวอร์
  • ทุกอย่างในเคล็ดลับเหล่านี้เป็นฝั่งเซิร์ฟเวอร์ยกเว้นการตรวจสอบการเชื่อมต่อไคลเอนต์

คุณลักษณะ SQL Server จะเลือกเฉพาะบริการกลไกจัดการฐานข้อมูลเท่านั้น

ตรวจสอบอินสแตนซ์ทั้งในอินสแตนซ์เริ่มต้นและอินสแตนซ์ที่มีชื่อ

ปล่อยให้บัญชีบริการเป็นค่าเริ่มต้น

โหมดการรับรองความถูกต้องเป็นการรับรองความถูกต้องของ Windows เท่านั้น เปิดใช้งานการรับรองความถูกต้องของ SQL Server ในการกําหนดค่าที่ใหม่กว่าเป็นขั้นตอนการกําหนดค่า

สร้างฐานข้อมูลที่เรียกว่า "TestDatabase" ฉันสร้างเพียงอันใหม่เพื่อยืนยันและฉันไม่ได้สร้างอะไรข้างใน

สมมติว่าคุณสร้างบัญชีผู้ใช้ชื่อ "TestUser" และทําการรับรองความถูกต้องของ SQL Server กับบัญชีผู้ใช้นี้ คุณสามารถเข้าถึง "TestDatabase" ได้

เปิดใช้งานการรับรองความถูกต้องของ SQL Server

ถ้าคุณไม่ได้เปิดใช้งานการรับรองความถูกต้องของ SQL Server เมื่อคุณติดตั้ง SQL Server ให้ทําตามขั้นตอนต่อไปนี้

เริ่มต้น Microsoft SQL Server Management Studio ที่ฝั่งเซิร์ฟเวอร์

เข้าสู่ระบบเซิร์ฟเวอร์ของคุณด้วยการรับรองความถูกต้องของ Windows ถ้ามีชื่ออินสแตนซ์ ให้ใส่ชื่ออินสแตนซ์ในรูปแบบ "< ชื่อเซิร์ฟเวอร์ >\< ชื่ออินสแตนซ์>"

จาก Object Explorer ให้คลิกขวาที่เซิร์ฟเวอร์แล้วเลือก คุณสมบัติ

เลือก "ความปลอดภัย" จากเมนูทางด้านซ้าย และตรวจสอบ "โหมดการรับรองความถูกต้องของ SQL Server และโหมดการรับรองความถูกต้องของ Windows" จาก "การรับรองความถูกต้องของเซิร์ฟเวอร์"

เมื่อได้รับการยืนยันแล้ว คุณจะได้รับพร้อมท์ให้เริ่ม SQL Server ใหม่

คลิกขวาที่เซิร์ฟเวอร์จาก Object Explorer แล้วเลือก Restart การเริ่มระบบของคอมพิวเตอร์ใหม่ต้องการสิทธิ์ระดับผู้ดูแล

เลือก ใช่ เพื่อเริ่ม SQL Server ใหม่

อนุญาตการเชื่อมต่อระยะไกล

ในกรณีที่คุณคิดว่ามันเปิดใช้งานโดยค่าเริ่มต้น

ใน SQL Server Management Studio ให้คลิกขวาที่เซิร์ฟเวอร์จาก Object Explorer แล้วเลือก คุณสมบัติ

เลือก "เชื่อมต่อ" จากเมนูทางด้านซ้ายและตรวจสอบให้แน่ใจว่า "อนุญาตการเชื่อมต่อระยะไกลไปยังเซิร์ฟเวอร์นี้" ถูกเช็คอินใน "การเชื่อมต่อเซิร์ฟเวอร์ระยะไกล"

การอนุญาตเข้าสู่ระบบโดยบัญชี SA (เฉพาะเมื่อจําเป็น)

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

เปิด SQL Server Management Studio ขยาย เซิร์ฟเวอร์ ความปลอดภัย และการเข้าสู่ระบบจาก Object Explorer คลิกขวา sa แล้วเลือก คุณสมบัติ

เลือก "ทั่วไป" จากเมนูทางด้านซ้ายและป้อนรหัสผ่านของคุณ

เลือก "สถานะ" จากเมนูทางด้านซ้ายและตั้งค่า "เข้าสู่ระบบ" เป็น "เปิดใช้งาน"

TCP/IP

การเปิดใช้งาน TCP/IP

เปิดโฟลเดอร์ Microsoft SQL Server 2019 จากเมนู เริ่ม และเลือก ตัวจัดการการกําหนดค่า SQL Server 2019

* ชื่อจะเปลี่ยนแปลงไปตามรุ่นของ SQL Server

จากทรีทางด้านซ้าย ให้ขยายตัวจัดการการกําหนดค่า SQL Server (ภายในเครื่อง), การกําหนดค่าเครือข่าย SQL Server และเลือกโพรโทคอล MSSQLSERVER คลิกขวาที่ TCP/IP จากรายการทางด้านขวา และเลือก เปิดใช้งาน

* ชื่อของ "MSSQLSERVER" จะเปลี่ยนเป็นชื่อถ้ามีการระบุชื่ออินสแตนซ์ในขณะที่ติดตั้ง

คลิก ตกลง

เลือก บริการ SQL Server จากทรีทางด้านซ้าย แล้วคลิกขวาที่ SQL Server (MSSQLSERVER) จากรายการทางด้านขวา แล้วเลือก เริ่มระบบใหม่

การตรวจสอบหรือการระบุพอร์ต TCP (ถ้าคุณกําลังระบุชื่ออินสแตนซ์)

หากคุณไม่ระบุชื่ออินสแตนซ์ จะมีการระบุพอร์ต 1433 TCP ที่เป็นค่าเริ่มต้น แต่หากคุณระบุชื่ออินสแตนซ์ คุณต้องใช้พอร์ตอื่นๆ

จากทรีทางด้านซ้าย ให้ขยายตัวจัดการการกําหนดค่า SQL Server (ภายในเครื่อง), การกําหนดค่าเครือข่าย SQL Server และเลือกโพรโทคอล MSSQLSERVER คลิกสองครั้งที่ TCP/IP จากรายการทางด้านขวาเพื่อเปิดคุณสมบัติ

* ชื่อของ "MSSQLSERVER" จะเปลี่ยนเป็นชื่อถ้ามีการระบุชื่ออินสแตนซ์ในขณะที่ติดตั้ง

คลิกแท็บ ที่อยู่ IP

ตรวจสอบพอร์ตต่างๆ ที่แสดงอยู่ใน TCP Dynamic Ports ในกลุ่ม IPAll โดยวิธีการที่ค่านี้สามารถเปลี่ยนเป็นค่าใด ๆ คุณระบุค่านี้ในภายหลังในการตั้งค่าไฟร์วอลล์

ไฟร์วอลล์

ไฟร์วอลล์ (TCP)

จากเมนู 'เริ่ม' ให้เปิดโฟลเดอร์ 'เครื่องมือการดูแล' ของ Windows แล้วเลือก 'ไฟร์วอลล์ Windows Defender' ที่มี 'ความปลอดภัยขั้นสูง'

คลิกขวาที่ กฎขาเข้า จากแผนภูมิ ทางด้านซ้าย และเลือก กฎใหม่

เลือกพอร์ต

เลือก TCP

ถ้าคุณไม่ได้ระบุชื่ออินสแตนซ์สําหรับ SQL Server ให้ป้อน 1433 สําหรับพอร์ตเฉพาะที่

ถ้าคุณได้ระบุชื่ออินสแตนซ์สําหรับ SQL Server ให้เช็คอินตัวจัดการการกําหนดค่า SQL Server สําหรับ "พอร์ตเฉพาะที่" หรือระบุพอร์ตไดนามิก TCP ที่คุณใส่

ตรวจสอบให้แน่ใจว่าได้เลือก "อนุญาตการเชื่อมต่อ" แล้ว

โปรดตรวจสอบเฉพาะ "โดเมน" และ "ส่วนตัว" เท่านั้น ไม่ได้มีวัตถุประสงค์เพื่อเผยแพร่บนอินเทอร์เน็ต

ป้อนชื่อที่จะเข้าใจง่ายเมื่อคุณเห็นในภายหลัง นี่คือ "[เพิ่ม] SQL Server TCP 1433"

สถานะที่เพิ่ม

ถ้าคุณไม่ระบุชื่ออินสแตนซ์

ไฟร์วอลล์ (UDP) (ถ้าคุณระบุชื่ออินสแตนซ์)

เปิดไฟร์วอลล์ Windows Defender ที่มีความปลอดภัยขั้นสูง แล้วคลิกขวาที่ กฎขาเข้า จากทรีทางด้านซ้าย แล้วเลือก กฎใหม่

เลือกพอร์ต

เลือก UDP และป้อน 1434 สําหรับพอร์ตเฉพาะที่

ตรวจสอบให้แน่ใจว่าได้เลือก "อนุญาตการเชื่อมต่อ" แล้ว

โปรดตรวจสอบเฉพาะ "โดเมน" และ "ส่วนตัว" เท่านั้น ไม่ได้มีวัตถุประสงค์เพื่อเผยแพร่บนอินเทอร์เน็ต

ป้อนชื่อที่จะเข้าใจง่ายเมื่อคุณเห็นในภายหลัง นี่คือ "[เพิ่ม] SQL Server UDP 1434"

สถานะที่เพิ่ม

เริ่ม SQL Server Browser (ถ้าคุณระบุชื่ออินสแตนซ์)

เปิดโฟลเดอร์ Microsoft SQL Server 2019 จากเมนู เริ่ม และเลือก ตัวจัดการการกําหนดค่า SQL Server 2019

* ชื่อจะเปลี่ยนแปลงไปตามรุ่นของ SQL Server

จากทรีทางด้านซ้าย ให้ขยาย ตัวจัดการการตั้งค่าคอนฟิก SQL Server (ภายในเครื่อง) และเลือก SQL Server Services คลิกขวาที่ SQL Server Rowzer จากรายการทางด้านขวา และเลือก คุณสมบัติ

เลือกแท็บ "บริการ" และตั้งค่า "โหมดเริ่มต้น" ในกลุ่ม "ทั่วไป" เป็น "อัตโนมัติ" เมื่อเลือกแล้ว ให้คลิกปุ่ม ตกลง

เมื่อคุณกลับไปยังหน้าจอก่อนหน้า ให้คลิกขวาที่ SQL Server Rowzer อีกครั้ง แล้วเลือก เริ่ม

การดําเนินการนี้จะเสร็จสิ้นการกําหนดค่า

เมื่อคุณไม่สามารถเชื่อมต่อได้ทั้งหมด

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

ขั้นแรก ให้ลองเชื่อมต่อใน SQL Server Management Studio

เมื่อคุณตรวจสอบการเชื่อมต่อกับโปรแกรมหรือสิ่งที่คล้ายกันมีรายการตรวจสอบมากมายเช่นผู้ใช้การเชื่อมต่อไม่มีสิทธิ์ในการเข้าถึงฐานข้อมูลดังนั้นก่อนอื่นเรามาตรวจสอบว่าการรับรองความถูกต้องของ SQL Server สามารถทําได้จาก SQL Server Management Studio หรือไม่

โปรไฟล์เครือข่ายเป็น "ส่วนตัว" หรือไม่

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

อนุญาต sqlservr.exe ไฟร์วอลล์

โปรดสังเกตว่าการตั้งค่านี้เทียบเท่ากับการระบุพอร์ตทั้งหมดไปยัง SQL Server

เปิดไฟร์วอลล์ Windows Defender ที่มีความปลอดภัยขั้นสูง แล้วคลิกขวาที่ กฎขาเข้า จากทรีทางด้านซ้าย แล้วเลือก กฎใหม่

เลือก โปรแกรม

ในพาธของโปรแกรมนี้ ให้ระบุเส้นทางของ EXE ต่อไปนี้: MSSQL15.SQLEXPRESS ขึ้นอยู่กับรุ่นของ SQL Server

%ProgramFiles%\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Binn\sqlservr.exe

ตรวจสอบให้แน่ใจว่าได้เลือก "อนุญาตการเชื่อมต่อ" แล้ว

โปรดตรวจสอบเฉพาะ "โดเมน" และ "ส่วนตัว" เท่านั้น ไม่ได้มีวัตถุประสงค์เพื่อเผยแพร่บนอินเทอร์เน็ต

ป้อนชื่อที่จะเข้าใจง่ายเมื่อคุณเห็นในภายหลัง นี่คือ "[เพิ่ม] SQL Server EXE"

สถานะที่เพิ่ม