SQL Server 2008 R2インスタンスを搭載したサーバーがいくつかありますが、どのサーバーでもエイリアスが機能しません。
クライアントはTCP/IPを使用してこれらのサーバーに問題なく接続し、telnetはエイリアスに使用するIP /ポートで動作し、ファイアウォールの例外が作成されます。エイリアスを作成する場合を除いて、基本的にすべて正常に動作します。 TCP/IPまたは名前付きパイプ(ローカルサーバーまたは他のサーバーの1つ)を使用しているサーバー。
最新の累積的な更新をインストールしました。これはネイティブクライアントも更新します(これが問題の原因だと思います)が、まだ問題があります。奇妙な部分は、SQL Server 2005(ネイティブクライアント9)を使用してサーバー上にエイリアスを作成すると、2008r2インスタンスに接続できることです。助言がありますか?
ファイアウォールの問題、TCP/IPの問題ではなく、エイリアスを使用せずにサーバーに定期的に接続でき、エイリアスとの接続にのみ問題があることを確認した後、VistaとWindows7でこの問題が発生します。
解決策は、「SQLServer構成マネージャー」内の「SQLServerネットワーク構成」内に適切なポートを設定することです。
手順は次のとおりです。
[コンピューターの管理]-> [サービスとアプリケーション]-> [SQLServer構成マネージャー]-> [SQLServerネットワーク構成]に移動します
(コンピューター管理からではなく)SQLServer構成マネージャーを直接開くこともできることに注意してください。
次に、SQL Serverネットワーク構成で、まだ有効になっていない場合は、TCP/IPプロトコルを有効にします。
右クリックしてTCP/IPプロトコルのプロパティを開きます
次に、[IPアドレス]タブにいくつかのレコードがあります。
すべての人にTCPポート= 1433
X64オペレーティングシステムを使用している場合、2つの「SQLServerネットワーク構成」ノードがあります。1つは32ビット用で、もう1つは64ビット用です。両方のポートを確認してください。
幸運を
私にとっての答えは、32ビットのCLICONFGを使用することでした。 Management Studioとインストールしようとしたアプリケーションは、どちらも64ビットサーバー上の32ビットアプリケーションでした。話の教訓は、64ビットと32ビットの両方のエイリアスを作成することです。
私にとって重要だったのは、エイリアスを作成するシーケンスでした。次のリンクを参照してください。 W2K8 R2 SQLエイリアスは接続されません すべて、CliConfigエイリアス、およびConfigurationManagerネイティブクライアント構成エイリアスを削除することから始めました。次に、CLICONFGバージョンを最初に追加して、再作成します。
cLICONFGを実行します-TCPエイリアスを作成します(64ビットO/Sを使用している場合はデフォルトでx64バージョンになります)
SQL Server Configuration Managerから、「SQL NativeClient10.0構成」の下にエイリアスを作成します。
SSMSを使用して接続してみてください-それは私にとってはうまくいきました。そうでない場合は、32ビットのセットアップを試すことができます。エイリアスを使用する開発中のアプリケーションはx86であるため、とにかくこれを行いました。
名前付きインスタンスを使用していますか?もしそうなら、ポートが静的に割り当てられていることを確認しましたか?
デフォルトのインスタンスを使用している場合、x64プラットフォームで実行していますか? 32ビットと64ビットのエイリアスがあるため、データベースエンジンと同じボックスのSSMSは、ボックスが64ビットであっても、32ビットセクションのエイリアスを使用します。
マシン名、localhost、または。(dot)の代わりに、127.0.0.1などのIPアドレスを使用して試してください。
私にとってこれは、64ビットマシンでエイリアスを作成したが、ソフトウェアが32ビットアプリケーションとして実行されていたことが原因でした。
Sql Server Configuration Managerの場合、次のセクションでエイリアスがbothに設定されていることを確認してください。
そうすれば、プロセッサプラットフォームに関係なく利用できるようになります。もちろん、何らかの理由で1つのプラットフォームでのみエイリアスを使用できるようにしたい場合は、適切なエイリアスを設定し、もう一方は設定しないでください。
私の場合、接続にポートを配置した場合にのみ機能しました[server]\[instance]、[port]。例:DBSERVER\OPERATIONS、14
また、エイリアスが有効になっているリスナーを使用していることを確認します(サーバーが共有メモリ経由でのみリッスンしているときに、エイリアスがTCPを使用するように構成されていますか?)