分散型MySQL環境の作成
オンプレミス版の既存のインストールで、外部のMySQLデータベース(WindowsとLinuxの両方で動作するオープンソースデータベース)を使用することができます。例えば、これはContrastの分散環境を使用する場合などに必要となります。
ヒント
運用担当者やデータベース担当者と協力して、安全で耐久性のあるインストールを行ってください。
Ansibleのスニペットを使用して、Ubuntu 14.04にMySQLをインストールすることもできます。
また、GPGキーファイルはMySQLからダウンロードすることもできます。Contrastでは、バインドアドレス(bind_address)を「*」に変更していますが、ご利用のMySQLサーバとアプリケーションサーバのIPにバインドすることをお勧めします。ユーザを作成して、Contrastスキーマのみへアクセス、ホストのIPアドレスとサブネットに制限する権限を与えてください。
手順
以下の手順で、<jdbc.host>、
<jdbc.port>、
<jdbc.user>
、<jdbc.pass>
、<jdbc.schema>
をご利用のホスト、ポート、ユーザ、パスワード、スキーマに置き換えてください。
データベースサーバのホストにサポート対象バージョンのMySQLをインストールして構成します。
Contrastのダウンタイムのためのメンテナンス時間を設けます。
MySQLに接続します。
Windows:
mysql -h <jdbc.host> -P <jdbc.port> -u <jdbc.user> -p <jdbc.schema>
Linux:
./mysql -h <jdbc.host> -P <jdbc.port> -u <jdbc.user> -p <jdbc.schema>
次のコマンドでContrastのデータベースを作成します。
create database <jdbc.schema>;
次のコマンドでMySQLユーザを作成します。
CREATE USER '<jdbc.user>'@'%' IDENTIFIED BY '<jdbc.pass>';
次のコマンドでContrastユーザに権限を付与します。
GRANT ALL PRIVILEGES ON *.* to '<jdbc.user>'@'%';.
MySQLを終了(exit)します。
MySQLのバックアップを復元します。
<backup_location>
をバックアップファイルの場所に、<backup_filename>
をバックアップファイル名に置き換えてください。Windows:
mysql -h <jdbc.host> -P <jdbc.port> -u <jdbc.user> -p <jdbc.schema> < <backup_location>/<backup_filename>
Linux:
./mysql -h <jdbc.host> -P <jdbc.port> -u <jdbc.user> -p <jdbc.schema> < <backup_location>/<backup_filename>
暗号化プロパティエディタで設定を更新します。 暗号化ファイルの
$CONTRAST_HOME/data/conf/database.properties
を編集します。database.type
を検索してください。存在しない場合は、プロパティを新規に作成してください。このプロパティの値にdistributed
を指定し、使用する分散データベースを指すようデータベースの接続に関する値も更新します。user@ubuntu:/opt/contrast/bin$ ./edit-properties -e ../data/esapi/ -f ../data/conf/database.properties jdbc.type : MYSQL database.prod.dir : /opt/contrast/data/db jdbc.debug : false jdbc.pass : pass jdbc.schema : contrast jdbc.host : ubuntu database.bk.time : 6:39:14 jdbc.port : 3306 database.bk.enabled : false database.enabled : true jdbc.url : jdbc:mysql://ubuntu:3306/contrast jdbc.user : contrast database.bk.dir : /opt/contrast/data/backups/db jdbc.dialect : com.aspectsecurity.contrast.teamserver.persistence.CustomMySQL5Dialect jdbc.driver : com.mysql.jdbc.Driver Enter the name of the property to edit [q to Quit]: database.type Create new Property [database.type](y/N): y Enter a value for the property: distributed jdbc.type : MYSQL database.prod.dir : /opt/contrast/data/db jdbc.debug : false jdbc.pass : pass jdbc.schema : contrast jdbc.host : ubuntu database.bk.time : 6:39:14 jdbc.port : 3306 database.bk.enabled : false database.enabled : true database.type : distributed jdbc.url : jdbc:mysql://ubuntu:3306/contrast jdbc.user : contrast database.bk.dir : /opt/contrast/data/backups/db jdbc.dialect : com.aspectsecurity.contrast.teamserver.persistence.CustomMySQL5Dialect jdbc.driver : com.mysql.jdbc.Driver Enter the name of the property to edit [q to Quit]:
注記
デフォルトの組み込みデータベースから分散環境に切り替える場合は、
database.bk.enabled
をfalse
に設定することも必要です。分散データベース構成でContrastを実行する場合、バックアップの設定は各自の責任で行ってください。オンプレミス版をWindowsシステムにインストールしている場合は、MySQLに対する
contrast-server
サービスの依存関係を削除します。Contrastを再起動する前に、以下のコマンドを使用して、MySQLサービスに対する
contrast-server
サービスの依存関係を削除してください。sc config contrast-server depend= ""
Contrastを再起動します。