Microsoft SQL Server の sa のパスワードを忘れたらこうすると回復できる!

2014/9/07
Microsoft SQL Server の sa のパスワードを忘れてこうしたら回復した!

ある日突然SQL Server 2008 Expressにsaでログインできなくなった
VMWare で Windows Vista Ultimet 32Bit上で動かしていた

そうなった原因は不明、きっと何かをしたのだが、記憶にない
レポーティングツールを追加インストールしたのでその時何かしたのかもしれない。
VMware上で動かしているので、電源の落とし方がまずかったのかなー。


以下のページが一番参考になる
http://technet.microsoft.com/ja-jp/magazine/jj853293.aspx

手順
1.構成マネージャーですべてのサービスを停止する
2.コマンドプロンプトを管理者モードで立ち上げる
3.シングルユーザモードでSQLサーバを立ち上げる
cd \program files\microsoft SQL server\MSSQL10.SQLEXPRESS\MSSQL\Binn
sqlservr -m -s sqlexpress
  パラメータ説明 -m:シングルモードで立ち上げ、-s サーバ名:必ず小文字の-s
  このコマンドプロンプトは立ち上げたままにする

5.もうひとつ、コマンドプロンプトを管理者モードで立ち上げる
6.SQLコマンドでSQLサーバに接続
  この時、通常サーバ名は<コンピュータ名\SQLEXPRESS>とするのだが、
  <.\sqlserver>としないとつながらなかった。これが不思議???
  -Sは大文字のこと これをよく間違える!
sqlcmd -S .\sqlexpress
  1>と出れば成功!

7.sa以外の管理者モードのユーザを作成する
1>CREATE LOGIN SUPERUSER WITH PASSWORD='password'
2>GO
8.作ったユーザに管理者モードを付与する
1>SP_ADDSRVROLEROLLMEMBER SUPERUSER,'SYSADMIN'
10.2>GO
11.1>QUIT
これでいったん終了
sqlcmdとsqlservrを終了する
12.sqlservrを終わらせるには
  CTRL+break

13.再度、sqlservrを通常モードで立ち上げる
14.sqlservr -s sqlexpress
別のコマンドプロンプトで
15.sqlcmd -U superuser -P password -S .\sqlexpress
とログインして、saのパスワードの再設定をする
1>ALTER LOGIN sa WITH PASSWORD = 'password'
2>GO
1>QUIT
これで完成!
saでパスワードpasswordで入れるようになる

以上


SQL Serverの-mで立ち上げた時のログはGoogleDriveに保存した。




コメント

このブログの人気の投稿

VMPlayer6 windows8.1 この仮想マシンを構成済み設定でパワーオンするのに十分な物理メモリがありません。