2013-05-06 21 views
11

Trong khi cố gắng kết nối từ xa SQL Server:Không thể kết nối: Adaptive Server không có sẵn hoặc không tồn tại

$tsql -S localhost -U myuser 

tôi đã nhận lỗi như:

locale is "en_US.UTF-8" 
locale charset is "UTF-8" 
using default charset "UTF-8" 
Error 20009 (severity 9): 
    Unable to connect: Adaptive Server is unavailable or does not exist 
    OS error 61, "Connection refused" 
There was a problem connecting to the server 

Kết quả của $tsql -C là như sau:

Compile-time settings (established with the "configure" script) 
         Version: freetds v0.91 
     freetds.conf directory: /usr/local/freetds/conf/freetds 
MS db-lib source compatibility: no 
    Sybase binary compatibility: no 
        Thread safety: yes 
        iconv library: no 
        TDS version: 5.0 
          iODBC: no 
         unixodbc: no 
      SSPI "trusted" logins: no 
         Kerberos: no 

Tôi đã tạo đường hầm cho máy chủ từ xa như:

$ssh -L 1433:db_server:1433 [email protected]_server 

Chuyển tiếp cổng cục bộ 1433 tới db_server. Tôi đã thử nghiệm. Đường hầm ssh của tôi hoạt động vì tôi có thể kết nối với cơ sở dữ liệu bằng Navicat (localhost on 1433). Tôi có thể telnet localhost trên cổng 1433.

+0

http://stackoverflow.com/a/26229487/2083490 –

Trả lời

4

tôi kinda làm cho nó làm việc bằng cách sửa đổi freetds.conf

từ

[global] 
    # TDS protocol version 
; tds version = 4.2 

để

[global] 
    # TDS protocol version 
tds version = 7.0 
+4

Điều này không hiệu quả đối với tôi: / –

1

này làm việc cho tôi với ASE 16.0 cài đặt và chạy trên Ubuntu 14.04 LTS, cả máy khách và máy chủ.

  • MÁY CHỦ: Đảm bảo có mục nhập trong/etc/hosts của máy chủ (sybaseServer). Trong một cài đặt Ubuntu 14.04 tiêu chuẩn, bạn sẽ không tìm thấy điều này, nhưng "127.0.1.1 sybaseServer". Nhưng sybase dường như phụ thuộc vào nó.

/etc/hosts
...
192.168.1.100 sybaseServer
...

  • KHÁCH HÀNG: Các mục trong freetds.conf là

[Sybase ]
máy chủ = 192.168.1.100
port = 5000
tds version = 5,0

Bây giờ bạn có thể kết nối với máy chủ của bạn:

$ TSQL -S Sybase -U sa

  • rõ ràng là bạn phải thay thế địa chỉ IP, servername vv với dữ liệu của riêng bạn