木曜日, 3月 27, 2008

ユーザー 'sa' はログインできません???

IISの起動問題を解決すると、今度は
「System.Data.SqlClient.SqlException: ユーザー 'sa' はログインできませんでした。このユーザーは SQL Server の信頼関係接続と関連付けられていません」

プログラム側の接続設定は正しいものの、
なにやらSQLServer自体がSQLServer認証モードでログインできなくなっている。
SQLServerのプロパティーのセキュリティで、
Windows認証とSQLServer認証の両方を使えるように修正してから再起動してもNG。

SQLServerインストール時、Windows認証モードでインストールすると、
後で両方の認証モードに切り替えてもsaのログインは最初には無効になるのである。
http://msdn2.microsoft.com/ja-jp/library/ms366351.aspx  のメモを参照

saのログインを有効にするためには認証モード切替後、以下のスクリプトを実行する必要がある。
ALTER LOGIN sa ENABLE ; 
  GO 
  ALTER LOGIN sa WITH PASSWORD = '' ; 
  GO
注:の全部を有効なパスワードに書き換える。
http://msdn2.microsoft.com/ja-jp/library/ms188670.aspx

以上の手順でSQLServerに接続成功。

SQLServerってかなり面倒だね(Oracleに比べって?)

1 件のコメント:

Sai さんのコメント...

Windows認証モードでログインし、
サーバーのプロパティーを開き
セキュリティタブからサーバー認証を
「SQLServer認証モードとWindows認証モード」を選択しOKクリック。
こうしないと、saではログインできない。