Không thể đăng nhập vào SQL Server ở chế độ Người dùng đơn


9

Tôi đã thử tất cả các loại kết hợp cờ khởi động khác nhau cho SQL Server 2008 R2 Express và tôi không thể vượt qua lỗi này:

Đăng nhập thất bại cho người dùng 'LOCALSERVER \ Administrator'. Lý do: Máy chủ ở chế độ người dùng. Chỉ có một quản trị viên có thể kết nối tại thời điểm này. (Máy chủ Microsoft SQL, Lỗi: 18461)

Tôi đã thử khởi động nó ở chế độ Người dùng đơn -m"SQLCMD"và cả -m"sqlcmd"Iv'e thậm chí đã thử khởi động -m"Microsoft SQL Server Management Studio - Query"và kết nối với các khách hàng phù hợp Tôi LUÔN gặp lỗi này. Tôi chắc chắn 99% rằng không có gì khác đánh cắp kết nối của tôi và khi kết nối với SSMS, tôi đảm bảo thực hiện phương thức "truy vấn kết nối mới" để đảm bảo nó chỉ sử dụng 1 kết nối.

Có ai khác có vấn đề này? Làm thế nào để tôi sửa nó và đăng nhập?

Câu trả lời:


16

Đây là một giải pháp tôi vừa tìm thấy vấn đề cũ này:

  1. Dừng tất cả các dịch vụ SQL
  2. Bắt đầu với -m
  3. Chạy MSSQL Management Studio với tư cách quản trị viên

Nếu không bắt đầu với tư cách quản trị viên (như tôi không), thì bạn sẽ nhận được quản trị viên chung đã kết nối. Thay vì nói bạn không thể kết nối vì bạn không phải là quản trị viên.

Một lỗi khó hiểu khác từ Microsoft. Tôi cho rằng vấn đề tương tự cũng sẽ tồn tại với sqlcmd

Trân trọng

Liam


3
Chạy SSMS với tư cách Quản trị viên là một điểm khá quan trọng. Nó đã không làm việc cho tôi mà không có điều đó.
MrEdmundo

Ugg, điều này chạy như công cụ quản trị là một nỗi đau. tôi thậm chí không phải vào chế độ -m.
Omzig

8

Mặc dù Microsoft nói khác đi, bạn không nên trích dẫn sau -m. Vì vậy, đối với SQLCMD, bạn sẽ làm -mSQLCMD. Tôi đã không thấy điều này nói ở bất cứ đâu, vì vậy tôi sẽ ghi lại ở đây. Nếu không có gì khác làm việc, cố gắng không trích dẫn nó.


1
Đây hoàn toàn là 100% vấn đề tôi gặp phải. sqlcmd làm việc ngay sau đó.
hlmtre

@Earlz: Không xóa dấu ngoặc kép là hoàn toàn, chính xác, hoàn toàn là vấn đề của tôi. (Và có lẽ đã cứu tôi cả một ngày làm việc. Cảm ơn bạn!)
techvslife

2

Không nên có bất cứ điều gì sau -m. Cú pháp sẽ giống như:

sqlservr.exe -c -f -m 

Sau đó, bạn đăng nhập vào ví dụ bằng sqlcmd và thực hiện các thay đổi cần thiết. Nếu bạn cố gắng sử dụng SQL Server Management Studio để đăng nhập, bạn sẽ không thể vì SSMS yêu cầu một số kết nối để đăng nhập.


-m có thể được tùy chọn thêm vào một "tên khách hàng", trong trường hợp của tôi, tôi cần nó là sqlcmd vì những thứ khác sẽ cố gắng kết nối và đánh cắp kết nối của tôi.
Earlz

Cảm ơn, đây là câu trả lời đúng cho tôi với SQL Server 2012. Dừng / tắt các dịch vụ SQL khác và chạy SSMS với tư cách quản trị viên.

0

Tôi chỉ có vấn đề chính xác này và tất cả những gì tôi phải làm là:

  • Dừng dịch vụ SQL chính cho ví dụ của tôi.
  • Bắt đầu làm đi.

Tôi đã kết nối lại trình duyệt SQL và nó hoạt động trở lại. Vì vậy, thay vì thử tất cả các bước bổ sung, mọi người thực sự nên thử phương pháp đơn giản nhất hoạt động trước khi leo thang đến những nỗ lực kỹ lưỡng hơn.


-3

Thay đổi kiểm soát tài khoản người dùng thành Không bao giờ thông báo đã giải quyết vấn đề cho tôi


Tại sao các downvote, khi nó là một giải pháp hoạt động?
Gerhard Powell

Mọi người hạ thấp nên giải thích tại sao đây không phải là một câu trả lời tốt. Nếu không, downvote là một câu trả lời vô ích.
K_Rol
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.