Instance Manager はユーザ情報をパスワード
ファイルに保存します。Windows
環境でのデフォルトは、Instance Manager
をインストールしたディレクトリの
mysqlmanager.passwd
です。Unix
環境でのデフォルトは、/etc/mysqlmanager.passwd
です。パスワード
ファイルを別の場所に指定するには、--password-file
オプションを使用します。
パスワード ファイルがない場合、またはパスワードのエントリがない場合、Instance Manager と接続することはできません。
サーバ インスタンスを監視中の Instance Manager は、パスワード ファイルでの変更を認識しません。そのため、システム終了して、パスワード エントリでの変更を行ってから、再起動してください。
パスワード ファイルへのエントリには次の形式があります。ユーザ名と暗号化パスワードの 2 つのフィールドをコロンで区切ります。
petr:*35110DC9B4D8140F5DE667E28C72DD2597B5C848
Instance Manager のパスワード暗号化は、MySQL Server と同じです。一方向操作です。暗号化パスワードの複合化は禁止です。
Instance Manager アカウントは、MySQL Server アカウントとは若干異なります。
MySQL Server アカウントは、ホスト名、ユーザ名、パスワード。 (項4.8.1. 「MySQL ユーザ名とパスワード」 を参照のこと。)
Instance Manager はユーザ名とパスワードだけ。
これは、クライアントがどのホストからでもユーザ名で
Instance Manager
に接続可能ということです。この接続を制限し、クライアント接続をローカル
ホストだけにするには、--bind-address=127.0.0.1
オプションで、Instance Manager
を立ち上げます。これにより、ローカルのネットワーク
インターフェースだけを使用するようになります。リモート
クライアントからは接続できません。ローカル
クライアントは次のように接続します。
shell> mysql -h 127.0.0.1 -P 2273
MySQL 5.1.12 前のパスワード
ファイル生成に関するオプションは、--passwd
だけで、これは、Instance Manager で
ユーザ名とパスワードを指し、その結果を表示するというものです。そして、出力を/etc/mysqlmanager.passwd
のパスワード
ファイルに保存しています。たとえば、次の通りです。
shell>mysqlmanager --passwd >> /etc/mysqlmanager.passwd
Creating record for new user. Enter user name:mike
Enter password:mikepass
Re-type password:mikepass
プロンプトで、新規ユーザのユーザ名とパスワードを新たな Instance Manager ユーザとします。そのときは、パスワードを 2 回入力します。画面ではエコーしませんが、2 回入力することで、意図したものとは異なるパスワードの入力を防ぎます。つまり、入力するパスワード、2つが異なる場合、エントリは生成されないということです。
前述のコマンドは、/etc/mysqlmanager.passwd
に次のラインを付加します。
mike:*BBF1F551DD9DD96A01E66EC7DDC073911BAD17BA
MySQL 5.1.12 当初、--passwd
オプションは、--print-password-line
という名前に変更になり、コマンドラインからユーザ
アカウント管理のオプションを操作できるようになりました。たとえば、--username
や --password
などのオプションは、アカウント
エントリに対するユーザ名とパスワードを指定するときに、コマンドラインで使用できます。これらを使用して、エントリを生成します。シングル
ラインのコマンドを入力するなどのプロンプトは不要です。
shell>mysqlmanager --print-password-line
--username=mike --password=mikepass >> /etc/mysqlmanager.passwd
--username
または
--password
オプションを省略した場合、 Instance Manager
が必要な値を指します。
--print-password-line
オプションで、Instance Manager
の出力はアカウント
エントリの結果として送信し、パスワード
ファイルへ付加できます。パスワード
ファイルで直接操作できるように
account-management オプションを Instance Manager
に与える方法を次のリストで説明します。オプションは、account-management
を目的とした Instance Manager
でのスクリプタブル (記述可)
です。パスワード
ファイル操作を正確に行うには。ファイルが存在し、Instance
Manager
でアクセスできるようにする必要があります。ただし、--clean-password-file
は例外です。これは、存在に関わらず、ファイルを作成します。択一的に、パスワード
ファイルがあれば、手動で空ファイルを作成し、Instance
Manager だけが読み書き込みするようにアクセス
モードと権限を制限します。指定がなければ、デフォルトのパスワード
ファイルを使用し、指定するときは、--password-file
オプションで指定します。
パスワード フィアル操作での整合性を確証するには、サーバ インスタンスを管理するために使用する Instance Manager のシステム アカウントで ファイルを作成してください。そして、パスワード ファイルのアカウントを管理するときには、そのファイルをそのシステム アカウントから呼び出してください。
新規ユーザの作成
mysqlmanager --add-user --username=user_name
[--password=password
]
任意のユーザ名とパスワードをパスワード
ファイルに新たなエントリとして加える。--username
(または -u
) オプション
が必要。mysqlmanager
でパスワードを指し、これは、--password
(または -p
)
のコマンドラインで与えていないパスワードのこと。ユーザが既に存在していれば、追加できない。
既存ユーザの削除
mysqlmanager --drop-user --username=user_name
パスワード ファイルのユーザ名のエントリを削除する。ユーザ名が必要。ユーザが存在しなければ、削除できない。
既存ユーザのパスワード変更
mysqlmanager --edit-user --username=user_name
[--password=password
]
パスワード ファイルのユーザのパスワードを削除する。ユーザ名が必要。コマンドラインを使用しない場合は、mysqlmanager で呼び出す。ユーザが存在しなければ、変更できない。
既存ユーザのリスト
mysqlmanager --list-users
このコマンドで、パスワード ファイルのアカウント ユーザ名をリストする。
パスワード ファイルのチェック
mysqlmanager --check-password-file
このコマンドで、パスワード ファイルの整合性と妥当性チェックを行う。このコマンドの失敗は、ファイルに異常があることを示す。
パスワード ファイルの空化
mysqlmanager --clean-password-file
パスワード ファイルを空にする。ファイルにリストされているすべてのユーザを削除する。パスワード ファイルが存在しない場合、このオプションで作成。つまり、このオプションは、別の account-management 操作で使用する新しいパスワード ファイルを作成する。誤ってアカウントを削除しないように、このオプションを使用するときは注意が必要。