2-4-4 監視対象のデータベースでの準備作業(アカウント/DB/スクリプトの準備)
監査証跡ログを取りたいすべてのテーブルにSyncServerProが使うためのフィールドを用意し、また専用のアカウントとスクリプトを準備します。
1.FileMaker Server のクライアントとして「SyncServerPro.fmp12」 を開きます。
2. free、Tier-2 または Tier-3 バージョンのライセンスを使用の場合、「Register Developer Key」を選択。
発行された「SyncServer Pro Developer license」を入力し「Continue」を押してください。
3. 「Add a new solution 」ボタンを押し、重複しないソリューション名を入力し、「Create」を押します。
4. 「Is this a former SyncDek solution? 」と、かつてSyncServerPro の前バージョンであるSyncDekで設定したことのあるソリューションかどうか
ダイアログで聞かれますので、該当のボタンを押してください。
SyncDek > Yes の場合
「Does this previously SyncDek-enabled solution have the access-privilege-based deletion capture already enabled?」と、
SyncDek時に拡張アクセス権ベースの削除キャプチャを設定していたかどうかダイアログで聞かれますので、該当のボタンを押してください。
Yes > XML方式の削除検知のデフォルトチェックがオフになります。この場合、PubFlug方式での削除検知を設定します。
No > XML方式の削除検知のデフォルトチェックがオンになります。
※ あとでXML方式削除検知をオン/オフすることも可能です。(XML方式とPubFlug方式との併用も可能)
5. 利用する機能を選択します。ここでは、「Local Backup」と「Audit Logging」(監査証跡)を選択し、「Next」を押してください。
Local Backup:
データベースの増分のローカルミラー(サーバーへの)を保持します。
クラッシュやデータ破損時に数秒以内のバックアップを使ってロールフォワードをしたり、データ移行を考慮せずに、バージョンアップデートを実行できます。
Audit Logging:
任意のサーバー上のどのタイプのデータベースでも、詳細な監査ログを作成します。
追加、変更、および削除の操作をテーブルとフィールドに捕捉します。
誰が/何を/いつをすべてのテーブルにログ記録し、FileMaker Serverでサポートされているすべての接続をサポートします。
変更データは、フィールドの変更ごとに1つの行にログ記録され、フィールドの前後の値を捕捉します。
Remote Backup:
任意のサーバー上のどのタイプのデータベースでも、詳細な監査ログを作成します。
追加、変更、および削除の操作をテーブルとフィールドに捕捉します。
誰が/何を/いつをすべてのテーブルにログ記録し、FileMaker Serverでサポートされているすべての接続をサポートします。
変更データは、フィールドの変更ごとに1つの行にログ記録され、フィールドの前後の値を捕捉します。
Server Sync:
同一または異なるデータベースプラットフォーム間、仮想マシン間または複数の拠点間など、2つ以上のデータベースサーバーをほぼリアルタイムで同期させます。
ウォームスタンバイ、フェールオーバー、ロードバランシング、マルチサイトをサポートし、FileMaker Server、MySQL、MS SQL、Oracle、Sybase、
またはPostgresサーバーの任意の組み合わせをセットアップします。
Basic :
同じスキーマを実行している2台以上のサーバーを同期するための簡易セットアップです。
このオプションでは、マッピングやその他の詳細設定はサポートされていません。
Advanded :
[詳細設定]オプションは、異なるスキーマを持つサーバー間のテーブルマッピング、
またノードごとに固有の一般設定を持つサーバー間のテーブルマッピングなど、高度な設定を作成できます。
6. 監視したいデータベースに、セットアップを行っていきます。各セットアップを確認したらチェックボックスをチェックしてください。
1. SyncServerProが使うためのアカウントを用意します。
•「SyncServer」というアカウント名、Passwordは任意のもの。
(別のアカウント名を使いたい場合は、監視対象ファイルに後で設定する「SyncServer_modTS」「SyncServer_modAccount」フィールドの計算式を
アカウント名にあわせて変更する必要があります)
(※SyncDekからの移行の場合は、「SyncDek」のアカウント名など。)
•このアカウントには、「データ入力のみ」のアクセス権セットを割り当て、さらに「fmxdbc」「fmxml」拡張アクセス権を割り当てます。
※必要なアカウント権限まとめ
アカウント名 | アクセス権セット | 拡張アクセス権 | |
---|---|---|---|
監査証跡書出先ログ側 | 任意 | 完全アクセス権が必要 | fmxdbc |
監視対象DB側 | SyncServer | データ入力のみ以上 | fmxdbc |
2. SyncServer のサービスに含みたいあらゆるテーブルに主キーのフィールドが設定されていることを確認してください。
この主キーは計算フィールドで「Get(UUID)」が自動入力で設定されている必要があります。
新規のデータベースでなく、この時点で既にデータのあるデータベースの場合、すべてのレコードでUUIDがデータ入力されている状態にしてください。
(例:フィールド内容の全置換>計算式>Get(UUID)、など)
(※SyncDekからの移行の場合は、「SyncDek_RecId」が使用できます。)
3. 監視したいデータベースで、データベースの管理から、リレーションシップタブに監視対象のテーブルと同じ名前のテーブルオカレンスがあることを確かめてください。
4
4-1 Open SyncServer Resource database」をクリック、次に(ファイル>管理>データベースより)データベースの管理ダイアログボックスを開き、
FIELDテーブルより、下記3つのフィールドをコピーし、監視対象のすべてのテーブルにペーストします。
・SyncServer_trigger
・SyncServer_modTS
・SyncServer_modAccount
※SyncDeKからの移行の場合
・SyncDeK_ModTime
・SyncDeK_RecId
・SyncDeK_Modifier
・SyncDeK_pubFlag
・SyncDeK_ModDateTime
4-2 下記3つのテーブルをコピーし、監視対象のデータベーステーブルにペーストします。
・SYNC_TABLE_LOG
・SYNC_TEMP_LOG
・SYNCSERVERPRO
※SyncDeKからの移行の場合
・SYNC_TABLE_LOG
・SYNC_TEMP_LOG
・SYNCSERVERPRO
・SyncDek (削除してください。)
4-3 (ファイル>管理>スクリプトより)スクリプトワークスペースを開き、FIELDテーブルより、下記のスクリプトをコピーし、監視対象のデータベースのスクリプトにペーストします。
・SyncDetectDeletes
5.(オプショナル)同期や復帰のプロセス中にデータ自動入力による変更が起こらないようにしてください。
自動入力オフでのインポート以外の手段でFileMaker にデータ挿入/更新した場合、
ルックアップや計算式自動入力が再トリガーされ、不要なデータ変更を引き起こす可能性があります。
※ Analyzeクリックボタンから、XML DDRを使って、対象ファイルに問題があるかどうかチェックすることができます。
6. FileMaker AdminConsole から以下の設定を確認または実施してください。
・一般設定「ODBC/JDBC を有効にする」にチェックを入れ、ステータス「ODBC/JDBC」の起動を確認してください。
・Web公開「XML 公開を有効にする」 にチェックを入れ、ステータス「Web 公開エンジン」の起動を確認してください。
・データベースサーバー>サーバープラグイン「FileMaker スクリプトエンジン (FMSE) によるプラグインの使用を有効にする」 にチェック
・「[プラグインファイルのインストール] スクリプトステップでサーバープラグインのインストール、更新、およびロードを許可する」 にチェック
・ Web公開>一般設定「Web 公開を有効にしてプラグインを使用する」 にチェック
・「[プラグインファイルのインストール] スクリプトステップで Web 公開プラグインのインストール、更新、およびロードを許可する」 にチェック
すべてが完了したら、「Next」を押してください。