SQL Server 2008 Expressのローカルインスタンスに接続する方法


222

SQL Server 2008 ExpressをVista SP1マシンにインストールしました。私は以前ここで2005を使用していて、古いSQL Server Management Studio Expressで問題なく使用しました。PC-NAME \ SQLEXPRESSインスタンスに問題なく接続できました(いいえ、PC-NAMEは私のコンピュータ名ではありません;-)。

2005とSQL Server Management Studio Expressをアンインストールしました。次に、マシンにSQL Server 2008 Expressをインストールし、SQL Server Management Studio Basicをインストールすることを選択しました。

ここで、PC-NAME \ SQLEXPRESSに接続しようとすると(いつものようにWindows認証を使用して)、次のメッセージが表示されます。

PC-NAME \ SQLEXPRESSに接続できません。SQL Serverへの接続を確立中にネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからなかったか、アクセスできませんでした。インスタンス名が正しいこと、およびSQL Serverがリモート接続を許可するように構成されていることを確認してください。(プロバイダー:SQLネットワークインターフェイス、エラー:26-指定されたサーバー/インスタンスの検索エラー)(Microsoft SQL Server、エラー:-1)ヘルプが必要な場合は、http//go.microsoft.com/fwlink?ProdName = Microsoft + SQLをクリックしてください。 + Server&EvtSrc = MSSQLServer&EvtID = -1&LinkId = 20476

SQL Server 2008をインストールしたとき、SQLEXPRESSをローカルインスタンス名として使用しました。私の知る限り、SQL Serverは、SQL Server構成マネージャーを通じて、リモート接続を許可するように構成されています。

それが言及しているヘルプリンクに行ったとき、ヘルプページは次のことを示唆しています。

  • サーバーでSQL Server Browserサービスが開始されていることを確認します。
  • SQL Serverセキュリティ構成ツールを使用して、SQL Serverがリモート接続を受け入れることができるようにします。SQL Serverセキュリティ構成ツールの詳細については、「サービスと接続のセキュリティ構成」を参照してください。

ええと、私の知る限り、私のシステムにはSQL Server Browserサービスがありません(MMCで1つ探しましたが、見つかりませんでした)。

また、SQL Serverセキュリティ構成ツールはSQL Server 2008には存在しません。Microsoft;-)のヘルプドキュメントをご覧ください。

今何をしたらいいのか途方に暮れている。私は2008年にアップグレードした後、今日完了したいと思っていた多くの作業をしました(私が一緒に作業している人は問題なくそれを起動して実行し、それは簡単だと私に言いました-彼はまた私がデータベースに関するものではるかに優れていますam)。誰が何が悪いのか考えている人はいますか?本当にありがたいです。数時間でこれが機能しない場合は、SQL Server 2005に戻ります(それでも機能する場合は、そうです)。

編集:Windowsファイアウォールをオフにしてみましたが、それでも解決しませんでした。また、SQL Server 2008のインストールディレクトリツリーの下に「Data」ディレクトリがないことに気付きました。インストールしたときに何か問題があったのではないでしょうか?

回答:


328

指定したServerNameを確認してください。これは、UserNameテキストボックスに表示される以下の名前と一致し、その名前の後に\SQLEXPRESS

接続ダイアログ


30
この質問は2歳ですが、これが私を助けてくれました。以前にコンピューター名が必要だったとは知らなかった\SQLEXPRESS
RoLYroLLs '29

