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 ユーザは、 shebang ラインを省略できます。
Unix システムでは、chmod +x blackout.pl コマンドを使用して、実行可能ファイルにします。
コマンドラインで blackout.pl
と入力します。
servicemanager:18080 admin
password servername:3306
true
使用するホスト名およびポートが分からない場合、configuration_report.txt
ファイルで確認してください。必ず Tomcat
サーバへの適切なポート番号を指定してください。サンプルのように、コロンとポート番号を含めて、サーバツリーに表示されていいる名前を使用して、ブラックアウトするサーバを指定してください。指定するユーザが、"管理者"
であることを確認してください。 ユーザを
"dba"
権限で指定しただけでは、サーバをブラックアウトすることができないし、エラーも出力されません。
サーバがブラックアウトされたかは、Dashboard
でサーバ名を見れば分かります。ブラックアウトされたサーバ名は、グレイアウト表示されます。ブラックアウトを終了するには、同じスクリプトを実行し、最後の引数を
false に変更します。
MySQL Enterprise Monitor を再起動しても、ブラックアウトサーバを有効にすることは できません 。
