SQLスクリプトを使用してBarTenderシステムデータベースを手動で作成またはアップグレードする方法
質問
SQLスクリプトを使ってBarTenderシステムデータベースを手動で作成またはアップグレードする方法は?
回答
SQL Serverデータベースをサードパーティのベンダーや管理者が管理している場合など、BarTenderをインストールせずにシステムデータベースを作成またはアップグレードしたい場合に、SQLスクリプトを使ってBarTenderシステムデータベースを手動で作成またはアップグレードすることができます。
システムデータベースの作成
システムデータベースウィザードを使わずに、BarTenderシステムデータベースを手動で作成するには、以下の手順を実行します。BarTenderのインストール先(64ビットの場合はC:\Program Files\Seagull\BarTender Suite\Database、32ビットの場合はC:\Program Files (x86)\Seagull\BarTender Suite\Database)から、次の2つのファイルが必要です:
- CreateDatabase.bat
- CreateDb.sql
これらのファイルを、SQL Serverが動作しているコンピューターやホストの任意のディレクトリにコピーしてください。CreateDatabase.batはシステムデータベースを作成するためのバッチファイルで、コマンドプロンプトやWindows Powershellから実行できます。
システムデータベースを作成するためのコマンドとパラメータは以下の通りです:
-
CreateDatabase.bat <SqlInstance> [Database Name] [schema only flag] [path]
- パラメータ:
- <SqlInstance> (必須)使用したいSQL Serverのインスタンス名です。コンピューター名もインスタンス名の一部として必要な場合があります。例:IEPC2\SqlExpressは、IEPC2というコンピューター上の「SqlExpress」というSQL Serverインスタンスを指します。デフォルトインスタンスのみを使用する場合は、コンピューター名やサーバー名だけでも指定できます。
- [Database Name] (省略可)データベース名です。省略した場合は「BarTender」が使用されます。
- [schema only flag] (省略可)"true"を指定すると、既存のデータベースファイル上にスキーマのみを作成します。
- [path] (省略可)物理的なデータベースファイルを配置したいパスを指定します。
- パラメータ:
-
CreateDatabase /? - ヘルプを表示します
-
CreateDatabase /L - ネットワーク上の利用可能なSQL Serverの一覧を表示します
-
CreateDatabase /E - コマンドラインの例を表示します。
例:
- CreateDatabase.bat <InstanceName> (InstanceNameはSQL Serverとインスタンス名、例:"IEPC2\SqlServer")このコマンドで、BarTenderのバージョンによって「BarTender」または「SystemDB」というデフォルト名のシステムデータベースが作成されます。
システムデータベースのアップグレード
システムデータベースをアップグレードする場合も、SQLスクリプトはBarTenderのインストール先(64ビットの場合はC:\Program Files\Seagull\BarTender Suite\Database、32ビットの場合はC:\Program Files (x86)\Seagull\BarTender Suite\Database)にあります。ファイル名はUpgradeDB.sqlからUpgradeDB_1.x_to_1.y.sqlまで複数存在します。これらのスクリプトも、SQL Serverが動作しているコンピューターやホストの任意のディレクトリにコピーしてください。
アップグレード手順:
- Admin ConsoleまたはシステムデータベースのUIで、現在のシステムデータベーススキーマのバージョン(例:"1.x")を確認します。
- SQL Server Management Studioで、スキーマバージョンに対応するUpgradeDB_1.x_to_1.y.sqlスクリプトから順番に、すべてのスクリプトを開いて実行します。例えば、スキーマが1.30の場合は「UpgradeDB_1.30_to_1.40.sql」から始めて、それ以降のバージョンも順に実行してください。各UpgradeDBスクリプトではパラメータ[$(dbname)]が使われていますので、スクリプト内のこの部分をシステムデータベースの名前に置き換えてください。