ไม่สามารถทำให้ SQLCMD ทำงานได้ไม่ว่าฉันจะพยายามทำอะไร


10

ไม่ว่าฉันจะทำอะไรฉันก็ไม่สามารถทำให้ SQLCMD ทำงานได้ ฉันพยายามเรียกใช้สคริปต์ที่มีขนาด 200mb + และไม่สามารถเรียกใช้จากแอปพลิเคชันเซิร์ฟเวอร์ sql ได้ดังนั้นฉันต้องดำเนินการผ่าน SQLCMD อย่างไรก็ตามทุกครั้งที่ฉันพยายามลงชื่อเข้าใช้หรือเรียกใช้สคริปต์สคริปต์จะปิดทันที

ฉันได้ติดตามยูทิลิตี้ sqlcmd โดย msdn

ฉันพยายามที่จะเปิดมันผ่านคำสั่งที่เชื่อถือได้ SQLCMD -EI รับ:

Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Named Pipes Provider: Could not open a connection to SQL Server [2]. .
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login timeout expired.
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..

ฉันได้ลองผ่านทางเซิร์ฟเวอร์ชื่อผู้ใช้และรหัสผ่านที่ชัดเจน:

C:\Users\MyUserName\Documents>SQLCMD -S DESKTOP-1N3OD6V\SQLEXPRESS -U DESKTOP-1N3OD6V\MyUserName-P MyPassword
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login failed for user 'DESKTOP-1N3OD6V\MyUserName'..

คำตอบ:


23

SQLCMD, เมื่อเรียกใช้โดยไม่ระบุชื่อเซิร์ฟเวอร์พยายามเชื่อมต่อกับอินสแตนซ์เริ่มต้นบนเครื่องโลคัล หากคุณไม่มีมันจะแสดงข้อผิดพลาดแรกที่คุณได้รับ ใช้-Sพารามิเตอร์เพื่อระบุชื่อเซิร์ฟเวอร์

หากต้องการใช้การตรวจสอบสิทธิ์ Windows ให้ใช้การ-Eตั้งค่าสถานะและคุณไม่จำเป็นต้องระบุชื่อผู้ใช้หรือรหัสผ่าน
ตัวอย่าง: SQLCMD -Smyserver\myinstance -E

ในการใช้การพิสูจน์ตัวตน SQL Server ให้ใช้พารามิเตอร์-Uและ-Pเพื่อระบุข้อมูลรับรอง
ตัวอย่าง: SQLCMD -Smyserver\myinstance -UsomeUser -PhisPassword

หากคุณระบุว่า-Uคุณไม่สามารถใช้ชื่อผู้ใช้ windows ได้: นี่สำหรับการเข้าสู่ระบบเซิร์ฟเวอร์ SQL หากคุณต้องการเลียนแบบผู้ใช้ windows อื่นให้เริ่มต้นพร้อมท์คำสั่งที่ปลอมเป็นผู้ใช้รายแรก

ตัวอย่าง:

  1. พร้อมรับคำสั่งเปิด
  2. ชนิด runas /USER:domain\username cmd
  3. พิมพ์รหัสผ่านสำหรับผู้ใช้ของคุณ
  4. วิ่ง SQLCMD

คุณสามารถได้ผลลัพธ์เดียวกันโดยคลิกขวาที่ลิงค์สำหรับ cmd และเลือก "Run as user users ... "


นี่เพิ่งช่วยฉันคืนที่ยาวนานของการกำจัดสิ่งสกปรกบนอินเทอร์เน็ต ขอบคุณ!
ริส Johns

ทุกวัยที่อยู่ในระบบพยายามทำสิ่งนี้ ขอบคุณ!
Joel Murphy
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.