2016-08-03 19 views
1

このエラーが表示され続け、リモートサーバー上のデータベースに接続できません。TinyTDS:構成ファイルにサーバー名が見つかりません

I次のようなデータベースへの接続文字列、与えられています:

development: 
    adapter: 'sqlserver' 
    host:  'qsss.gar.de\SQL2012,3000' 
    port:  1433 
    database: 'City' 
    username: 'user_me' 
    password: 'user_me##2009' 
:今

data source=qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=user_me;password=user_me##2009; 

を、私は次のようにその接続文字列に基づいて、database.ymlファイルを作成しました

私はサーバを試してみると、常にという設定ファイルにサーバ名が見つかりませんでした。エラーです。

opts[:port] ||= 1433 
     opts[:dataserver] = "#{opts[:host]}:#{opts[:port]}" if opts[:dataserver].to_s.empty? 
     connect(opts) // ERROR AT THIS LINE 
    end 

    def tds_73? 

この問題の原因を特定してください。

UPDATE:

私はまったく同じ接続パラメータと、SQLPro for MSSQLウィザードを使用してサーバーに接続することができます。

picture

それはTinyTDSを使用して、ウィザードからではなく、コードから作品!

+0

ホスト名は "qsss.gar.de"(またポートはおそらく3000)でもかまいません –

+0

いいえ、それでも問題はありませんが、SQLProウィザードのこれらのパラメータと正確に接続できますが、そうではありませんアプリケーションから。 – zwiebl

+0

ポートを3000に変更してホストから3000を削除してみてください。これはホスト名とは関係がないためです。 – engineersmnky

答えて

0

あなたの現在の構成がそのように、これは実際にqsss.gar.de\SQL2012,3000:1433

のようになります。ポートを指定し、ホスト値でそれを含めている2つのこと

  • まず苦しんでいるこの

    development: 
        adapter: 'sqlserver' 
        dataserver: 'qsss.gar.de\SQL2012:3000' 
        database: 'City' 
        username: 'user_me' 
        password: 'user_me##2009' 
    

    を試してみてください

  • 2番目にホストが解釈されるとき、バックスラッシュは倍増します。 TinyTDSとしてこれを解決する必要がありますqsss.gar.de\\SQL2012,3000:1433

dataserverオプションは、このオプションはhostname:port形式でバックスラッシュとポートをサポートしていますと言います。私はこれをテストしていませんが、ドキュメントによれば十分な解決策でなければなりません。

+0

あなたが書いたようにしてみましたが、最初のエラー行に戻ってきました: "設定ファイルにサーバ名が見つかりません" :( – zwiebl

+0

私に混乱を招くのは、コマンドラインで次のようになります。サーバー: "開始GET"/:: 1のための2016-08-03 16:56:02 +0200。 GETコマンドは、空のIPアドレスのようなものです、それは奇妙に見えますか? – zwiebl

+0

私は、私が接続できる「qsss.gar.de \ SQL2012」ではなく、単に「qsss.gar.de」になるようにホストを変更してください。問題はどこかで「\」を解析することです。私はこの部分を "SQL2012"とする必要がありますか? – zwiebl

0

私は同じ問題を抱えていたと私はconfig.ymlファイルに「データサーバ」「ホスト」パラメータを変更することによって、それを解決することができました。

また、アプリケーションを実行しているサーバーが、サーバーのIPを入力しない場合、データベースサーバーのDNS名を解決できるかどうかを確認します。

また、私はMicrosoft SQLデータベースを使用して、"TinyTds :: Error:構成ファイルにサーバー名が見つかりません"というエラーメッセージを解決できます。上記のファイルを変更した後にエラーが発生します。

関連する問題