MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む
このページは機械翻訳したものです。
mysql は次のオプションをサポートします。これらはコマンド行またはオプションファイルの [mysql]
グループおよび [client]
グループで指定できます。 MySQL プログラムによって使用されるオプションファイルの詳細については、セクション4.2.2.2「オプションファイルの使用」を参照してください。
表 4.11 「mysql クライアントオプション」
オプション名 | 説明 | 導入 | 非推奨 |
---|---|---|---|
--auto-rehash | 自動リハッシュを有効化 | ||
--auto-vertical-output | 結果セットの垂直形式での表示を有効化 | ||
--batch | 履歴ファイルを使用しない | ||
--binary-as-hex | 16 進数表記でバイナリ値を表示 | ||
--binary-mode | \r\n の \n への変換および \0 をクエリーの終端として処理することを無効化 | ||
--bind-address | 指定されたネットワークインタフェースを使用して MySQL サーバーに接続 | ||
--character-sets-dir | 文字セットがインストールされているディレクトリ | ||
--column-names | 結果にカラム名を記述 | ||
--column-type-info | 結果セットのメタデータを表示 | ||
--comments | サーバーに送信されたステートメント内のコメントを保持するか削除するか | ||
--compress | クライアントとサーバー間で送信される情報をすべて圧縮 | 8.0.18 | |
--compression-algorithms | サーバーへの接続に許可される圧縮アルゴリズム | 8.0.18 | |
--connect-expired-password | クライアントが期限切れパスワードのサンドボックスモードを処理できることをサーバーに指示 | ||
--connect-timeout | 接続タイムアウトまでの秒数 | ||
--database | 使用されるべきデータベース | ||
--debug | デバッグログを書き込みます。MySQL がデバッグサポート付きで構築された場合にのみサポートされます | ||
--debug-check | プログラムの終了時にデバッグ情報を出力 | ||
--debug-info | プログラムの終了時に、デバッグ情報、メモリー、および CPU の統計を出力 | ||
--default-auth | 使用する認証プラグイン | ||
--default-character-set | デフォルト文字セットを指定 | ||
--defaults-extra-file | 通常のオプションファイルに加えて、名前付きオプションファイルを読み取ります | ||
--defaults-file | 指名されたオプションファイルのみを読み取る | ||
--defaults-group-suffix | オプショングループのサフィクス値 | ||
--delimiter | ステートメント区切り文字を設定 | ||
--dns-srv-name | ホスト情報のための DNS SRV 参照の使用 | 8.0.22 | |
--enable-cleartext-plugin | 平文の認証プラグインを有効化 | ||
--execute | ステートメントを実行して終了 | ||
--force | SQL エラーが発生しても続行 | ||
--get-server-public-key | サーバーから RSA 公開キーをリクエスト | ||
--help | ヘルプメッセージを表示して終了 | ||
--histignore | ロギングに関してどのステートメントを無視するかを指定するパターン | ||
--host | MySQL サーバーがあるホスト | ||
--html | HTML 出力を生成します | ||
--ignore-spaces | 関数名のあとのスペースを無視 | ||
--init-command | 接続後に実行する SQL ステートメント | ||
--line-numbers | エラーの行番号を書き込み | ||
--load-data-local-dir | LOAD DATA LOCAL ステートメントで指定されたファイルのディレクトリ | 8.0.21 | |
--local-infile | LOAD DATA の LOCAL 機能の有効化または無効化 | ||
--login-path | ログインパスオプションを .mylogin.cnf から読み取り | ||
--max-allowed-packet | サーバーとの間で送受信するパケットの最大長 | ||
--max-join-size | --safe-updates を使用する結合で、自動的に設定される行の制限 | ||
--named-commands | 名前付き mysql コマンドを有効化 | ||
--net-buffer-length | TCP/IP とソケット通信のバッファーサイズ | ||
--network-namespace | ネットワークネームスペースの指定 | 8.0.22 | |
--no-auto-rehash | 自動リハッシュを無効化 | ||
--no-beep | エラー時に音を発生させない | ||
--no-defaults | オプションファイルを読み取らない | ||
--one-database | コマンド行で指定されたデフォルトデータベースに対するステートメント以外を無視 | ||
--pager | クエリー出力のページングに指定されたコマンドを使用 | ||
--password | サーバーに接続する際に使用するパスワード | ||
--pipe | 名前付きパイプを使用してサーバに接続する (Windows のみ) | ||
--plugin-dir | プラグインがインストールされているディレクトリ | ||
--port | 接続用の TCP/IP ポート番号 | ||
--print-defaults | デフォルトオプションの印刷 | ||
--prompt | プロンプトを指定された形式に設定 | ||
--protocol | 使用するトランスポートプロトコル | ||
--quick | 各クエリーの結果をキャッシュしない | ||
--raw | カラム値をエスケープの変換なしで書き込み | ||
--reconnect | サーバーとの接続が失われたとき、再接続を自動的に試行 | ||
--safe-updates, --i-am-a-dummy | キー値を指定する UPDATE ステートメントおよび DELETE ステートメントのみを許可 | ||
--select-limit | --safe-updates 使用時に自動的に設定される SELECT ステートメントの制限 | ||
--server-public-key-path | RSA 公開鍵を含むファイルへのパス名 | ||
--shared-memory-base-name | 共有メモリー接続用の共有メモリー名 (Windows のみ) | ||
--show-warnings | 各ステートメントのあとに警告があれば表示 | ||
--sigint-ignore | SIGINT 信号を無視 (通常、Control+C を入力した結果) | ||
--silent | サイレントモード | ||
--skip-auto-rehash | 自動リハッシュを無効化 | ||
--skip-column-names | 結果にカラム名を記述しない | ||
--skip-line-numbers | エラーの行番号を省略 | ||
--skip-named-commands | 名前付き mysql コマンドを無効化 | ||
--skip-pager | ページングを無効化 | ||
--skip-reconnect | 再接続を無効化 | ||
--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 | サーバーへの接続に必要なセキュリティ状態 | ||
--syslog | インタラクティブなステートメントをシステムログに記録 | ||
--table | 出力を表形式で表示 | ||
--tee | 出力のコピーを指定されたファイルに追加 | ||
--tls-ciphersuites | 暗号化された接続に許可される TLSv1.3 暗号スイート | 8.0.16 | |
--tls-version | 暗号化された接続に許可される TLS プロトコル | ||
--unbuffered | 各クエリーのあとでバッファーをフラッシュ | ||
--user | サーバーへの接続時に使用する MySQL ユーザー名 | ||
--verbose | 冗長モード | ||
--version | バージョン情報を表示して終了 | ||
--vertical | クエリー出力行を垂直形式で出力 (カラム値ごとに 1 行) | ||
--wait | 接続が確立できない場合、中止せずに待機してからリトライ | ||
--xml | XML 出力を生成 | ||
--zstd-compression-level | zstd 圧縮を使用するサーバーへの接続の圧縮レベル | 8.0.18 |
ヘルプメッセージを表示して終了します。
自動リハッシュを有効化 このオプションはデフォルトでオンになっており、データベース、テーブル、およびカラムの名前補完が可能になります。 リハッシュを無効にするには、--disable-auto-rehash
を使用します。 これにより、mysql の起動がより高速になりますが、名前補完を使用する場合は rehash
コマンドまたはそのショートカット \#
を発行する必要があります。
名前を補完するには、最初の部分を入力して Tab を押します。 名前があいまいでない場合、mysql がその名前を補完します。 そうでない場合は、Tab をもう一度押して、これまでに入力した値で始まる、考えられる名前を表示できます。 デフォルトのデータベースがない場合、補完は行われません。
この機能では、readline ライブラリでコンパイルされた MySQL クライアントが必要です。 通常、readline ライブラリは Windows では使用できません。
結果セットが現在のウィンドウに対して大きすぎる場合には縦に表示され、そうでない場合は通常の表形式が使用されるようになります。 (これは、;
または \G
で終了するステートメントに適用されます。)
カラム区切り文字としてタブを使用し、各行を新しい行に出力します。 このオプションでは、mysql は履歴ファイルを使用しません。
バッチモードでは、表形式でない出力が生成され、特殊文字のエスケープ処理が行われます。 raw モードを使用すれば、エスケープ処理を無効にできます。--raw
オプションの説明を参照してください。
このオプションを指定すると、mysql は 16 進数表記 (0x
) を使用してバイナリデータを表示します。 これは、全体的な出力表示形式が表形式、垂直形式、HTML 形式または XML 形式のいずれであるかに関係なく発生します。
value
--binary-as-hex
を有効にすると、CHAR()
や UNHEX()
などの関数によって返されるものも含め、すべてのバイナリ文字列の表示に影響します。 次の例では、A
の ASCII コード (65 decimal、41 hexadecimal) を使用してこれを後退させます:
--binary-as-hex
無効:
mysql> SELECT CHAR(0x41), UNHEX('41');
+------------+-------------+
| CHAR(0x41) | UNHEX('41') |
+------------+-------------+
| A | A |
+------------+-------------+
--binary-as-hex
有効:
mysql> SELECT CHAR(0x41), UNHEX('41');
+------------------------+--------------------------+
| CHAR(0x41) | UNHEX('41') |
+------------------------+--------------------------+
| 0x41 | 0x41 |
+------------------------+--------------------------+
--binary-as-hex
が有効かどうかに関係なく文字列として表示されるようにバイナリ文字列式を記述するには、次の手法を使用します:
CHAR()
関数には、次の USING
句があります:
charset
mysql> SELECT CHAR(0x41 USING utf8mb4);
+--------------------------+
| CHAR(0x41 USING utf8mb4) |
+--------------------------+
| A |
+--------------------------+
より一般的には、CONVERT()
を使用して式を特定の文字セットに変換します:
mysql> SELECT CONVERT(UNHEX('41') USING utf8mb4);
+------------------------------------+
| CONVERT(UNHEX('41') USING utf8mb4) |
+------------------------------------+
| A |
+------------------------------------+
MySQL 8.0.19 では、mysql が対話モードで動作している場合、このオプションはデフォルトで有効になっています。 また、オプションが暗黙的または明示的に有効になっている場合、status
(または\s
) コマンドからの出力には次の行が含まれます:
Binary data as: Hexadecimal
16 進表記法を無効にするには、--skip-binary-as-hex
を使用
このオプションは、BLOB
値を含む可能性のある mysqlbinlog の出力を処理する場合に便利です。 mysql は、デフォルトではステートメント文字列内の \r\n
を \n
に変換し、\0
をステートメント終端記号と解釈します。--binary-mode
ではこの両方の機能が無効になります。 また、charset
および delimiter
を除くすべての mysql コマンドを非対話モードで無効にします (mysql にパイプされた入力または source
コマンドを使用してロードされた入力の場合)。
複数のネットワークインタフェースを持つコンピュータで、このオプションを使用して、MySQL サーバーへの接続に使用するインタフェースを選択します。
文字セットがインストールされているディレクトリ。 セクション10.15「文字セットの構成」を参照してください。
結果にカラム名を記述します。
結果セットのメタデータを表示します。 この情報は、C API MYSQL_FIELD
データ構造体の内容に対応します。 C API Basic Data Structuresを参照してください。
サーバーに送信されるステートメント内のコメントを削除するか保持するか。 デフォルトは --skip-comments
(コメントの削除)、--comments
で有効化 (コメントを保持) です。
このオプションが指定されているかどうかに関係なく、mysql クライアントは常にオプティマイザヒントをサーバーに渡します。
コメントの削除は非推奨です。 この機能と、将来の MySQL リリースで削除されることを制御するオプションが必要です。
可能であれば、クライアントとサーバーの間で送信されるすべての情報を圧縮します。 セクション4.2.8「接続圧縮制御」を参照してください。
MySQL 8.0.18 では、このオプションは非推奨です。 将来のバージョンの MySQL で削除される予定です。 レガシー接続圧縮の構成を参照してください。
--compression-algorithms=
value
サーバーへの接続に許可される圧縮アルゴリズム。 使用可能なアルゴリズムは、protocol_compression_algorithms
システム変数の場合と同じです。 デフォルト値は uncompressed
です。
詳細は、セクション4.2.8「接続圧縮制御」を参照してください。
このオプションは MySQL 8.0.18 で追加されました。
接続に使用されるアカウントに期限切れのパスワードがある場合、クライアントがサンドボックスモードを処理できることをサーバーに示します。 通常サーバーは、パスワードの期限の切れたアカウントを使用して接続を試みる非インタラクティブなクライアントを切断するため、これは非インタラクティブに mysql を起動する場合に便利です。 (セクション6.2.16「期限切れパスワードのサーバー処理」を参照してください。)
接続タイムアウトまでの秒数。 (デフォルト値は 0
です。)
--database=
, db_name
-D
db_name
使用するデータベース。 これは主に、オプションファイルで便利です。
--debug[=
, debug_options
]-# [
debug_options
]
デバッグのログを書き込みます。 一般的な debug_options
文字列は d:t:o,
です。 デフォルトは file_name
d:t:o,/tmp/mysql.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
をデフォルト文字セットとして使用します。
このオプションは、オペレーティングシステムがある文字セットを使用し、mysql クライアントがデフォルトで別の文字セットを使用する場合に便利です。 この場合、出力が正しくフォーマットされない可能性があります。 このような問題は通常、このオプションを使用して、クライアントが代わりにシステムの文字セットを使用するように強制することで解決できます。
詳細は、セクション10.4「接続文字セットおよび照合順序」およびセクション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
のサフィクスが付いたグループも読み取ります。 たとえば、mysql は通常 [client]
グループおよび [mysql]
グループを読み取ります。 --defaults-group-suffix=_other
オプションを指定した場合、mysql は [client_other]
グループおよび [mysql_other]
グループも読み取ります。
このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
ステートメント区切り文字を設定します。 デフォルトはセミコロン (;
) 文字です。
名前付きコマンドを無効化します。 \*
形式のみを使用します。または、セミコロン (;
) で終わる行の先頭でのみ名前付きコマンドを使用します。mysql の起動時に、このオプションはデフォルトで有効になっています。 ただし、このオプションを使用しても、ロング形式コマンドは最初の行から効果を発揮します。 セクション4.5.1.2「mysql クライアントコマンド」を参照してください。
MySQL サーバーへの接続の確立に使用する候補ホストを決定する DNS SRV レコードの名前を指定します。 MySQL での DNS SRV サポートの詳細は、セクション4.2.6「DNS SRV レコードを使用したサーバーへの接続」 を参照してください。
DNS が example.com
ドメインの SRV 情報で構成されているとします:
Name TTL Class Priority Weight Port Target _mysql._tcp.example.com. 86400 IN SRV 0 5 3306 host1.example.com _mysql._tcp.example.com. 86400 IN SRV 0 10 3306 host2.example.com _mysql._tcp.example.com. 86400 IN SRV 10 5 3306 host3.example.com _mysql._tcp.example.com. 86400 IN SRV 20 5 3306 host4.example.com
その DNS SRV レコードを使用するには、次のように mysql を起動します:
mysql --dns-srv-name=_mysql._tcp.example.com
mysql は、接続が正常に確立されるまで、グループ内の各サーバーへの接続を試行します。 接続の失敗は、サーバーへの接続を確立できない場合にのみ発生します。 DNS SRV レコードの優先度と重みの値によって、サーバーの試行順序が決まります。
--dns-srv-name
を使用して起動された場合、mysql は TCP 接続の確立のみを試みます。
--dns-srv-name
オプションは、両方が指定されている場合、--host
オプションよりも優先されます。--dns-srv-name
では、接続確立で mysql_real_connect()
ではなく mysql_real_connect_dns_srv()
C API 関数が使用されます。 ただし、後で connect
コマンドが実行時に使用され、ホスト名引数が指定された場合、そのホスト名は mysql の起動時に指定された --dns-srv-name
オプションよりも優先され、DNS SRV レコードが指定されます。
このオプションは MySQL 8.0.22 で追加されました。
mysql_clear_password
平文認証プラグインを有効にします。 (セクション6.4.1.4「クライアント側クリアテキストプラガブル認証」を参照してください。)
--execute=
, statement
-e
statement
ステートメントを実行して、終了します。 デフォルトの出力形式は、--batch
で生成されるものと同様です。 例については、セクション4.2.2.1「コマンド行でのオプションの使用」を参照してください。 このオプションでは、mysql は履歴ファイルを使用しません。
SQL エラーが発生しても続行します。
RSA キーペアベースのパスワード交換に必要な公開キーをサーバーにリクエストします。 このオプションは、caching_sha2_password
認証プラグインで認証されるクライアントに適用されます。 そのプラグインの場合、サーバーは要求されないかぎり公開鍵を送信しません。 このオプションは、そのプラグインで認証されないアカウントでは無視されます。 クライアントがセキュアな接続を使用してサーバーに接続する場合と同様に、RSA ベースのパスワード交換を使用しない場合も無視されます。
--server-public-key-path=
が指定され、有効な公開キーファイルが指定されている場合は、file_name
--get-server-public-key
よりも優先されます。
caching_sha2_password
プラグインの詳細は、セクション6.4.1.2「SHA-2 プラガブル認証のキャッシュ」 を参照してください。
ロギングのために無視するステートメントを指定するコロンで区切られたパターンのリスト。 これらのパターンはデフォルトのパターンリスト ("*IDENTIFIED*:*PASSWORD*"
) に追加されます。 このオプションに指定した値は、履歴ファイルに書き込まれるステートメントのロギング、および --syslog
オプションが指定されている場合は syslog
に影響します。 詳細は、セクション4.5.1.3「mysql クライアントロギング」を参照してください。
--host=
, host_name
-h
host_name
指定されたホストの MySQL サーバーに接続します。
--dns-srv-name
オプションは、両方が指定されている場合、--host
オプションよりも優先されます。--dns-srv-name
では、接続確立で mysql_real_connect()
ではなく mysql_real_connect_dns_srv()
C API 関数が使用されます。 ただし、後で connect
コマンドが実行時に使用され、ホスト名引数が指定された場合、そのホスト名は mysql の起動時に指定された --dns-srv-name
オプションよりも優先され、DNS SRV レコードが指定されます。
HTML 出力を生成します。
関数名の後ろのスペースを無視します。 これの効果は、IGNORE_SPACE
SQL モード (セクション5.1.11「サーバー SQL モード」を参照してください) に関する議論で説明されています。
サーバーへの接続後に実行する SQL ステートメント。 auto-reconnect が有効の場合、ステートメントは再接続が生じたあとに再度実行されます。
エラーの行番号を書き込みます。 --skip-line-numbers
で無効にできます。
--load-data-local-dir=
dir_name
このオプションは、LOAD DATA
操作のクライアント側 LOCAL
機能に影響します。 LOAD DATA LOCAL
ステートメントで指定されたファイルを配置する必要があるディレクトリを指定します。 --load-data-local-dir
の効果は、LOCAL
データロードが有効か無効かによって異なります:
LOCAL
データロードが MySQL クライアントライブラリでデフォルトで有効になっている場合、または --local-infile[=1]
を指定して有効になっている場合、--load-data-local-dir
オプションは無視されます。
LOCAL
のデータロードが無効になっている場合は、MySQL クライアントライブラリでデフォルトで無効になっているか、--local-infile=0
を指定すると、--load-data-local-dir
オプションが適用されます。
--load-data-local-dir
が適用される場合、オプション値は、ローカルデータファイルを配置する必要があるディレクトリを指定します。 ディレクトリパス名とロードされるファイルのパス名の比較では、基礎となるファイルシステムの大/小文字の区別に関係なく、大/小文字が区別されます。 オプション値が空の文字列の場合、ディレクトリ名は指定されず、ローカルデータのロードにファイルは許可されません。
たとえば、/my/local/data
ディレクトリにあるファイル以外のローカルデータロードを明示的に無効にするには、次のように mysql を起動します:
mysql --local-infile=0 --load-data-local-dir=/my/local/data
--local-infile
と --load-data-local-dir
の両方が指定されている場合、それらの指定順序は関係ありません。
mysql で LOCAL
ロード操作を正常に使用するには、サーバーでローカルロードが許可されている必要もあります。セクション6.1.6「LOAD DATA LOCAL のセキュリティー上の考慮事項」 を参照してください
--load-data-local-dir
オプションが MySQL 8.0.21 に追加されました。
デフォルトでは、LOAD DATA
の LOCAL
機能は、MySQL クライアントライブラリにコンパイルされたデフォルトで決定されます。 LOCAL
データロードを明示的に有効または無効にするには、--local-infile
オプションを使用します。 値を指定しない場合、このオプションは LOCAL
データロードを有効にします。 --local-infile=0
または --local-infile=1
として指定した場合、このオプションは LOCAL
データロードを無効または有効にします。
LOCAL
機能が無効になっている場合は、--load-data-local-dir
オプションを使用して、指定されたディレクトリにあるファイルの制限付きローカルロードを許可できます。
mysql で LOCAL
ロード操作を正常に使用するには、サーバーでローカルロードが許可されている必要もあります。セクション6.1.6「LOAD DATA LOCAL のセキュリティー上の考慮事項」 を参照してください
.mylogin.cnf
ログインパスファイルの指定されたログインパスからオプションを読み取ります。 「「ログインパス」」は、接続先の MySQL サーバーおよび認証に使用するアカウントを指定するオプションを含むオプショングループです。 ログインパスファイルを作成または変更するには、mysql_config_editor ユーティリティを使用します。 セクション4.6.7「mysql_config_editor — MySQL 構成ユーティリティー」を参照してください。
このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
クライアント/サーバー通信用のバッファーの最大サイズ。 デフォルトは 16M バイト、最大は 1G バイトです。
--safe-updates
使用時の、自動的に設定される結合内の行の制限。 (デフォルト値は 1,000,000 です。)
名前付き mysql コマンドを有効にします。 ショート形式のコマンドのみではなく、ロング形式のコマンドが許可されます。 たとえば、quit
と \q
は両方認識されます。 名前付きコマンドを無効化するには、--skip-named-commands
を使用します。 セクション4.5.1.2「mysql クライアントコマンド」を参照してください。
TCP/IP とソケット通信のバッファーサイズ。 (デフォルト値は 16K バイトです。)
TCP/IP 接続に使用するネットワークネームスペース。 省略すると、接続ではデフォルト (グローバル) のネームスペースが使用されます。 ネットワークネームスペースの詳細は、セクション5.1.14「ネットワークネームスペースのサポート」 を参照してください。
このオプションは MySQL 8.0.22 で追加されました。 ネットワークネームスペースのサポートを実装するプラットフォームでのみ使用できます。
これは --skip-auto-rehash
と同様の効果を持ちます。 --auto-rehash
の説明を参照してください。
エラー時に音を発生させません。
オプションファイルを読み取りません。 オプションファイルから不明のオプションを読み取ることが原因でプログラムの起動に失敗する場合、--no-defaults
を使用して、オプションを読み取らないようにできます。
例外として、.mylogin.cnf
ファイルは、存在する場合はすべての場合に読み取られます。 これにより、--no-defaults
が使用されたとしても、コマンド行よりも安全な方法でパスワードを指定できます。(.mylogin.cnf
は mysql_config_editor ユーティリティーによって作成されます。 セクション4.6.7「mysql_config_editor — MySQL 構成ユーティリティー」を参照してください)。
このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
デフォルトデータベースがコマンド行で指定されたものである間に生じるステートメント以外を無視します。 このオプションは初歩的なものであり、注意して使用してください。 ステートメントのフィルタリングは USE
ステートメントのみに基づいています。
最初、mysql は入力内のステートメントを実行します。これは、データベース db_name
をコマンド行で指定することは USE
を入力の最初に挿入することと同等であるためです。 次に、db_name
USE
ステートメントを検出するたびに、mysql は、指名されたデータベースがコマンド行のものであるかによって、後続のステートメントを受け入れまたは拒否します。 ステートメントの内容は重要ではありません。
mysql が次の一連のステートメントを処理するために起動されたとします。
DELETE FROM db2.t2; USE db2; DROP TABLE db1.t1; CREATE TABLE db1.t1 (i INT); USE db1; INSERT INTO t1 (i) VALUES(1); CREATE TABLE db2.t1 (j INT);
コマンド行が mysql --force --one-database db1 の場合、mysql は入力を次のように処理します。
DELETE
ステートメントでは別のデータベースのテーブルが指名されていますが、デフォルトデータベースは db1
であるため、このステートメントは実行されます。
DROP TABLE
ステートメントおよび CREATE TABLE
ステートメントでは db1
のテーブルを指名していますが、デフォルトデータベースが db1
ではないため、これらのステートメントは実行されません。
CREATE TABLE
ステートメントでは別のデータベースのテーブルが指名されていますが、デフォルトデータベースは db1
であるため、INSERT
ステートメントおよび CREATE TABLE
ステートメントは実行されます。
クエリー出力のページングに、指定されたコマンドを使用します。 このコマンドが省略された場合、デフォルトのページャーは PAGER
環境変数の値となります。 有効なページャーは、less、more、cat [> filename]、などです。 このオプションは Unix でインタラクティブモードの場合のみ機能します。 ページングを無効化するには、--skip-pager
を使用してください。セクション4.5.1.2「mysql クライアントコマンド」には出力のページングの詳細説明があります。
--password[=
, password
]-p[
password
]
サーバーへの接続に使用される MySQL アカウントのパスワード。 パスワード値はオプションです。 指定しない場合、mysql によってプロンプトが表示されます。 指定する場合は、--password=
または -p
とそれに続くパスワードの間にスペースなしが存在する必要があります。 パスワードオプションを指定しない場合、デフォルトではパスワードは送信されません。
コマンド行でのパスワード指定は、セキュアでないと考えるべきです。 コマンド行でパスワードを指定しないようにするには、オプションファイルを使用します。 セクション6.1.2.1「パスワードセキュリティーのためのエンドユーザーガイドライン」を参照してください。
パスワードがなく、mysql でパスワードの入力を求められないように明示的に指定するには、--skip-password
オプションを使用します。
Windows で、名前付きパイプを使用してサーバーに接続します。 このオプションは、ネームパイプ接続をサポートするために named_pipe
システム変数を有効にしてサーバーを起動した場合にのみ適用されます。 また、接続を行うユーザーは、named_pipe_full_access_group
システム変数で指定された Windows グループのメンバーである必要があります。
プラグインを検索するディレクトリ。 このオプションは、--default-auth
オプションを使用して認証プラグインを指定しても、mysql がそれを検出しない場合に指定します。 セクション6.2.17「プラガブル認証」を参照してください。
TCP/IP 接続の場合、使用するポート番号。
プログラム名と、オプションファイルから受け取るすべてのオプションを出力します。
このオプションおよびその他のオプションファイルオプションの詳細は、セクション4.2.2.3「オプションファイルの処理に影響するコマンド行オプション」 を参照してください。
プロンプトを指定された形式に設定します。 デフォルトは mysql>
です。 プロンプト内に含めることができる特別なシーケンスは、セクション4.5.1.2「mysql クライアントコマンド」で説明されています。
--protocol={TCP|SOCKET|PIPE|MEMORY}
サーバーへの接続に使用するトランスポートプロトコル。 これは、他の接続パラメータが通常、必要なプロトコル以外のプロトコルを使用する場合に便利です。 許可される値の詳細は、セクション4.2.7「接続トランスポートプロトコル」を参照してください。
各クエリー結果をキャッシュせず、各行を受信ししだい出力します。 出力が遅延された場合、サーバーの速度が低下することがあります。 このオプションでは、mysql は履歴ファイルを使用しません。
表形式の出力では、カラムを「枠で囲む」ことにより、1 つのカラム値を別のカラム値と区別できます。 表形式でない出力 (バッチモードで生成される場合や --batch
または --silent
オプションを指定した場合など) では、簡単に識別できるように特殊文字が出力時にエスケープされます。 改行、タブ、NUL
、およびバックスラッシュはそれぞれ、\n
、\t
、\0
、および \\
と記述されます。 --raw
オプションを指定すると、この文字のエスケープ処理は無効になります。
次の例は、表形式と表形式でない出力の違い、および raw モードを使用してエスケープ処理を無効にした場合を示しています。
%mysql
mysql> SELECT CHAR(92); +----------+ | CHAR(92) | +----------+ | \ | +----------+ %mysql -s
mysql> SELECT CHAR(92); CHAR(92) \\ %mysql -s -r
mysql> SELECT CHAR(92); CHAR(92) \
サーバーとの接続が失われたとき、再接続を自動的に試行します。 接続が失われるたびに一度再接続が試みられます。 再接続動作を抑制するには、--skip-reconnect
を使用します。
--safe-updates
, --i-am-a-dummy
, -U
このオプションを有効にすると、WHERE
句または LIMIT
句でキーを使用しない UPDATE
および DELETE
ステートメントでエラーが発生します。 また、大規模な結果セットを生成する (または生成すると見積もられる) SELECT
ステートメントには制限があります。 オプションファイルでこのオプションを設定した場合は、コマンドラインで --skip-safe-updates
を使用してオーバーライドできます。 このオプションについての詳細は、セーフ更新モードの使用 (--safe-updates)を参照してください。
--safe-updates
使用時の、自動的に設定される SELECT
ステートメントの制限。 (デフォルト値は 1,000 です。)
--server-public-key-path=
file_name
RSA キーペアベースのパスワード交換のためにサーバーが必要とする公開キーのクライアント側コピーを含む、PEM 形式のファイルへのパス名。 このオプションは、sha256_password
または caching_sha2_password
認証プラグインで認証されるクライアントに適用されます。 これらのプラグインのいずれかで認証されないアカウントでは、このオプションは無視されます。 クライアントがセキュアな接続を使用してサーバーに接続する場合と同様に、RSA ベースのパスワード交換を使用しない場合も無視されます。
--server-public-key-path=
が指定され、有効な公開キーファイルが指定されている場合は、file_name
--get-server-public-key
よりも優先されます。
このオプションは、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
システム変数を有効にしてサーバーを起動した場合にのみ適用されます。
警告が存在する場合、各ステートメント後に表示させます。 このオプションはインタラクティブとバッチモードにのみ対応しています。
SIGINT
信号を無視します (通常、Control+C を入力した結果)。
このオプションを指定せずに Control+C を入力すると、現在のステートメントがある場合は中断され、それ以外の場合は一部の入力行が取り消されます。
サイレントモード。 出力の生成を少なくします。 このオプションを複数回指定して、出力の生成をさらに少なくできます。
このオプションでは、表形式でない出力が生成され、特殊文字のエスケープ処理が行われます。 raw モードを使用すれば、エスケープ処理を無効にできます。--raw
オプションの説明を参照してください。
結果にカラム名を記述しません。
エラーの行番号を書き込みません。 エラーメッセージを含む結果ファイルを比較する場合に便利です。
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 以外のモードで動作します。
このオプションにより、mysql は対話型のステートメントをシステムロギング機能に送信します。 Unix の場合は syslog
で、Windows の場合は Windows イベントログです。 ログに記録されたメッセージが表示される宛先は、システムによって異なります。 Linux では、多くの場合、宛先は/var/log/messages
ファイルです。
次に、--syslog
を使用して Linux で生成される出力のサンプルを示します。 この出力は読みやすくするためにフォーマットされており、ログに記録される各メッセージは実際には単一行を取ります。
Mar 7 12:39:25 myhost MysqlClient[20824]: SYSTEM_USER:'oscar', MYSQL_USER:'my_oscar', CONNECTION_ID:23, DB_SERVER:'127.0.0.1', DB:'--', QUERY:'USE test;' Mar 7 12:39:28 myhost MysqlClient[20824]: SYSTEM_USER:'oscar', MYSQL_USER:'my_oscar', CONNECTION_ID:23, DB_SERVER:'127.0.0.1', DB:'test', QUERY:'SHOW TABLES;'
詳細は、セクション4.5.1.3「mysql クライアントロギング」を参照してください。
出力を表形式で表示します。 インタラクティブに使用する場合はこれがデフォルトですが、バッチモードで表形式の出力を生成するのにも使用できます。
出力のコピーを指定されたファイルに追加します。 このオプションはインタラクティブモードの場合のみ機能します。セクション4.5.1.2「mysql クライアントコマンド」で、tee ファイルについて詳細に説明しています。
--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 アカウントのユーザー名。
冗長モード。 プログラムの動作についてより多くの出力を生成します。 このオプションを複数回指定して、さらに多くの出力を生成できます。 (たとえば、-v -v -v
ではバッチモードでも表形式の出力を生成します。)
バージョン情報を表示して終了します。
クエリー出力行を縦に出力します (カラム値ごとに一行)。 このオプションを使用しない場合、個々のステートメントを \G
で終了させることにより、縦の出力を指定できます。
接続が確立できない場合、中止せずに待機してからリトライします。
XML 出力を生成
<field name="column_name
">NULL</field>
--xml
を mysql とともに使用した場合の出力は、mysqldump --xml
の出力と一致します。 詳細は、セクション4.5.4「mysqldump — データベースバックアッププログラム」,を参照してください。
次に示すように、XML 出力は XML 名前空間も使用します。
shell> mysql --xml -uroot -e "SHOW VARIABLES LIKE 'version%'"
<?xml version="1.0"?>
<resultset statement="SHOW VARIABLES LIKE 'version%'" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<row>
<field name="Variable_name">version</field>
<field name="Value">5.0.40-debug</field>
</row>
<row>
<field name="Variable_name">version_comment</field>
<field name="Value">Source distribution</field>
</row>
<row>
<field name="Variable_name">version_compile_machine</field>
<field name="Value">i686</field>
</row>
<row>
<field name="Variable_name">version_compile_os</field>
<field name="Value">suse-linux-gnu</field>
</row>
</resultset>
--zstd-compression-level=
level
zstd
圧縮アルゴリズムを使用するサーバーへの接続に使用する圧縮レベル。 許可されるレベルは 1 から 22 で、大きい値は圧縮レベルの増加を示します。 デフォルトの zstd
圧縮レベルは 3 です。 圧縮レベルの設定は、zstd
圧縮を使用しない接続には影響しません。
詳細は、セクション4.2.8「接続圧縮制御」を参照してください。
このオプションは MySQL 8.0.18 で追加されました。