2012-04-04 56 views
12

Khi tôi muốn kết nối với SQL Server 2008, tôi nhận được tin nhắn này:Lỗi trong đăng nhập để SQL Server

Cannot connect to server.
Additional Information: Cannot open user default database. Login failed. Login fail for user 'sa'. (Microsoft SQL Server. Error:4064)

Làm thế nào để giải quyết lỗi này?

Trả lời

25

Lỗi này (Microsoft SQL Server.Error:4064) xảy ra khi cơ sở dữ liệu bị xóa là mặc định cho một số người dùng cơ sở dữ liệu.

Khi người dùng cố gắng đăng nhập và cơ sở dữ liệu mặc định của họ bị xóa, lỗi sẽ hiển thị.

Cannot open user default database. Login failed. Login failed for user ‘UserName’. (Microsoft SQL Server, Error: 4064)

Cách giải quyết này được cung cấp here, được tóm tắt bên dưới.

Các giải pháp để đăng nhập vào là:

  1. Từ Kết nối thoại server, nhấp Tùy chọn
  2. Thay đổi giá trị của Kết nối với cơ sở dữ liệu: đến bất kỳ cơ sở dữ liệu hợp lệ trên máy chủ

Giải pháp vĩnh viễn để sửa máy chủ là chạy SQL như:

ALTER LOGIN [test] WITH DEFAULT_DATABASE = master 
GO 
+3

Lỗi này sẽ xảy ra bất cứ khi nào cơ sở dữ liệu mặc định của người dùng ngoại tuyến. – Morv

2

Trong trường hợp của tôi, điều này là do người dùng là thành viên của nhiều nhóm, mỗi nhóm có thông tin đăng nhập riêng. Tất cả các thông tin đăng nhập của các nhóm cần phải đặt cơ sở dữ liệu mặc định của họ thành cơ sở dữ liệu có thể truy cập được cho người dùng.

Các sự cố có thể xảy ra khác được liệt kê tại https://support.microsoft.com/en-us/kb/307864.

Bạn có thể đặt mỗi lần đăng nhập với một cơ sở dữ liệu mặc định không hợp lệ để có một cơ sở dữ liệu mặc định của thạc sĩ (truy cập đến tất cả các thông tin đăng nhập):

cơ sở dữ liệu
alter login [loginname] with DEFAULT_DATABASE = master 
0

Giá trị mặc định người sử dụng không có sẵn tại thời điểm kết nối để lỗi này tin nhắn sẽ bật lên. SO kiểm tra máy chủ nào bạn đã gắn thẻ cho người dùng cụ thể đó để truy cập cho dù đó là chế độ trực tuyến hay ngoại tuyến.

Các vấn đề liên quan