6
私はこの質問がかなり古いことを理解していますが、多くの不満の後にこれを見つけました。エラーメッセージは役に立たない情報を提供する代わりにこの提案をするべきだと思います:(
mob1lejunkie

ありがとうございます!ドメイン名は本当に必要なものでした。
ルーベンスマリウッゾ2011

ドロップダウンボックスに、機能しないSQLEXPRESS whtnだけが事前に入力されているとは信じられません
Nicolas78

ありがとう、あなたはそれが「コンピュータ名」\ SQLEXPRESSがで作られて気づく作る
windsound

106

ローカルSQL Serverサービスを開始する

  • SQL構成マネージャーを開始します。 「スタート」->「Microsoft SQL Server 2008 R2」->「SQL Server構成マネージャー」をクリックします。
  • SQLサービスの開始: SQL Server(SQLEXPRESS)およびSQL Server Browserサービスを自動開始モードに設定します。各サービスを右クリック->プロパティ->サービスタブに移動

これにより、コンピュータを再起動した場合に、それらが再び起動するようになります。両方のサービスの状態が「実行中」であることを確認してください。

ローカルSQL Server 2008サービスの起動

ローカルSQLサーバーにログインして認証する

  • 次に、SQL Server Management Studioを開き、[オブジェクトエクスプローラーに接続]をクリックして、[サーバー名]を選択します。

[お使いのPC名] \ SQLEXPRESS

例: 8540P-KL \ SQLEXPRESSまたは(localhost)\ SQLEXPRESS

  • PC名を確認するには:[マイコンピュータ]-> [プロパティ]-> [コンピュータ名]タブを右クリックします。

  • 代替方法: Windows認証を使用してログイン:ユーザー名を使用[ドメイン] / [ユーザー名]

SQL Server 2008のユーザーアカウント設定

ユーザーアカウントの設定

  • 新しいログインアカウントを作成します 。SQL管理スタジオで->ローカルサーバーを展開->セキュリティ->ログインを右クリック->新しいログイン

  • 新しいユーザーアカウントにパスワード設定を設定し ます [パスワードポリシーを適用する]チェックボックスをオフにし、パスワードの有効期限を設定します。ユーザーはpwを変更する必要があります(これはローカルであるため)デフォルトデータベース->データベース

  • 新しいユーザーアカウントにロールを付与: ユーザーマッピングページ-> dbにマッピングし、db_ownerロールのステータスページを付与->接続とログインを有効にするアクセス許可の付与

SQL Server 2008ユーザー設定ローカルDB

ユーザーのアクセス許可/設定のセットアップ

  • すべての認証モードを有効にします。ローカルサーバーを右クリック-> [プロパティ]-> [セキュリティ]タブ-> [SQL ServerとWindows認証モードを有効にする]
  • TCP / IPを有効にする: SQL Server構成マネージャーを開く-> SQL Serverネットワーク構成-> SQLEXPRESSのプロトコル-> TCP / IPを有効にする
  • SQL Serverサービス を再起動します。TCP/ IPを有効にした後、SQL Server(SQLEXPRESS)を再起動する必要があります。

SQL Server 2008サーバーのアクセス許可

Springプロジェクトのデータベースプロパティファイル

  • database.url = jdbc:jtds:sqlserver:// [ローカルPCコンピューター
    名]; instance = SQLEXPRESS; DatabaseName = [db名];

  • database.username = [あなたのユーザー名] database.password = [あなたのパスワード]

  • database.driverClassName = net.sourceforge.jtds.jdbc.Driver

より大きなスクリーンショットと詳細な回答のより良いフォーマットを表示したい場合は、以下のブログ記事を参照してください 。SQLServer 2008のローカルインスタンスのセットアップブログ投稿:


3
ありがとうございました。これは束を助けました
Alan Waage 2013年

1
どうもありがとうございます!これは2014年版でも本当に役に立ちます!!
powernit

この答えが示すように、あなたが見ない場合 SQL Server 2014 Configuration Manager開始時に「構成マネージャー」を検索したときに(何年でも)は、有効なSQL Serverインスタンスがインストールされていない可能性があります。
ドン・チードル

40

(LocalDB)\ MSSQLLocalDBをサーバー名として使用したところ、すべてのローカルデータベースを確認できました。


Windows 10 64ビットでVS 2015とうまく連携しました。ありがとう
海賊X

SSMS 2014を使用して動作しました。ただし、これは、このローカルサーバーをインストールまたは作成した.NET Webアプリを実行したかどうかに依存していると思います。
Don Cheadle

これは、SQL Server Expressではなく、Visual Studioと共にインストールされるLocalDBです。この回答は実際にそれを探している人には役立ちますが、代わりにSQL Expressにアクセスする必要がある場合、またはSQLDBでデータベースを作成してLocalDBがフルテキスト検索のようにサポートしていない機能を利用する場合は、区別が重要です
IronSean

説明していただきありがとうございますIronSean
petrosmm

34

はは、ああ、男の子、私はそれを理解した。どういうわけか、SQL Server 2008をインストールするときにデータベースエンジンをインストールしませんでした。どうしてそれを逃したのかわかりませんが、それが起こったのです。


データベースエンジンがインストールされているかどうかを確認するにはどうすればよいですか?自動的にインストールされませんか?
eran otzap 2011

