Làm thế nào để khắc phục lỗi "Đã xảy ra lỗi liên quan đến mạng hoặc lỗi đối với trường hợp cụ thể trong khi thiết lập kết nối với máy chủ SQL"?
“Đã xảy ra lỗi liên quan đến mạng hoặc một trường hợp cụ thể khi thiết lập kết nối với SQL Server. Máy chủ này không tìm thấy hoặc không thể truy cập được. Xác minh rằng tên phiên bản là chính xác và SQL Server được cấu hình để cho phép các kết nối từ xa. (Nhà cung cấp: Nhà cung cấp đường ống được đặt tên, lỗi: 40 - Không thể mở kết nối với SQL Server) (Microsoft SQL Server, Lỗi: 53) ”.
Bài viết thảo luận về danh sách kỹ lưỡng các phương pháp khắc phục sự cố có thể được sử dụng để kết nối với máy chủ SQL. Trước hết, chúng ta sẽ thảo luận về các vấn đề phát sinh khi bạn cần kết nối với máy chủ từ xa bằng địa chỉ IP vì đây là nguyên nhân phổ biến nhất. Các bước này được viết trong “SQL Server 2008 R2 ″ trên "Windows 10 ″, nhưng chúng cũng có thể được sử dụng trên các phiên bản khác với những sửa đổi nhỏ.
Lỗi thường có nghĩa là “Máy chủ SQL không được tìm thấy ” hoặc là "Cổng TCP không xác định hoặc sai ”, hoặc là nó có thể bị chặn bởi "tường lửa".
Phương pháp 1: Thu thập thông tin về phiên bản của SQL Server.
Trong phần này, chúng ta sẽ thảo luận về các cách để kiểm tra phiên bản của Máy chủ SQL đang hoạt động hay không, cùng với các phương pháp để khắc phục nếu nó không hoạt động.
Bước 1. Kiểm tra xem phiên bản SQL Server đã được cài đặt và đang hoạt động hay chưa
Trước hết, đăng nhập vào máy tính lưu trữ phiên bản máy chủ SQL. Bây giờ, hãy làm theo các bước sau để mở Dịch vụ trong Windows.
- Bấm vào “Menu bắt đầu” và sau đó chỉ vào "Tất cả các chương trình".
- Bây giờ, hãy trỏ tới SQL Server, sau đó trỏ tới “Công cụ cấu hình”
- Nhấp chuột “Trình quản lý cấu hình máy chủ SQL”.
- Bây giờ chọn “Dịch vụ SQL Server” và kiểm tra trong ngăn bên phải xem phiên bản của công cụ cơ sở dữ liệu có đang chạy hay không.
- Hơn nữa, điều này có thể được mở trực tiếp bằng cách gõ “Services.msc” bên trong CHẠY và bấm vào đồng ý. Màn hình sau xuất hiện.
Bây giờ, hãy kiểm tra xem công cụ cơ sở dữ liệu đã được cấu hình để chấp nhận các kết nối từ xa hay chưa. Để kiểm tra điều này, hãy làm theo các bước sau.
- Sau khi các dịch vụ đã được mở, bạn có thể thấy công cụ cơ sở dữ liệu trong ngăn bên phải. Các “MSSQLSERVER” là một phiên bản không tên mặc định. Một phiên bản mặc định chỉ có thể là một.
- Trong trường hợp của “SQL Express”, trường hợp mặc định sẽ là “SQLEXPRESS” trừ khi nó được đổi tên bởi ai đó trong quá trình cài đặt.
- Kiểm tra xem phiên bản bạn đang cố gắng kết nối có trùng tên như được cung cấp trong các dịch vụ hay không.
- Ngoài ra, hãy xác nhận xem trạng thái của phiên bản là "ĐANG CHẠY".
- Hơn nữa, nếu bạn đang cố gắng kết nối với ứng dụng tức thì được đặt tên, hãy kiểm tra kỹ xem “Dịch vụ trình duyệt SQL Server” đang chạy. Vì vậy, bạn cần phải kiểm tra xem “Dịch vụ trình duyệt SQL Server” được khởi động trên máy chủ mà SQL Server được cài đặt.
- Trong trường hợp, công cụ cơ sở dữ liệu không chạy thì bạn cần khởi động lại nó. Vì vậy, để bắt đầu "Cơ sở dữ liệu", trong ngăn bên phải, nhấp chuột phải vào “Công cụ cơ sở dữ liệu” (công cụ mặc định “MSSQLSERVER”), và sau đó nhấp vào "Khởi đầu".
Bước 2. Lấy địa chỉ IP của máy tính.
Để làm điều này, hãy làm theo các bước sau.
- Trước hết, từ menu bắt đầu, hãy nhấp vào "CHẠY" và gõ "Cmd" và hãy nhấn đồng ý.
- Trong dấu nhắc lệnh loại cửa sổ “Ipconfig” và ghi chú lại IPV4 và Địa chỉ IPV6. Mọi người chủ yếu sử dụng Địa chỉ IPV4.
Bước 3. Lấy số cổng TCP được sử dụng bởi máy chủ SQL
Làm theo các bước sau để lấy số cổng TCP được sử dụng bởi máy chủ SQL
- Sử dụng “SQL Server Management Studio” (SSMS) kết nối với phiên bản của máy chủ SQL
- Từ "Trình khám phá đối tượng" mở rộng "Sự quản lý", mở rộng “Nhật ký máy chủ SQL” và nhấp vào nhật ký hiện tại mà bạn phải áp dụng bộ lọc.
- Để áp dụng bộ lọc, hãy nhấp vào áp dụng bộ lọc và nhập "Máy chủ đang nghe" trong Tin nhắn chứa hộp văn bản. Nhấp vào áp dụng bộ lọc và nhấn ok.
- Một tin nhắn như “Máy chủ đang nghe trên [‘ bất kỳ ’
1433]” nên được hiển thị. Thông báo cho thấy rằng phiên bản SQL Server đang lắng nghe trên tất cả các máy tính có Địa chỉ IP IPv4 và Cổng TCP Là1433 (mặc định). - Đối với nhiều trường hợp, cổng TCP sẽ khác nhau đối với mỗi trường hợp.
- Nếu nó không phải là một trường hợp thì hãy nhấp vào "Tất cả các chương trình", trỏ đến các công cụ cấu hình máy chủ MS SQL, “Quản lý cấu hình máy chủ SQL” và nhấp chuột phải “TCP \ IP” và nhấp vào bật và khởi động lại máy chủ SQL để cho phép các thay đổi tạo ra tác động.
Phương pháp 2: Kích hoạt giao thức cho cổng 1433
Kết nối với "Cơ sở dữ liệu" từ một máy tính khác không được phép trong nhiều “Máy chủ SQL” triển khai trừ khi quản trị viên sử dụng "Quản lý cấu hình" để cho phép nó. Các bước sau đây cần được thực hiện để thực hiện việc này.
- Bấm vào “Menu bắt đầu” và sau đó chỉ vào "Tất cả các chương trình"
- Chỉ về phía “SQL Server 2008 R2”
- Chỉ về phía “Công cụ cấu hình”và sau cú nhấp chuột này “Trình quản lý cấu hình máy chủ SQL”.
- Mở rộng “Cấu hình mạng SQL Server ”.
- Lựa chọn "giao thức cho máy chủ MSSQL ”. Bấm vào “TCP \ IP” trong bảng điều khiển bên phải.
- Trong tab "Giao thức" thiết lập kích hoạt như "Đúng".
- Chọn “Tab địa chỉ IP” từ cửa sổ và đặt “Cổng TCP ” tương đương với "1433″ bên trong “Tất cả IP” mục nhập.
- Bây giờ khởi động lại công cụ cơ sở dữ liệu để thực hiện các thay đổi để lại tác động của chúng. Để thực hiện việc này từ ngăn bên trái, hãy chọn dịch vụ máy chủ SQL và sau đó từ ngăn bên phải, bấm chuột phải vào phiên bản công cụ cơ sở dữ liệu và nhấn "khởi động lại".
Phương pháp 3: Tạo ngoại lệ Tường lửa
Đôi khi tường lửa của Windows bật và chặn các liên kết từ một máy tính khác. Để khắc phục, hãy làm theo các bước sau.
- Nhấp vào “Bắt đầu” và bắt đầu nhập “Firewall.cpl” trong hộp chạy.
- Bạn nhận được “khung cấu hình” cho Tường lửa của Windows bằng cách chạy “Firewall.cpl” chỉ huy. Bạn có thể chuyển tường lửa "Bật / tắt" với các ngoại lệ và các cài đặt khác được áp dụng tại đây. Kiểm tra trạng thái tường lửa và bật nó lên để kích hoạt nếu tường lửa đang tắt. Nếu bạn vừa bật tính năng này, tường lửa của bạn sẽ chặn mọi yêu cầu kết nối “SQL Server” đến máy tính của bạn tại thời điểm này. Thông qua việc thực hiện một số ngoại lệ nhất định, bạn cần định cấu hình tường lửa để cho phép truy cập vào công cụ cơ sở dữ liệu SQL Server.
- Nhấp vào “Cài đặt nâng cao”
- Chúng tôi cần tìm hiểu về các cổng được sử dụng cho “Máy chủ SQL" và "Trình duyệt máy chủ SQL”Khi xử lý các cấu hình tường lửa“ SQL Server ”. Cả hai đều tham gia vào việc thiết lập một “bức tường lửa" cho “Máy chủ SQL” . Do đó, cần phải đi riêng qua cả hai khái niệm.
- Bạn có thể cho phép hoặc chặn các nỗ lực lưu lượng đáp ứng các yêu cầu trong quy tắc để truy cập vào máy tính. Theo mặc định “Inboundgiao thông" bị chặn, bạn cần thiết lập“Inboundqui định" để cho phép lưu lượng truy cập đến máy tính. Nhấn vào Quy tắc đến từ ngăn bên trái của “Tường lửa Windows với Nâng caoBảo vệ”Và nhấp vào Quy tắc mới từ“Hành động” cửa sổ.
- Lựa chọn "Hải cảng" Dưới "Qui địnhKiểu" và hãy nhấn “Kế tiếp" cái nút
- Bây giờ chọn “Các cảng địa phương cụ thể” và đặt nó thành 1433
- Bây giờ chọn "Cho phépkết nối ” bên trong"Hoạt động" hộp thoại và nhấn nút Tiếp theo
- Đưa ra quy tắc “tiêu đề" trên màn hình này và nhấn nút “Hoàn thành" cái nút.
- Lựa chọn "Quy tắc tùy chỉnh ” từ "Quy tắc mới" chuyển hướng
- Nhấp chuột "Tùy chỉnh"
- Lựa chọn "Phiên bản công cụ cơ sở dữ liệuDịch vụ" từ “Tùy chỉnh dịch vụCài đặt ” Dưới“Áp dụng cho cái này dịch vụ"và nhấp vào"ĐỒNG Ý" cái nút
- Đặt tên cho quy tắc và nhấp vào kết thúc
- Cũng thêm “Sqlservr.exe” thường nằm ở “C: \ Program Files (x86) \ Microsoft SQL Server \ MSSQL.x \ MSSQL \ Bin” (hoặc kiểm tra đường dẫn thư mục thực của bạn) đến đường dẫn, hãy kiểm tra số lượt cài đặt của bạn để biết đường dẫn thư mục thực) và cổng có giá trị mặc định là “1433”. Ngoài ra, hãy kiểm tra chuỗi kết nối của bạn.
Phương pháp 4: Kiểm tra kết nối cục bộ
Một trong những lý do gây ra lỗi này là nếu chúng tôi cung cấp tên máy chủ sai, điều này sẽ dẫn đến lỗi. Như được thấy trong hình bên dưới, tên máy chủ được cung cấp là “DESKTOP-UD88TLT1” trong khi tên máy chủ chính xác là “DESKTOP-UD88TLT”. Vì vậy nó sẽ không thể kết nối với máy chủ dẫn đến lỗi "không thể kết nối tới máy chủ". Đây là lý do cơ bản nhất gây ra lỗi, vì vậy chúng ta nên kiểm tra nó trước nếu làm việc cục bộ.
Lỗi phát sinh khi kết nối cục bộ với máy chủ SQL với tên máy chủ sai Trong trường hợp bạn đang sử dụng phiên bản express theo tên máy chủ của mình, hãy thêm “\ SQLEXPRESS” như trong hình bên dưới.