こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

MS SQL2005での接続エラー

MS SQL Server2005 Enterprise Editionを使用しているのですが、突如接続エラーが出てしまうようになりました。
メッセージは、"Cannot connect to XXX(サーバー名)"で、メッセージの最後には、(Microsoft SQL Server, Error:2)と出ています。
管理者権限で行っていますし、そもそも今までと設定などを全く変えていないので、原因がよくわかりません。
ちなみにOSはWindows XP SP2です。

教えていただけると助かります。

投稿日時 - 2008-11-13 10:24:41

QNo.4474871

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

7人が「このQ&Aが役に立った」と投票しています

回答(7)

ANo.7

master DBはサーバレベルの情報を持っています。
他のDBからmasterファイルを持ってきて起動させるのは問題有りません。
上書きだと心配だと思いますので、以下の要領でバックアップを取って下さい。
現状インスタンスが立ち上がっていないと推測できるので、
現状のmdf,ldfファイルを物理的にバックアップ(ファイルのコピー)を取って下さい。
※前回の書き込みの手順です。

とはいえ以下のエラーが出ているので、恐らくSQLServerのDBの異常によるものではないかと思います。
「Service Principal Name」エラーと出ています。なのでDBレベルではなくインスタンスレベルの問題だと推測できます。なのでmasterDBの対応を行なったとしても解決にはならないと考えられます。
よってまずはエラーの出ている箇所を率直に受け取りSPN部分の障害を取り除けばよいかと考えられます。
「The SQL Network Interface library could not deregister the Service Principal Name (SPN) for the SQL Server service. Error: 0x54b. Administrator should deregister this SPN manually to avoid client authentication errors.」

※本番環境であれば気軽に?アプリケーションの追加は宜しくありません。今回の問題は恐らく後からインストールしたアプリケーションが悪さをしてしまったためかな?と考えられます。
(サーバの重要度がどれ位なのか分からないので一概には言えないのかも知れませんが・・・)
本来であれば検証環境で同等の確認後に本番に適用できたらよかったですね。

投稿日時 - 2008-11-14 01:19:10

補足

ありがとうございます。
おっしゃる通りの手順で試してみます。

あとから追加したアプリケーションはアドビのCreative Suiteなのですが、これをSQLをインストールしたときとは別のユーザでログオンしてインストールしたのが悪かったのかもしれません。

投稿日時 - 2008-11-14 06:47:33

ANo.6

他の掲示板のリンクで申し訳ないのですが、
以下の内容が参考になりませんか?
リンク先のページで紹介されているツールはXPにも対応してあるようなのでLIVERTY777さんの環境でも利用可能かと思います。



Windows XPでの利用ということから恐らく開発環境であろうと思いますので、根本的な解決方法ではないのですが、
以下の対応では如何ですか?
・.mdf,.ldf,ndf(あれば)をバックアップ
・SQLServerの再インストール
 ※そもそも再インストール不可の環境になっている可能性があります。
・バックアップしたユーザdbのアタッチ
ユーザDBが破損していなければ復帰できると思います。
必要に応じてmsdb,modelも戻して上げれれば良いかなと思います。
(インスタンスを止めて、バックアップしたファイルで入替えて上げればOKです。)
・最後に念のため「dbcc CHECKDB」を実行してエラーが無ければOKかなと思います。

参考URL:http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=1791938&SiteID=7

投稿日時 - 2008-11-13 17:18:39

お礼

ありがとうございます。
参考URL、同じエラーメッセージですので、参考にさせていただきます。

XPといえど、実は本番環境でして。。。
SQLの再インストールは、インスタンスがうまく消えないので結構苦労した経験がありまして、できるだけ避けたく思っています。
もちろん最終的な選択肢としては再インストールになりますが、もうちょっといろいろ頑張ってみます。

投稿日時 - 2008-11-14 00:12:19

ANo.5

t4t

