1

共有ホスティングから仮想専用サーバー (両方とも GoDaddy) に移行しています。驚いたことに、今まではすべて順調でした。ただし、現在、Web アプリケーションはデータベース (サーバー上に作成したもの) に接続できないようです。

サーバー名などを指定するなど、いくつかのオプションを試しました。次に例を示します。

<add name="dbname" connectionString="Data Source=servername\SQLEXPRESS2008;Initial Catalog=theDB;User Id=servername\usernameAcceptedByMangmentStudio;Password=mypwd; Trusted_Connection=False;"/>

また:

<add name="dbname" connectionString="Data Source=.\SQLEXPRESS2008;Initial Catalog=theDB;User Id=usernameAcceptedByMangmentStudio;Password=mypwd; Trusted_Connection=False;"/>

また:

<add name="dbname" connectionString="Data Source=servername\SQLEXPRESS2008;Initial Catalog=theDB; Integrated Security=True;>

(これが私のローカルマシンでの動作です)。

何も機能していないようです。何か案は?前もって感謝します。

4

2 に答える 2

2

名前付きインスタンスとデフォルト インスタンスのどちらがあるかわからないようです。または、2つの違いさえあります。

最初に、どちらを持っているかを判断する最も簡単な方法を説明し、次に違いを説明します。

サーバーに接続する必要があります (リモート デスクトップまたは同様のものを使用できると思います)。次に、[コントロール パネル] > [管理ツール] > [サービス] を開きます。そのリストには、SQL Server という項目があり、次のようになります。

SQL サーバー (MSSQLSERVER)

またはこれ:

SQL サーバー (some_name)

前者はデフォルトのインスタンスです。これが表示される場合、接続文字列は次のようになります。

"Data Source=localhost;..."

後者は名前付きインスタンスです。これが表示される場合、接続文字列は次のようになります。

"Data Source=localhost\some_name;..."

両方が表示されている場合は、データベースを作成するために最初にこのインスタンスに接続した方法をお知らせください (おそらく両方は必要ないため、どちらを使用するかを決定する必要があります)。

それでも解決しない場合は、「うまくいかない」よりも具体的に説明する必要があります。サーバーまたはデータベースに接続できませんか? 実際のエラーメッセージは何ですか? データベースを作成したときに、ユーザー インスタンス / AttachDbFileName 機能を使用しましたか? 成功した Management Studio の接続ダイアログのスクリーン ショットを表示できますか? アプリはサーバー上にありますか、それともローカル マシン上にありますか? さまざまなローカル参照の代わりに IP アドレスを指定する必要がある可能性はありますか? 問題について GoDaddy サポートに連絡しましたか? 10 秒でサーバーに接続し、SQL Server インスタンスを参照する方法を正確に教えてくれるので、プログラミングに関する Q&A サイトよりもはるかに優れた機能を備えています。

違いとして、名前付きインスタンスは通常、SQL Server の複数の個別インスタンスをインストールする必要がある場合に使用されます。これは通常、プロダクション マシンの要件ではありません。複数のバージョンをテストしたり、さまざまな環境をシミュレートしたり、移行またはサイド バイ サイド アップグレード中に一時的に実行したりする必要がある開発マシンでは、より一般的です。既定のインスタンスは、そのままでポート 1433 をリッスンします。名前付きインスタンスは他のポートで実行され、通常、リモート マシンに対して SQL Browser サービスを使用して、それらに接続する方法を正確に識別します。

于 2012-05-31T00:49:26.027 に答える
0

DB に UserName と Password (SQL Server 認証) がある場合は、単にこれを使用します。

<add name="dbname" connectionString="Data Source=yourServerName;Initial Catalog=YourDB;User ID=YouruserId;Password=YourPassWord" providerName="System.Data.SqlClient"/>

参考までに: データベースのサーバー認証が SQL Server および WindowsAuthentication モードであることを確認してください

詳細については、SQL Server 2008 の接続文字列も確認してください。

よろしく

于 2012-05-30T23:04:40.647 に答える