- PR -

SQLServer2000 メディアからでなくバッチ(SQL・T-SQL?)でインスタンスを追加

1
投稿者投稿内容
Neverland
ベテラン
会議室デビュー日: 2006/11/27
投稿数: 56
投稿日時: 2008-11-04 18:48
ご教示ください。

既にSQLServer2000を使ったシステムがあり、リリース済みです。
新人が入った時に、いきなりこのシステムをマニュアルだけで使わせる前に、自由に操作した上で使える同等のシステムが作れないか、と問われています。(つまり、本番用のデータを壊さない様に自由にデータをいじれて、同じシステムを学べるものが欲しい(開発当初の思想にはなかった))

今考えているのは、
(1)学習用のインスタンス(PCNAME¥GAKUSYU)を作り、そこに本番用のデータベースを復元させる
(2)プログラムに「学習用」と「本番用」に接続を繰り替えられる仕組みを実装する(学習モードの場合は、それと分かる様に画面の色を変える等して)
です。
当初、一部限定で学習用のプログラムを別に作る、としていましたが、これであれば、すべての機能を学習用にすることができ、プログラムの改修も最小限(学習用、本番用のプログラムの二重管理の必要がない)に抑えられます。

ただ、複数拠点にあるため、(1)をプログラムからバッチ(またはSQL・T-SQL?)で行うことができればと考えています。データベースのバックアップ・復元、学習用サービスの停止・開始の切り替えは理解できていますが、インスタンスをどうやって作れば良いのかが分かりません。手動であれば、メディアからインストールすれば済むことですが。。
(shell を使って exe のスイッチでインストールできるとか)

方法がありましたら教えてください。宜しくお願い致します。
サトウ
会議室デビュー日: 2006/01/17
投稿数: 17
投稿日時: 2008-11-11 11:15
バックアップファイルから復元するという形式でよければ、
RESTORE DATABASEステートメントを使えば、
インスタンスの作成からデータの復元までできます。

RESTORE DATABASEはOSQL.exeのからも実行できるので、
バッチでできると思います。

ただ、ログインの復元まではできないので、
ログインは別途作成する必要があったかと思います。
未記入
大ベテラン
会議室デビュー日: 2008/02/07
投稿数: 115
投稿日時: 2008-11-11 11:46
引用:

RESTORE DATABASEステートメントを使えば、
インスタンスの作成からデータの復元までできます。


できません。
Neverland
ベテラン
会議室デビュー日: 2006/11/27
投稿数: 56
投稿日時: 2008-11-13 17:47
投稿者です。

遅くなりまして申し訳ありません。

BACKUP/RESTORE DATABASEは、データベースのバックアップ/復元だけで、インスタンスは関連しないかと。。。

インスタンスを作るとは、それ用のシステムデータベースが必要ですし、インスタンスとサービスは1対1ですから、それを制御するサービスを別に立ち上げる必要があります。そこまで分かっていて、あまりに無茶な質問をしていることは承知しています。

ですが、何かバッチ的にできないものかと思いまして。
IKE
常連さん
会議室デビュー日: 2008/03/24
投稿数: 46
投稿日時: 2008-11-13 19:02
setup.iss を編集して、別インスタンスを作る形で
自動インストールを流すのは、どうでしょうか?
Neverland
ベテラン
会議室デビュー日: 2006/11/27
投稿数: 56
投稿日時: 2008-11-14 13:54
投稿者です。

IKE さんありがとうございます。

初めてのことですが、やってみたいと思います。
1

スキルアップ/キャリアアップ(JOB@IT)