none
ディスク増強時のデータベース移行方法について RRS feed

  • 質問

  • 【環境】

    Windows2003 StandardEdition

    SQL Server2000 sp3 (システム:Cドライブ    データ:Dドライブ(RAID1))

     

    【質問事項】

    データベースが格納されているRAID1のDドライブの容量逼迫の為、

    ディスクを追加してRAID5とし、実容量を増やしたいと考えております。

     

    RAID1⇒RAID5の作業により現在のディスクが初期化されてしまう為、

    データベースを一旦退避しておく必要があるのですが、

    現在のDドライブにはユーザーデータベース以外にMaster等のシステムデータベースも格納されています。

     

    システムDBを、事前に空きのあるCドライブへ移行させておきたいと考えているのですが、その方法がわかりません。

     

    何方か御教示頂けないでしょうか。

     

    宜しく御願いします。

     

    2007年6月7日 8:02

回答

  • 恐らく一番ネックになるのは、master , msdb のシステムデータベースだと思います。

    master データベースについては、下記の方法でパス先を変更できます。

     

    1、SQL Server のサービスを停止

    2、master.mdf, mastlog.ldf の物理ファイルをバックアップ

    3、変更したいパス先に、上記ファイルを保存

    4、SQL Server のサービスを起動

    5、Enterprise Manager - インスタンス - 右クリック -  プロパティ - 全般タブ -  起動パラメータを選択

     *起動時のmaster.mdf, mastlog.ldf 読み込みパスが書いてあるので、追加で新しいパス先を入力し、

      古いパス先を削除

    6、SQL Server のサービスを再起動

     

    その他システムファイルやユーザファイルの移動については、

    下記のURLが参照になると思います。

     

    SQL Server のデタッチとアタッチ機能を使用して SQL Server データベースを新しい場所に移動する方法

    < http://support.microsoft.com/default.aspx/kb/224071/ja >

    2007年6月7日 10:17
  • もしかしたらパラメータを1行に "-c -m -T3608" 追加されたのではないでしょうか。

    "-c", "-m", "-T3608" と分けて入力を行えば、デタッチが出来ると思います。

    2007年6月12日 8:17
  • 既に対応済みかもしれませんが、起動パラメータでエラーログの保存先も指定しています。

    このパラメータについても変更されたほうが良いと思います。

    2007年6月12日 8:21

すべての返信

  • 恐らく一番ネックになるのは、master , msdb のシステムデータベースだと思います。

    master データベースについては、下記の方法でパス先を変更できます。

     

    1、SQL Server のサービスを停止

    2、master.mdf, mastlog.ldf の物理ファイルをバックアップ

    3、変更したいパス先に、上記ファイルを保存

    4、SQL Server のサービスを起動

    5、Enterprise Manager - インスタンス - 右クリック -  プロパティ - 全般タブ -  起動パラメータを選択

     *起動時のmaster.mdf, mastlog.ldf 読み込みパスが書いてあるので、追加で新しいパス先を入力し、

      古いパス先を削除

    6、SQL Server のサービスを再起動

     

    その他システムファイルやユーザファイルの移動については、

    下記のURLが参照になると思います。

     

    SQL Server のデタッチとアタッチ機能を使用して SQL Server データベースを新しい場所に移動する方法

    < http://support.microsoft.com/default.aspx/kb/224071/ja >

    2007年6月7日 10:17
  • 御回答有難う御座います。

     

    お蔭様で御教示頂いた方法で、masterの移動をすることが出来ました。

     

    只、こちらのリンクの通り、起動時のパラメータに「-c -m -T3608」を追加してmsdb及びmodelを移動しようとするのですが

    データベースのデタッチがどうしても出来ません。

    < http://support.microsoft.com/default.aspx/kb/224071/ja >

    sp_detach_dbのストアド実行時にメッセージ7940、レベル16のデタッチが出来ないという旨のエラーメッセージが

    表示されてしまいます。

     

    こちらについて何かご存知の方、若しくは代替策を御存知のかた、

    御手数ですが御教示頂けないでしょうか。

     

    宜しく御願いします。

     

    2007年6月12日 7:55
  • もしかしたらパラメータを1行に "-c -m -T3608" 追加されたのではないでしょうか。

    "-c", "-m", "-T3608" と分けて入力を行えば、デタッチが出来ると思います。

    2007年6月12日 8:17
  • 既に対応済みかもしれませんが、起動パラメータでエラーログの保存先も指定しています。

    このパラメータについても変更されたほうが良いと思います。

    2007年6月12日 8:21
  • NOBTA様

     

    ご連絡有難う御座います。

    ご指摘の通り、1行に "-c -m -T3608" と追加しておりました。

    お恥ずかしい限りです。

     

    お蔭様で無事作業することが出来ました。

     

    大変助かりました。

    有難う御座います。

     

     

    2007年6月13日 6:37
  • こんにちは、フォーラムオペレーターの鈴木裕子です

     

    NOBTA さん、丁寧な回答をありがとうございました。

    レディオ さん、ご投稿から時間が経過しているスレッドだったのですが、

    大変有用な情報だと思いましたので、勝手ながら私の方で回答チェックを付けさせていただきました。

    もし不適切な場合は、修正をお願いします。

     

    これからもForumをご活用くださいね!

    それでは。

    2008年11月13日 4:17
    モデレータ