không thể kết nối với máy chủ sql ở chế độ người dùng


10

Tôi đã bắt đầu SQL Server 2008 sqlcst02\inst01tham gia Single User Modebằng cách nối thêm ;-mvào cuối các tham số khởi động cho trường hợp này SQL Server Configuration Manager. Tôi đã dừng lại SQL Server Agentcho inst01ví dụ. Tài khoản của tôi là thành viên Domain Admin groupvà tôi đã cố đăng nhập bằng cách sử dụng sqlcmd -S sqlcst02\inst01và liên tục gặp lỗi khi dịch vụ bị lỗi Single User Modevà chỉ có một quản trị viên có thể đăng nhập. Tôi đã thử thêm ;-m"sqlcmd"vào các tham số khởi động để chỉ giới hạn kết nối sqlcmdnhưng tôi nhận được kết quả tương tự. Tôi đã thử đăng nhập như tài khoản của riêng tôi và đăng nhập với tư cách là tài khoản quản trị viên cục bộ. Tôi đã bắt đầu dấu nhắc lệnh với tư cách là chính mình và là quản trị viên nhưng tôi nhận được kết quả tương tự. Tôi đã cố gắng kết nối sử dụng ADMIN:sqlcst02\inst01trong SSMS. Không may mắn.

Tôi đang cố gắng đặt lại samật khẩu vì người quản trị trước không để lại thông tin này. Điều này thật điên rồ. Tôi đã làm điều này trước đây trên các máy khác mà không có vấn đề.


1
Tài khoản miền của bạn (rõ ràng hoặc thông qua một nhóm) có phải là thành viên của vai trò máy chủ sysadmin trên phiên bản SQL Server không?
Brian Knight

Tôi không biết. Tôi biết tôi là thành viên của nhóm Quản trị viên tên miền và nhóm SQL ADMINS và nhóm SQL ADMINS là thành viên của vai trò sysadmin trên tất cả các máy chủ khác. Nhưng tôi cá là đó không phải là trường hợp trên máy này.

SQL của bạn đang chạy trên một cụm? trong dịch vụ cụm đó có kết nối mở với SQL trước bạn. Một khả năng khác là bạn có một dịch vụ hoặc ứng dụng đang thiết lập kết nối với máy chủ SQL dưới dạng sysadmin trước khi bạn là quản trị viên có thể kết nối.
Người học SQL

Không có gì sai với kết nối, và không có gì sai với đăng nhập. Nếu bạn gặp phải lỗi nhìn thấy chế độ người dùng, bạn phải tìm ra cái gì khác đang kết nối với thể hiện và ngăn chặn nó ít nhất là miễn là bạn phải tự thiết lập kết nối.
Jon Seigel

Câu trả lời:


6

Một cách khác để khôi phục quyền truy cập vào SQL Server được nêu trong bài viết này và không yêu cầu khởi động lại trong chế độ người dùng:

http://www.mssqltips.com/sqlservertip/2682/recover-access-to-a-sql-server-instance/

Về cơ bản, tải xuống PSExec , sau đó chạy nó bằng dòng lệnh sau (điền vào vị trí SSMS.exe của bạn):

PsExec -s -i "C:\Program Files (x86)\...\ssms.exe"

Bạn sẽ được nhắc kết nối - chế độ xác thực sẽ là Windows auth và được mã hóa cứng NT AUTHORITY\SYSTEM. Sau khi kết nối, bạn sẽ có thể vào bảo mật và sửa mật khẩu sa, thêm chính mình làm quản trị viên, thêm quản trị viên khác, v.v.

Bài viết trên đây có một số lưu ý bạn nên đọc trước khi thử điều này, và bạn cũng có thể muốn xem lại các bình luận ở phía dưới.


1

Tôi vừa bị cắn bởi cái này. Những gì tôi đã quên là chạy nhắc nhở CMD với tư cách quản trị viên. Đây không phải là mặc định trong Windows 2008 R2. Một khi tôi đã làm điều này tất cả là tốt. Một trong những đồng nghiệp của tôi đề nghị vấn đề này và hey thế là tất cả đã được sửa. Tôi cảm thấy như một thằng ngốc nhưng tôi nghĩ tôi sẽ chia sẻ để cứu người khác.


0

OK - nếu bạn không ở trong vai trò sysadmin trên SQL Server, bạn sẽ không thể nhập thông qua chế độ một người dùng. Nếu bạn là quản trị viên trên máy chủ, bạn có thể sử dụng câu trả lời trong bài đăng này để giúp bạn.


Nếu bạn là quản trị viên trên máy chủ, bạn có thể đăng nhập thông qua chế độ người dùng như được mô tả trong tài liệu và nó sẽ xử lý kết nối như thể bạn đang ở trong sysadminvai trò đó. Mà theo như tôi có thể thấy là chính xác những gì bài đăng blog được liên kết từ liên kết khác của bạn làm.
Martin Smith

0

Tôi gặp vấn đề tương tự, ở đó tôi có một cụm bị hỏng vì tôi đặt maxmem thành 12 (thay vì 120000, số 0 của tôi bị phá vỡ rõ ràng)

Tôi nhận thấy rằng khi tôi sử dụng dấu nhắc tham số khởi động bình thường và sqlcmd -AI đang nhận được thời gian đăng nhập, và các thông báo lỗi cho tôi biết rằng DAC có thể không được kết nối.

Tôi đã bắt đầu các dịch vụ sql bằng cách sao chép các tham số khởi động từ trình quản lý cấu hình vào dấu nhắc quyền hạn quản trị và thêm các tham số -cf.

Trong một cửa sổ khác, tôi có thể sử dụng sqlcmd, nhưng không phải với tham số -A, chỉ là các kết nối tiêu chuẩn.

Tại thời điểm đó, tôi đã có thể chạy các truy vấn và sp_configured theo cách của tôi. Đây là với một tài khoản miền.

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.