Phản chiếu - Không thể truy cập địa chỉ mạng máy chủ


12

Tôi đã cài đặt SQL Server 2008 R2. Nó chứa ba trường hợp.

  1. Mặc định (MSSQLServer)
  2. Sơ thẩm
  3. Sơ thẩm

Tất cả những thứ này được đăng nhập như dịch vụ mạng ..

Sơ thẩm mặc định là máy chủ chính Sơ thẩm là Bản sao thứ hai là Máy chủ chứng kiến

Ban đầu, tôi đã sao lưu toàn bộ Sao lưu và sao lưu nhật ký giao dịch của cơ sở dữ liệu gốc của mình. Đã khôi phục nó về Sơ thẩm bằng cách giữ nguyên Tên cơ sở dữ liệu và Trạng thái khôi phục là Không khôi phục

Cuối cùng, tôi bắt đầu Phản chiếu và tôi nhận được hai thông báo lỗi hiển thị bên dưới.

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Câu trả lời:


12

Hãy thử một số bài kiểm tra kết nối cơ bản.

  1. Xác minh rằng 5022, 5023 và 5024 đang lắng nghe.
  2. Xác minh rằng tên máy chủ bạn đang sử dụng là chính xác.

Từ dòng lệnh:

netstat -an

nhập mô tả hình ảnh ở đây

Trên máy chủ của tôi, bạn có thể thấy 5022 đang lắng nghe.

Tiếp theo hãy chắc chắn rằng bạn có thể kết nối với các cổng đó qua telnet

telnet fully-qualified-server-name 5022

Vì nó đề cập đến trong phần Ghi chú của GUI Thuộc tính phản chiếu, ngay bên dưới trường nhân chứng, tên máy chủ phải có địa chỉ tcp đủ điều kiện.

nhập mô tả hình ảnh ở đây

Bạn chỉ nên nhìn thấy một màn hình đen. Trong ví dụ này tôi đã chọn một tên sẽ gây ra lỗi kết nối. Nếu bạn thấy "Không thể mở kết nối", thì (các) máy chủ được xác định là nhân bản, hiệu trưởng và nhân chứng không thể truy cập hoặc bạn không sử dụng đúng tên.

Máy khách telnet có thể được thêm vào dưới Tính năng trong Windows 2008.

Trong Windows 2008, khi bạn nhấp chuột phải vào Máy tính, bạn có thể thấy tên máy tính đầy đủ. Bạn cũng có thể ping nó từ dòng lệnh. ví dụ: ping myservername

Cập nhật

Vui lòng chạy các truy vấn sau trên mỗi phiên bản SQL Server và đặt kết quả vào câu hỏi của bạn. Nhiều mẹo khắc phục sự cố này đến từ: http://msdn.microsoft.com/en-us/l Library / ms189127.aspx

Hiển thị điểm cuối tcp

SELECT type_desc, port FROM sys.tcp_endpoints;

Hiển thị trạng thái của các điểm cuối phản chiếu

SELECT state_desc FROM sys.database_mirroring_endpoints;

Kiểm tra xem ROLE có đúng không

SELECT role FROM sys.database_mirroring_endpoints;

Hiển thị quyền cho điểm cuối

SELECT EP.name, SP.STATE, 
   CONVERT(nvarchar(38), suser_name(SP.grantor_principal_id)) 
      AS GRANTOR, 
   SP.TYPE AS PERMISSION,
   CONVERT(nvarchar(46),suser_name(SP.grantee_principal_id)) 
      AS GRANTEE 
   FROM sys.server_permissions SP , sys.endpoints EP
   WHERE SP.major_id = EP.endpoint_id
   ORDER BY Permission,grantor, grantee; 
GO

Việc đăng nhập tài khoản dịch vụ từ phiên bản máy chủ khác yêu cầu quyền CONNECT. Đảm bảo rằng thông tin đăng nhập từ máy chủ khác có quyền CONNECT. Để xác định ai có quyền CONNECT cho điểm cuối, trên mỗi phiên bản máy chủ, hãy sử dụng câu lệnh Transact-SQL sau đây.

Ví dụ đầu ra:

name    STATE   GRANTOR PERMISSION  GRANTEE
TSQL Local Machine  G   sqladmin    CO      public
TSQL Named Pipes    G   sqladmin    CO      public
TSQL Default TCP    G   sqladmin    CO      public
TSQL Default VIA    G   sqladmin    CO      public
Mirroring   G   SERVERNAME\Grantor  CO      SERVERNAME\Grantee

Grantor là tài khoản được cấp quyền kết nối (CO), Grantee là tài khoản có quyền kết nối

Từ dòng lệnh chạy ipconfig /allvà lưu ý những gì Tên máy chủ trả về.

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.