SQL Server が起動されていないとのことですので、
イベントビューワのアプリケーションログや、
SQLServerをインストールしたディレクトリの下にあるどれかのMSSQL\LOGディレクトリ内にあるログで、起動されていない理由を確認してください。
#4さんのご指摘のようにmasterが破損しているのかもしれませんね。

投稿日時 - 2008-11-13 12:43:28

補足

みなさま、いろいろ本当にありがとうございます。
ログを見たところ、最後に
The SQL Network Interface library could not deregister the Service Principal Name (SPN) for the SQL Server service. Error: 0x54b. Administrator should deregister this SPN manually to avoid client authentication errors.
とありました。
これは何か関係あるのでしょうか。

投稿日時 - 2008-11-13 16:45:07

お礼

ありがとうございます。
お礼をつけさせていただくのを失礼ながら忘れていましたので、今付けます。

masterを障害の発生しているSQLに、通常通り動いているSQLから持って行く場合、上書きコピー的になると思うのですが、この二つの環境はネットワークもログオンユーザもインスタンスも異なっています。それでもMasterを上書きしても問題ないでしょうか。
かさねがさねで申し訳ありません。

投稿日時 - 2008-11-14 00:15:36

ANo.4

失礼しましたる
SQLServer自体が起動されなくなったのですね。
恐らくmasuterDB辺りが破損しているのではないでしょうか?

起動されていないと考えると、
別のSQLServerからmasterDBをコピーしてきて、
現在起動させたいSQLServerインスタンスのマスターの箇所に置き起動を試みてください。
起動後つなげたいユーザーDBを接続させてみてください。

masterDBのバックアップがあればインスタンス起動後にmasterDBをリストアしても良いかなと思います。


※つながらないのと起動していないでは対応が全く違うのでそこらへんの調査は最初に出来ると良いですね!

投稿日時 - 2008-11-13 12:28:07

ANo.3

いきなり変わることは無いはずですが、
・ポート番号が変わったとかって事は無いですよね?
・インスタンス名の設定がされていない。
 (追加で別インスタンスをインストールした)
以上の2点は大丈夫ですか?

投稿日時 - 2008-11-13 12:20:24

補足

ポート番号やインスタンスに関して設定変更はしていませんが、
あえて言えばアドビのCreative Suite 3 をインストールした位です。
ただ、SQLはCドライブに、アドビはDドライブに入れています。

投稿日時 - 2008-11-13 16:08:38

ANo.2

SQLServer の動いているマシンのOSがOSはWindows XP
で別のクライアントマシンから接続をしようとしてエラーになったという認識で宜しいでしょうか?

その場合ですとOS同士の認証が切れている可能性があります。
一度クライアントマシンからサーバOSに対してOS同士で認証を取ってください。
その後クライアントからSQLServerに接続してみて下さい。

投稿日時 - 2008-11-13 12:07:20

補足

いえ、他のマシンからの接続のエラーではなくて、SQLをインストールしているマシン自体でManagement Studio を起動しようとすると、接続エラーになってしまうのです。

すいませんが、よろしくお願いいたします。

投稿日時 - 2008-11-13 12:13:53

ANo.1

t4t

念のため、SQL Serverそのものは起動されているか確認してください。

あと、環境を確認したいのですが、
WindowsXPsp2にEnterpriseEditionのサーバーエンジンを入れ、
同じマシンにManagementStudioが入っていて、
そのManagementStudioで接続しようとすると、当該エラーメッセージが表示されるということでしょうか。

それとも別のサーバにEnterpriseEditionのサーバーエンジンが入っていて、
クライアントがWindowsXPsp2だということでしょうか。

投稿日時 - 2008-11-13 11:03:18

補足

WindowsXPsp2にEnterpriseEditionのサーバーエンジンを入れ、
同じマシンにManagementStudioが入っていて、
そのManagementStudioで接続しようとすると、当該エラーメッセージが表示されるということでしょうか。
⇒はい、その通りです。
ワークグループで使用していますが、他のマシンからの接続以前に、SQLがインストールされているマシン自体でSQLが起動されなくなってしまっているのです。

すいません。。

投稿日時 - 2008-11-13 12:08:54