Web ブラウザを開いて、アドレスバーに値を入力するのでなく、スクリプトを書いて、サーバーをブラックアウトすることもできます。このセクションでは、コマンドラインから、実行できるブラックアウトスクリプトの例を紹介します。
次のファイルを作成し、blackout.pl として保存します。
#!/usr/bin/perl
use LWP 5.64;
# USAGE: blackout.pl servicemanager:18080 admin password servername:3306 true
# $ARGV[0] = management server hostname:port
# $ARGV[1] = management server username
# $ARGV[2] = management server password
# $ARGV[3] = mysqld managed instance server name and port
# $ARGV[4] = blackout state (true/false)
my $browser = LWP::UserAgent->new;
$browser->credentials(
$ARGV[0],
'',
$ARGV[1],
$ARGV[2]
);
my $url = URI->new('http://'.$ARGV[0].'/rest');
$url->query_form( # And here the form data pairs:
'command' => 'blackout',
'server_name' => $ARGV[3],
'blackout_state' => $ARGV[4]
);
my $response = $browser->post( $url );
if (!$response->is_success) {
die $response->status_line . "\n";
}
Windows ユーザは、 最初の#! ラインを省略できます。
Unix システムでは、chmod +x blackout.pl コマンドを使用して、実行可能ファイルにします。
コマンドラインで blackout.pl と入力します。
servicemanager:18080 admin password servername:3306 true
使用するホスト名およびポートが分からない場合、configuration_report.txt ファイルで確認してください。必ず Tomcat サーバーへの正しいポートを指定してください。サンプルのように、コロンとポート番号を含めて、サーバーツリーに表示されていいる名前を使用して、ブラックアウトするサーバーを指定してください。"管理者"ユーザの名前を指定してください。ユーザを "dba" 権限で指定しただけでは、サーバーをブラックアウトすることができないし、エラーも出力されません。
サーバーがブラックアウトされたことを確認するには、Dashboard でサーバー名がグレイアウト表示されているかどうかをみます。ブラックアウトを終了するには、同じスクリプトを実行し、最後の引数を false に変更します。
MySQL Enterprise Monitor を再起動しても、ブラックアウトサーバを有効にすることは できません 。
