- - PR -
MSDE のデータベース復旧方法
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-12-05 11:42
MSDE SP3 のデータベースが壊れてしまいました。
イベントログには、エラーで次の様なメッセージがありました。 >17066 >SQL Server アサーション: ファイル: <recovery.c>、行=2440 >失敗したアサーション = 'seenCktptEnd' とりあえず、障害前の HDD のコピーから復旧したのですが、ちょっと発生件数も多くなってきてもうちょっと簡便に復旧できる方法がないものかと探しております。 いろいろ調べてはみたのですが、osql でもログインできる状態でなく、MSDE のため、SQL Server 用の手順がつかえず、復旧方法がみつからず困っております。 どなたか、データベースの復旧方法をご存知ないでしょうか? もちろん、データベースのバックアップは、取得してあります。 |
|
投稿日時: 2005-12-05 12:31
msoです。
なぜOSQLが使えないのかわりませんが、 OSQLが使えるのであればBACKUP DATABASEコマンドを使う方法がありますね。 osql -U sa -P sa -Q "BACKUP DATABASE dbname TO DISK='C:\backupDB.BAK'" |
|
投稿日時: 2005-12-05 12:36
返信ありがとうございます。
記述が不足していたようで、申し訳ありません。 データベースが壊れているために、データベースサービスが起動していないのです。 そのため、osql で、データベースに接続することができないのです。 |
|
投稿日時: 2005-12-05 12:49
であればMSDEを再インストールし、サービスが起動できる状態になってから、バックアップしたDBをアタッチしましょう。
|
|
投稿日時: 2005-12-05 13:10
アドバイスありがとうございます。
MSDE に再インストールはすでに試しているのですが、「指定されたインスタンス名が無効です」というエラーになってしまいます。 一応、補足ですが、MSDE SP3 と書きましたが、実際には、MSDE RelA です。 なにか、分かりましたら、よろしくお願いいたします。 |
|
投稿日時: 2005-12-05 15:11
状況を整理してみましょうか。
(1)データベースのバックアップは取得している。 (2)再インストールしようとすると失敗する。 だと思いますが。 MSDE rel Aをインストールしている所に デフォルト設定でアンインストールせずに 再インストールする事は出来ません。 なぜならば、同じインスタンス名で データベースをインストールしようとしているから。 なので、バックアップがきちんと整合性の取られている物であるならば。 手順としては。 (1)MSDEのアンインストール (2)MSDEのインストール (3)Anthyimeさんの言っている通りデータベースのアタッチ です。 でもまずサービスから起動できない状態であるのか確かめてから実施して下さいね。 |
|
投稿日時: 2005-12-05 15:50
ありがとうございます。
インストールは、最初に、アンインストールしないといけなかったんですね、、、 失礼いたしました。 おかげさまで、データベースをリストアできそうです。 あと、いろいろ試していたのですが、master の mdf と ldf をファイルコピーで上書きしても起動したのですが、こんなやり方でもいいのでしょうか? Oracle と異なり、SQL Server は、単純なファイルコピーのリストアは使っちゃダメって聞いた事があったのですが、どんなもんなんでしょうか? [ メッセージ編集済み 編集者: わちゃ 編集日時 2005-12-05 15:50 ] |
|
投稿日時: 2005-12-05 17:20
デタッチしない状態のDBでやったらまずそうだけど、それでも何とかなると思いますよ。
|