Lưu ý: Rõ ràng tôi đã thay đổi tên máy chủ và IP thành tên giả.
Đây là những gì đang xảy ra. Tôi đã có một máy chủ mà tôi đang gọi MYSERVER
, đang chạy Microsoft SQL Server Express 2005. Ngay trên chính máy chủ này, tôi đã có một kết nối ODBC được thiết lập chỉ vào chính nó và nó đã hoạt động hoàn hảo. Tôi đăng nhập bằng Xác thực Máy chủ SQL (không phải xác thực Windows) và nó được thiết lập như sau:
Như tôi đã nói, một trong những hoạt động. Nhưng tiếp theo, tôi đã có một máy tính khác thuộc miền hoàn toàn khác / không phải trên mạng nội bộ, cần truy cập cùng máy chủ SQL này được lưu trữ trên MYSERVER. Bởi vì trên một miền khác, nó không nhận ra tên "MYSERVER"; Tôi phải trỏ nó vào địa chỉ IP của MYSERVER, mà chúng tôi sẽ nói là 123.456.789.012. Nhưng kết nối ODBC dường như không hoạt động ở đó. Tôi đã thử thiết lập nó như thế này:
Điều này không hoạt động. Khi tôi nhập tên người dùng và mật khẩu và nhấn Next, nó sẽ dừng trong 10 đến 20 giây và sau đó quay lại với lỗi sau:
Connection failed:
SQLState: '01000'
SQL Server Error: 1326
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
Connection failed:
SQLState: '08001'
SQL Server Error: 17
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.
Nếu tôi thử điều tương tự, nhưng thay đổi "máy chủ" từ 123.456.789.012\SQLEXPRESS
cũ thành đơn giản 123.456.789.012
, tôi sẽ gặp một lỗi khác:
Connection failed:
SQLState: '01000'
SQL Server Error: 14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Invalid Instance()).
Connection failed:
SQLState: '08001'
SQL Server Error: 14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]Invalid connection.
Bây giờ tôi biết bạn đang nghĩ gì. Bạn có thể nghĩ, "duh, có lẽ bạn đã không mở tường lửa cho cổng 1433, giả." Ngoại trừ tôi đã làm, và tôi đã xác minh điều này, vì tôi có thể chạy thành công :
telnet 123.456.789.012 1433
... từ dòng lệnh tất cả những gì tôi muốn. Vì vậy, tôi không biết phải làm gì. Tôi biết SQL Server tồn tại, hoạt động và kết nối ODBC có thể được thiết lập đúng; Tôi chỉ không chắc chắn những gì tôi đã sai trong cài đặt kết nối của mình đó là những lỗi này. Dựa trên lỗi sau mà tôi đã liệt kê, có vẻ như nó có thể kết nối với máy chủ, nhưng đơn giản là không thể tìm thấy trường hợp (vì tôi không chỉ định một lần đó). Vì vậy, điều đó có nghĩa là tôi chỉ cần sử dụng một số cú pháp khác nhau để chỉ định IP cùng với một tên thể hiện? Tôi làm gì? Cảm ơn trước.