mysqladmin は管理操作を実行するためのクライアントです。 サーバーの構成や現在のステータスの確認、データベースの作成および削除、およびその他の用途に使用できます。
mysqladmin は次のように起動します。
shell> mysqladmin [options] command [command-arg] [command [command-arg]] ...
mysqladmin は次のコマンドをサポートします。 コマンドの中にはコマンド名のあとに引数を取るものもあります。
-
db_name
という名前の新しいデータベースを作成します。 -
MySQL 8.0.20 より前は、デバッグ情報をエラーログに書き込むようにサーバーに指示していました。 接続されたユーザーは
SUPER
権限を持っている必要があります。 この情報の形式と内容は変更されることがあります。これにはイベントスケジューラの情報が含まれます。 セクション25.4.5「イベントスケジューラのステータス」を参照してください。
-
db_name
という名前のデータベースとそのテーブルをすべて削除します。 -
サーバーステータス変数とその値を表示します。
-
ホストキャッシュ内の情報をすべてフラッシュします。 セクション5.1.12.3「DNS ルックアップとホストキャッシュ」を参照してください。
-
ログをすべてフラッシュします。
mysqladmin flush-logs コマンドでは、フラッシュするログを指定するために、オプションのログタイプを指定できます。
flush-logs
コマンドの後に、次のログタイプのリストをスペースで区切って指定できます:binary
,engine
,error
,general
,relay
,slow
。 これらは、FLUSH LOGS
SQL ステートメントに指定できるログタイプに対応します。 -
付与テーブルをリロードします (
reload
と同じ)。 -
ステータス変数をクリアします。
-
テーブルをすべてフラッシュします。
-
スレッドキャッシュをフラッシュします。
-
サーバースレッドを強制終了します。 複数のスレッド ID 値を指定する場合、リストにはスペースが存在してはいけません。
他のユーザーに属するスレッドを強制終了するには、接続ユーザーに
CONNECTION_ADMIN
権限 (または非推奨のSUPER
権限) が必要です。 -
新しいパスワードを設定します。 これにより、mysqladmin でサーバーへの接続に使用するアカウントのパスワードが
new_password
に変更されます。 したがって、次回、同じアカウントを使用して mysqladmin (またはその他のクライアントプログラム) を起動するときに、新しいパスワードを指定する必要があります。警告mysqladmin を使用してパスワードを設定する場合は、セキュアでないとみなす必要があります。 一部のシステムでは、使用しているパスワードが、コマンド行を表示するためにほかのユーザーによって起動できる ps などのシステムステータスプログラムによって表示可能になります。 MySQL クライアントは通常、クライアントの初期化シーケンス中にコマンド行パスワード引数をゼロで上書きします。 ただし、まだ値が表示可能な短い期間があります。 また、一部のシステムではこの上書きの方法には効果がなく、パスワードは ps から表示可能になったままになります。 (SystemV Unix システムおよびおそらくほかのシステムでもこの問題の影響があります。)
new_password
値にコマンドインタプリタで特殊なスペースやその他の文字が含まれている場合は、引用符で囲む必要があります。 Windows では、単一引用符ではなく二重引用符を必ず使用してください。単一引用符はパスワードから取り除かれず、むしろパスワードの一部として解釈されます。 例:shell> mysqladmin password "my new password"
新しいパスワードは、
password
コマンドの後に省略できます。 この場合、mysqladmin はパスワード値を要求し、パスワードをコマンド行で指定するのを避けることができます。 パスワード値は、password
が mysqladmin コマンド行の最後のコマンドである場合にかぎって省略できます。 そうでない場合、次の引数がパスワードとみなされます。注意サーバーが
--skip-grant-tables
オプションを使用して起動された場合は、このコマンドを使用しないでください。 パスワードの変更は適用されません。 これは、同じコマンド行でpassword
コマンドの前にflush-privileges
コマンドを指定して付与テーブルを再度有効にする場合にも当てはまります (フラッシュ処理は接続後に行われるため)。 ただし、mysqladmin flush-privileges コマンドを実行して付与テーブルを再度有効にしてから、個別に mysqladmin password コマンドを実行してパスワードを変更することは可能です。 -
サーバーが使用可能かどうかをチェックします。 サーバーが稼働中の場合は mysqladmin のリターンステータスは 0 になり、稼働していない場合は 1 になります。
Access denied
のようなエラーの場合でも 0 となります。これは、サーバーは稼働しているが接続を拒否したことを意味しており、サーバーが稼働していない状態とは異なるからです。 -
アクティブなサーバースレッドのリストを表示します。 これは
SHOW PROCESSLIST
ステートメントの出力と同様です。--verbose
オプションが指定されている場合、出力はSHOW FULL PROCESSLIST
の出力と同様です。 (セクション13.7.7.29「SHOW PROCESSLIST ステートメント」を参照してください。) -
付与テーブルをリロードします。
-
全テーブルをフラッシュし、ログファイルを閉じて、開きます。
-
サーバーを停止します。
-
レプリカサーバーでレプリケーションを開始します。
-
短いサーバーステータスメッセージを表示します。
-
レプリカサーバーでレプリケーションを停止します。
-
サーバーシステム変数とその値を表示します。
-
サーバーからのバージョン情報を表示します。
すべてのコマンドは一意のプリフィクスに省略できます。 例:
shell> mysqladmin proc stat
+----+-------+-----------+----+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-------+-----------+----+---------+------+-------+------------------+
| 51 | jones | localhost | | Query | 0 | | show processlist |
+----+-------+-----------+----+---------+------+-------+------------------+
Uptime: 1473624 Threads: 1 Questions: 39487
Slow queries: 0 Opens: 541 Flush tables: 1
Open tables: 19 Queries per second avg: 0.0268
mysqladmin status コマンドの結果は次の値を表示します。
-
MySQL サーバーが稼働している秒数。
-
アクティブスレッド (クライアント) の数です。
-
サーバーが起動して以来クライアントから寄せられた質問 (クエリー) の数です。
-
long_query_time
秒よりも時間を要したクエリーの数。 セクション5.4.5「スロークエリーログ」を参照してください。 -
サーバーによって開かれたテーブルの数。
-
サーバーが実行した
flush-*
、refresh
、およびreload
コマンドの数です。 -
現在開いているテーブルの数。
Unix ソケットファイルを使用してローカルサーバーに接続する際に mysqladmin shutdown を実行した場合、mysqladmin はサーバーのプロセス ID ファイルが取り除かれるまで待ちます。これはサーバーが正しく停止したことを確認するためです。
mysqladmin は次のオプションをサポートします。これらはコマンド行またはオプションファイルの [mysqladmin]
グループおよび [client]
グループで指定できます。 MySQL プログラムによって使用されるオプションファイルの詳細については、セクション4.2.2.2「オプションファイルの使用」を参照してください。
表 4.12 「mysqladmin のオプション」
オプション名 | 説明 | 導入 | 非推奨 |
---|---|---|---|
--bind-address | 指定されたネットワークインタフェースを使用して MySQL サーバーに接続 | ||
--compress | クライアントとサーバー間で送信される情報をすべて圧縮 | 8.0.18 | |
--compression-algorithms | サーバーへの接続に許可される圧縮アルゴリズム | 8.0.18 | |
--connect-timeout | 接続タイムアウトまでの秒数 | ||
--count | 繰り返されるコマンド実行での反復回数 | ||
--debug | デバッグログの書込み | ||
--debug-check | プログラムの終了時にデバッグ情報を出力 | ||
--debug-info | プログラムの終了時に、デバッグ情報、メモリー、および CPU の統計を出力 | ||
--default-auth | 使用する認証プラグイン | ||
--default-character-set | デフォルト文字セットを指定 | ||
--defaults-extra-file | 通常のオプションファイルに加えて、名前付きオプションファイルを読み取ります | ||
--defaults-file | 指名されたオプションファイルのみを読み取る | ||
--defaults-group-suffix | オプショングループのサフィクス値 | ||
--enable-cleartext-plugin | 平文の認証プラグインを有効化 | ||
--force | SQL エラーが発生しても続行 | ||
--get-server-public-key | サーバーから RSA 公開キーをリクエスト | ||
--help | ヘルプメッセージを表示して終了 | ||
--host | MySQL サーバーがあるホスト | ||
--login-path | ログインパスオプションを .mylogin.cnf から読み取り | ||
--no-beep | エラー時に音を発生させない | ||
--no-defaults | オプションファイルを読み取らない | ||
--password | サーバーに接続する際に使用するパスワード | ||
--pipe | 名前付きパイプを使用してサーバに接続する (Windows のみ) | ||
--plugin-dir | プラグインがインストールされているディレクトリ | ||
--port | 接続用の TCP/IP ポート番号 | ||
--print-defaults | デフォルトオプションの印刷 | ||
--protocol | 使用するトランスポートプロトコル | ||
--relative | --sleep オプションとともに使用された場合、現在値と以前の値の差異を表示 | ||
--server-public-key-path | RSA 公開鍵を含むファイルへのパス名 | ||
--shared-memory-base-name | 共有メモリー接続用の共有メモリー名 (Windows のみ) | ||
--show-warnings | ステートメント実行後に警告を表示 | ||
--shutdown-timeout | サーバーのシャットダウンを待機する最大秒数 | ||
--silent | サイレントモード | ||
--sleep | コマンドを反復実行し、その間に delay 秒間スリープ | ||
--socket | 使用する Unix ソケットファイルまたは Windows 名前付きパイプ | ||
--ssl-ca | 信頼できる SSL 認証局のリストを含むファイル | ||
--ssl-capath | 信頼できる SSL 認証局の証明書ファイルを含むディレクトリ | ||
--ssl-cert | X.509 証明書を含むファイル | ||
--ssl-cipher | 接続の暗号化に許可される暗号 | ||
--ssl-crl | 証明書失効リストを含むファイル | ||
--ssl-crlpath | 証明書失効リストファイルを含むディレクトリ | ||
--ssl-fips-mode | クライアント側で FIPS モードを有効にするかどうか | ||
--ssl-key | X.509 キーを含むファイル | ||
--ssl-mode | サーバーへの接続に必要なセキュリティ状態 | ||
--tls-ciphersuites | 暗号化された接続に許可される TLSv1.3 暗号スイート | 8.0.16 | |
--tls-version | 暗号化された接続に許可される TLS プロトコル | ||
--user | サーバーへの接続時に使用する MySQL ユーザー名 | ||
--verbose | 冗長モード | ||
--version | バージョン情報を表示して終了 | ||
--vertical | クエリー出力行を垂直形式で出力 (カラム値ごとに 1 行) | ||
--wait | 接続が確立できない場合、中止せずに待機してからリトライ | ||
--zstd-compression-level | zstd 圧縮を使用するサーバーへの接続の圧縮レベル | 8.0.18 |
-
ヘルプメッセージを表示して終了します。
-
複数のネットワークインタフェースを持つコンピュータで、このオプションを使用して、MySQL サーバーへの接続に使用するインタフェースを選択します。
-
文字セットがインストールされているディレクトリ。 セクション10.15「文字セットの構成」を参照してください。
-
可能であれば、クライアントとサーバーの間で送信されるすべての情報を圧縮します。 セクション4.2.8「接続圧縮制御」を参照してください。
MySQL 8.0.18 では、このオプションは非推奨です。 MySQL の将来のバージョンで削除されることが予想されます。 レガシー接続圧縮の構成を参照してください。
-
--compression-algorithms=
value
サーバーへの接続に許可される圧縮アルゴリズム。 使用可能なアルゴリズムは、
protocol_compression_algorithms
システム変数の場合と同じです。 デフォルト値はuncompressed
です。詳細は、セクション4.2.8「接続圧縮制御」を参照してください。
このオプションは MySQL 8.0.18 で追加されました。
-
接続タイムアウトまでの最大秒数。 デフォルト値は 43200 秒 (12 時間) です。
-
--sleep
オプションが指定されている場合、繰り返し実行されるコマンドの反復実行の数。 -
--debug[=
,debug_options
]-# [
debug_options
]デバッグのログを書き込みます。 一般的な
debug_options
文字列はd:t:o,
です。 デフォルトはfile_name
d:t:o,/tmp/mysqladmin.trace
です。このオプションは、MySQL が
WITH_DEBUG
を使用して構築された場合にのみ使用できます。 Oracle によって提供される MySQL リリースバイナリは、このオプションを使用して構築されません。 -
プログラムの終了時に、デバッグ情報を出力します。
このオプションは、MySQL が
WITH_DEBUG
を使用して構築された場合にのみ使用できます。 Oracle によって提供される MySQL リリースバイナリは、このオプションを使用して構築されません。 -
プログラムの終了時に、デバッグ情報とメモリーおよび CPU 使用率の統計を出力します。
このオプションは、MySQL が
WITH_DEBUG
を使用して構築された場合にのみ使用できます。 Oracle によって提供される MySQL リリースバイナリは、このオプションを使用して構築されません。 -
使用するクライアント側認証プラグインに関するヒント。 セクション6.2.17「プラガブル認証」を参照してください。
-
--default-character-set=
charset_name
charset_name
をデフォルト文字セットとして使用します。 セクション10.15「文字セットの構成」を参照してください。 -
--defaults-extra-file=
file_name
このオプションファイルは、グローバルオプションファイルのあとに読み取りますが、(UNIX では) ユーザーオプションファイルの前に読み取るようにしてください。 ファイルが存在しないかアクセスできない場合、エラーが発生します。
file_name
は、フルパス名でなく相対パス名として指定された場合、現行ディレクトリを基準にして解釈されます。このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
-
指定されたオプションファイルのみ使用します。 ファイルが存在しないかアクセスできない場合、エラーが発生します。
file_name
は、フルパス名でなく相対パス名として指定された場合、現行ディレクトリを基準にして解釈されます。例外:
--defaults-file
でも、クライアントプログラムは.mylogin.cnf
を読み取ります。このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
-
通常のオプショングループだけでなく、通常の名前に
str
のサフィクスが付いたグループも読み取ります。 たとえば、mysqladmin は通常[client]
グループおよび[mysqladmin]
グループを読み取ります。--defaults-group-suffix=_other
オプションを指定した場合、mysqladmin は[client_other]
グループおよび[mysqladmin_other]
グループも読み取ります。このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
-
mysql_clear_password
平文認証プラグインを有効にします。 (セクション6.4.1.4「クライアント側クリアテキストプラガブル認証」を参照してください。) -
drop
コマンドの確認を求めません。 複数のコマンドで、エラーが発生しても続けます。db_name
-
RSA キーペアベースのパスワード交換に必要な公開キーをサーバーにリクエストします。 このオプションは、
caching_sha2_password
認証プラグインで認証されるクライアントに適用されます。 そのプラグインの場合、サーバーは要求されないかぎり公開鍵を送信しません。 このオプションは、そのプラグインで認証されないアカウントでは無視されます。 クライアントがセキュアな接続を使用してサーバーに接続する場合と同様に、RSA ベースのパスワード交換を使用しない場合も無視されます。--server-public-key-path=
が指定され、有効な公開キーファイルが指定されている場合は、file_name
--get-server-public-key
よりも優先されます。caching_sha2_password
プラグインの詳細は、セクション6.4.1.2「SHA-2 プラガブル認証のキャッシュ」 を参照してください。 -
--host=
,host_name
-h
host_name
指定されたホストの MySQL サーバーに接続します。
-
.mylogin.cnf
ログインパスファイルの指定されたログインパスからオプションを読み取ります。 「「ログインパス」」は、接続先の MySQL サーバーおよび認証に使用するアカウントを指定するオプションを含むオプショングループです。 ログインパスファイルを作成または変更するには、mysql_config_editor ユーティリティを使用します。 セクション4.6.7「mysql_config_editor — MySQL 構成ユーティリティー」を参照してください。このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
-
サーバーへの接続に失敗するなどのエラーの際にデフォルトで鳴らされる警告音を抑制します。
-
オプションファイルを読み取りません。 オプションファイルから不明のオプションを読み取ることが原因でプログラムの起動に失敗する場合、
--no-defaults
を使用して、オプションを読み取らないようにすることができます。例外として、
.mylogin.cnf
ファイルは、存在する場合はすべての場合に読み取られます。 これにより、--no-defaults
が使用された場合でも、コマンド行よりも安全な方法でパスワードを指定できます。(.mylogin.cnf
は mysql_config_editor ユーティリティーによって作成されます。 セクション4.6.7「mysql_config_editor — MySQL 構成ユーティリティー」を参照してください)。このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
-
--password[=
,password
]-p[
password
]サーバーへの接続に使用される MySQL アカウントのパスワード。 パスワード値はオプションです。 指定しない場合、mysqladmin によってプロンプトが表示されます。 指定する場合は、
--password=
または-p
とそれに続くパスワードの間にスペースなしが存在する必要があります。 パスワードオプションを指定しない場合、デフォルトではパスワードは送信されません。コマンド行でのパスワード指定は、セキュアでないと考えるべきです。 コマンド行でパスワードを指定しないようにするには、オプションファイルを使用します。 セクション6.1.2.1「パスワードセキュリティーのためのエンドユーザーガイドライン」を参照してください。
パスワードがなく、mysqladmin でパスワードの入力を求められないように明示的に指定するには、
--skip-password
オプションを使用します。 -
Windows で、名前付きパイプを使用してサーバーに接続します。 このオプションは、ネームパイプ接続をサポートするために
named_pipe
システム変数を有効にしてサーバーを起動した場合にのみ適用されます。 また、接続を行うユーザーは、named_pipe_full_access_group
システム変数で指定された Windows グループのメンバーである必要があります。 -
プラグインを検索するディレクトリ。 このオプションは、
--default-auth
オプションを使用して認証プラグインを指定しても、mysqladmin がそれを検出しない場合に指定します。 セクション6.2.17「プラガブル認証」を参照してください。 -
TCP/IP 接続の場合、使用するポート番号。
-
プログラム名と、オプションファイルから受け取るすべてのオプションを出力します。
このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
-
--protocol={TCP|SOCKET|PIPE|MEMORY}
サーバーへの接続に使用するトランスポートプロトコル。 これは、他の接続パラメータが通常、必要なプロトコル以外のプロトコルを使用する場合に便利です。 許可される値の詳細は、セクション4.2.7「接続トランスポートプロトコル」を参照してください。
-
--sleep
オプションとともに使用された場合、現在値と以前の値の差異を表示します。 このオプションはextended-status
コマンドとのみ機能します。 -
--server-public-key-path=
file_name
RSA キーペアベースのパスワード交換のためにサーバーが必要とする公開キーのクライアント側コピーを含む、PEM 形式のファイルへのパス名。 このオプションは、
sha256_password
またはcaching_sha2_password
認証プラグインで認証されるクライアントに適用されます。 これらのプラグインのいずれかで認証されないアカウントでは、このオプションは無視されます。 クライアントがセキュアな接続を使用してサーバーに接続する場合と同様に、RSA ベースのパスワード交換を使用しない場合も無視されます。--server-public-key-path=
が指定され、有効な公開キーファイルが指定されている場合は、file_name
--get-server-public-key
よりも優先されます。sha256_password
の場合、このオプションは、MySQL が OpenSSL を使用して構築された場合にのみ適用されます。sha256_password
およびcaching_sha2_password
プラグインの詳細は、セクション6.4.1.3「SHA-256 プラガブル認証」 および セクション6.4.1.2「SHA-2 プラガブル認証のキャッシュ」 を参照してください。 -
--shared-memory-base-name=
name
Windows の場合、共有メモリを使用してローカルサーバに接続するために使用する共有メモリ名。 デフォルト値は
MYSQL
です。 共有メモリー名では大文字と小文字が区別されます。このオプションは、共有メモリー接続をサポートするために
shared_memory
システム変数を有効にしてサーバーを起動した場合にのみ適用されます。 -
サーバーに送信されたステートメントの実行によって発生した警告を表示します。
-
サーバーのシャットダウンを待機する最大秒数。 デフォルト値は 3600 秒 (1 時間) です。
-
サーバーとの接続が確立できない場合、警告なしで終了します。
-
コマンドを繰り返し実行し、その間
delay
秒間スリープします。--count
オプションは反復回数を決定します。--count
が指定されていない場合は、mysqladmin は中断されるまでいつまでもコマンドを実行します。 -
localhost
への接続用に使用する、Unix ソケットファイル、または Windows では使用する名前付きパイプの名前。Windows では、このオプションは、名前付きパイプ接続をサポートするために
named_pipe
システム変数を有効にしてサーバーを起動した場合にのみ適用されます。 また、接続を行うユーザーは、named_pipe_full_access_group
システム変数で指定された Windows グループのメンバーである必要があります。 -
--ssl
で始まるオプションは、SSL を使用してサーバーに接続するかどうかを指定し、SSL 鍵および証明書を検索する場所を指定します。 暗号化接続のコマンドオプションを参照してください。 -
--ssl-fips-mode={OFF|ON|STRICT}
クライアント側で FIPS モードを有効にするかどうかを制御します。
--ssl-fips-mode
オプションは、暗号化された接続の確立には使用されず、許可する暗号化操作に影響する点で、他の--ssl-
オプションとは異なります。 セクション6.8「FIPS のサポート」を参照してください。xxx
次の
--ssl-fips-mode
値を使用できます:OFF
: FIPS モードを無効にします。ON
: FIPS モードを有効にします。STRICT
: 「strict」 FIPS モードを有効にします。
注記OpenSSL FIPS オブジェクトモジュールが使用できない場合、
--ssl-fips-mode
に許可される値はOFF
のみです。 この場合、--ssl-fips-mode
をON
またはSTRICT
に設定すると、クライアントは起動時に警告を生成し、FIPS 以外のモードで動作します。 -
--tls-ciphersuites=
ciphersuite_list
TLSv1.3 を使用する暗号化された接続に許可される暗号スイート。 値は、コロンで区切られた 1 つ以上の暗号スイート名のリストです。 このオプションに指定できる暗号スイートは、MySQL のコンパイルに使用される SSL ライブラリによって異なります。 詳細は、セクション6.3.2「暗号化された接続 TLS プロトコルおよび暗号」を参照してください。
このオプションは MySQL 8.0.16 で追加されました。
-
暗号化された接続に許可される TLS プロトコル。 値は、1 つまたは複数のコンマ区切りプロトコル名のリストです。 このオプションに指定できるプロトコルは、MySQL のコンパイルに使用される SSL ライブラリによって異なります。 詳細は、セクション6.3.2「暗号化された接続 TLS プロトコルおよび暗号」を参照してください。
-
--user=
,user_name
-u
user_name
サーバーへの接続に使用する MySQL アカウントのユーザー名。
-
冗長モード。 プログラムの動作についてより多くの情報を出力します。
-
バージョン情報を表示して終了します。
-
出力を縦に出力します。 これは
--relative
と同様ですが、出力を縦に出力します。 -
接続が確立できない場合、中止せずに待機してからリトライします。
count
値が指定されている場合、リトライ回数を示します。 デフォルトは 1 回です。 -
--zstd-compression-level=
level
zstd
圧縮アルゴリズムを使用するサーバーへの接続に使用する圧縮レベル。 許可されるレベルは 1 から 22 で、大きい値は圧縮レベルの増加を示します。 デフォルトのzstd
圧縮レベルは 3 です。 圧縮レベルの設定は、zstd
圧縮を使用しない接続には影響しません。詳細は、セクション4.2.8「接続圧縮制御」を参照してください。
このオプションは MySQL 8.0.18 で追加されました。