私の場合、クライアントツールコネクティビティをインストールするのを忘れていましたが、これはインストール時の[機能]ページのチェックボックスの1つにすぎません。とにかく、あなたは私を正しい方向に向けました。ありがとう。
RadekStromský、2012

私の場合、SQLサーバーのインストール中にデータベースエンジンサービスを取得できませんでした。インストール中に3つのオプションがあります。データベースエンジンサービスを取得した理由を教えてください。
Kavitha

私にもこの問題がありました。ダウンロードページはやや不可解です。管理インターフェイスや、サーバーコンポーネントがない他の選択肢の1つではなく、実際のサーバープログラムをダウンロードしてください。
アンソニー14

22

私はこの質問が古いことを知っていますが、SQL Server BrowserがサービスMSCで実行されていることを誰かが確認できるようにするために。SQL Server Express 2008 R2をインストールし、SQL Server Browserサービスを無効に設定しました。

  1. スタート->ファイル名を指定して実行-> Services.msc
  2. 「SQL Server Browser」->右クリック->プロパティを検索します
  3. スタートアップの種類を自動に設定-> [適用]をクリック
  4. 接続を再試行してください。

接続に関する私の問題はこれで終わりです。私は管理スタジオで着ることができましたが、アプリサーバーからは見えませんでした:)ありがとう!
スラブ

起動しなかったSQL Serverエージェントを除いて、これは私にとってはそれでした。使用していないときにリソースを大量に消費するため、オフにしました。
JTech 2012

15

他の人の役に立つかもしれないこの問題を解決しました。

最初とロードがMSSMSEまでそれがサーバーを持っていたときPC_NAME\SQLEXPRESS、私が接続しようとしたときに、それは私を与えたError: 26 - Error Locating Server/Instance Specified私は私のかどうかを確認するために、SQL Server構成マネージャに入ったので、SQL Server BrowserおよびSQL Serverサービスのみを代わりに言ってのことを見つけて、自動に実行し、設定されたSQL Server (SQLEXPRESS)ことは言いますSQL Server(MSSQLSERVER)

次に接続を試みましたがPC-NAME\MSSQLSERVER、今回SQL Network Interfaces, error: 25 - Connection string is not valid) (MicrosoftSQL Server, Error: 87) The parameter is incorrectはこのエラーをググりましたが、誰かがサーバー接続インターフェースでサーバー名としてPC-NAME\MSSQLSERVER単に使用する代わりに使用することを提案していることがわかりましたPC-NAME、これはうまくいくようです。

ここにリンクがありますhttp://learningsqlserver.wordpress.com/2011/01/21/what-version-of-sql-server-do-i-have/これは、MSSQLSERVERがデフォルトのインスタンスであり、次の方法で接続できることを説明していますホスト名のみを使用します。

SQL Server 2008を以前にインストールしたことがあるので、これが発生した可能性があります。


正解です。「サーバー接続インターフェイスでサーバー名としてPC-NAME(ここにPC名を入力)を使用してください」。できます。
開発者MariusŽilėnas15年

9

インスタンスのConfiguration ManagerとNetwork Configuration and ProtocolsでTCP / IPが有効になっていますか?それが問題かもしれません。


1
また、「sa」アカウントをデフォルトで無効にしているため、「sa」アカウントを有効にしてパスワードを与える必要があります。また、デフォルトでは「nt auth only」であるため、SQL認証を有効にする必要があります。
djangofan 2009

8
var.connectionstring = "server=localhost; database=dbname; integrated security=yes"

または

var.connectionstring = "server=localhost; database=dbname; login=yourlogin; pwd=yourpass"

6

私にとっては、「。」を使用することでしか機能させることができませんでした。サーバー名フィールド; しばらくの間、ユーザー名とサーバー名のさまざまな組み合わせを試してみました。サーバー(つまり、このファイル:SQLEXPR_x64_ENU.exe)のインストール中に、デフォルトの名前をMSSQLSERVERにデフォルトでチェックすることに注意してください。上記の投票数の多い回答は、個別の名前付き(つまり、複数のサーバーインスタンスが必要な場合)に最適です。

これらのビデオは両方とも私を助けました:


3

最初に確認する必要があるのは、SQL Server(MSSQLSERVER)が起動していることです。サービスコンソール(services.msc)に移動し、SQL Server(MSSQLSERVER)を探して、開始されていることを確認できます。そうでない場合は、サービスを開始します。

管理者特権のコマンドプロンプトからと入力してこれを行うこともできますnet start mssqlserver


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.