Trong một bài viết hay khác Khắc phục sự cố: Kết nối với Máy chủ SQL khi Quản trị viên hệ thống bị khóa , tác giả cho chúng tôi biết rằng tất cả những gì chúng tôi phải làm để lấy lại quyền kiểm soát Máy chủ SQL của mình là
"Bắt đầu phiên bản SQL Server ở chế độ người dùng đơn bằng cách sử dụng tùy chọn -m hoặc -f. Bất kỳ thành viên nào trong nhóm Quản trị viên cục bộ của máy tính đều có thể kết nối với phiên bản của SQL Server với tư cách là thành viên của vai trò máy chủ cố định sysadmin. "
Thật không may, ý nghĩa của việc bắt đầu trong chế độ một người dùng không phải là vấn đề trực quan. Ngoài ra, ít nhất theo kinh nghiệm của tôi, tư cách thành viên trong nhóm Quản trị viên cục bộ của máy tính của tôi đã không cấp trạng thái sysadmin cho tài khoản "người dùng" của tôi.
Câu chuyện này đã bắt đầu khi giải quyết vấn đề thành viên trong miền của tôi bởi một máy chủ không phải DC (hậu quả của việc thay đổi ISP), tôi đã xây dựng lại DC thành Windows Server 2008 R2 từ năm 2008. Điều này đã giải quyết một vài vấn đề nhỏ nhưng không giải quyết được câu hỏi về thành viên của máy chủ errant. Phải mất một bản sửa lỗi được đề xuất trong ServerFault để thực hiện điều đó (trong trường hợp của tôi, đó là vấn đề đặt lại winock và tcpip).
SQL Server 2008 nằm trên máy chủ thứ hai đó, hiện là thành viên của miền. Đây là vấn đề. Như ai đó đã chỉ ra trên ServerFault, thông thường sẽ đẩy "hãy để người dùng hiện tại trở thành sysadmin", khi cài đặt Server 2008. Thông thường cũng không xem xét bất kỳ ai khác. Bởi vì danh tính người dùng duy nhất đó là một thành viên miền của một tên miền không còn tồn tại, nên không ai có quyền quản trị Sql Server.
Tôi đã đăng nhập với tư cách quản trị viên máy chủ cục bộ đã có mặt khi Sql Server được cài đặt, nhưng mặc dù điều này cho phép tôi truy cập vào Studio quản lý, tôi nhanh chóng phát hiện ra rằng BUILTIN \ Quản trị viên chỉ có vai trò máy chủ "công khai".
Sau nhiều nghiên cứu và thử nghiệm, tôi tình cờ thấy một bài viết đưa ra thông tin cụ thể về đăng nhập một người dùng http://technet.microsoft.com/en-us/l Library / ms180965.aspx :
C:\>cd \Program Files\Microsoft SQL Server\MSSQL10_50.1\MSSQL\Binn
C:\...>sqlservr.exe -m
Để chuẩn bị thực hiện bước này, bạn phải tắt Sql Server (chạy theo mặc định trong hầu hết các trường hợp). Sử dụng Trình quản lý cấu hình SQL để dừng "Máy chủ Sql."
Sau đó, trong một dấu nhắc lệnh, điều hướng đến vị trí tệp chương trình đó (hoặc tương đương trên máy của bạn) và đưa ra lệnh "sqlservr.exe -m". Nếu bạn thấy một luồng hoạt động được đăng nhập trong dấu nhắc lệnh của bạn, bạn đã thành công. Nếu không khởi động được thì có lẽ bạn đã chạy SQL Server. Tắt nó.
Cho phép cá thể người dùng đơn lẻ đính kèm cơ sở dữ liệu của nó. Khi ngừng hoạt động đăng nhập, hãy mở Management Studio. Bạn sẽ tự động ở chế độ một người dùng và do đó, bất kỳ tài khoản nào bạn đại diện sẽ là một sysadmin. Sử dụng sức mạnh đó để điều chỉnh thông tin đăng nhập bảo mật và vai trò máy chủ.
Trong trường hợp của tôi, tôi phải tạo lại các tài khoản miền trong miền mới, sau đó xóa tên của chúng trong SQL Server và xây dựng lại chúng (do tình huống SID / GUID), gán lại quyền cho các cơ sở dữ liệu cụ thể khi cần thiết.