MySQL 8.0 リファレンスマニュアル


10.12 エラーメッセージ言語の設定

デフォルトでは、mysqld は英語でエラーメッセージを生成しますが、他のいくつかの言語では表示できます: チェコ語、デンマーク語、オランダ語、エストニア語、フランス語、ドイツ語、ギリシャ語、ハンガリー語、イタリア語、日本語、韓国語、ノルウェー語、ノルウェー語、ニュージー語、ポーランド語、ポルトガル語、ルーマニア語、ロシア語、スロバキア語、スペイン語またはスウェーデン語。 これは、サーバーがエラーログに書き込み、クライアントに送信するメッセージに適用されます。

サーバーがエラーメッセージを書き込む言語を選択するには、このセクションの手順に従います。 エラーメッセージの (言語ではなく) 文字セットの変更の詳細は、セクション10.6「エラーメッセージ文字セット」を参照してください。 エラーロギングの構成に関する一般情報は、セクション5.4.2「エラーログ」 を参照してください。

サーバーは、次のルールを使用してエラーメッセージファイルを検索します:

  • ファイルは、lc_messages_dir および lc_messages の 2 つのシステム変数値から作成されたディレクトリ内で検索され、後者は言語名に変換されます。 次のコマンドを使用してサーバーを起動するとします。

    mysqld --lc_messages_dir=/usr/share/mysql --lc_messages=fr_FR

    この場合、mysqld は、ロケール fr_FR を言語 french にマップし、/usr/share/mysql/french ディレクトリでエラーファイルを検索します。

    デフォルトでは、言語ファイルは、MySQL ベースディレクトリ下の share/mysql/LANGUAGE ディレクトリにあります。

  • 前述のように構築されたディレクトリでメッセージファイルが見つからない場合、サーバーは、lc_messages 値を無視し、検索する場所として lc_messages_dir 値だけを使用します。

  • 構成されたメッセージファイルが見つからない場合は、問題を示すメッセージがエラーログに書き込まれ、デフォルトで組込み英語メッセージに設定されます。

lc_messages_dir システム変数は、サーバーの起動時にのみ設定でき、実行時にはグローバルな読取り専用値のみを持ちます。lc_messages はサーバーの起動時に設定でき、実行時に変更できるグローバル値およびセッション値を持ちます。 したがって、エラーメッセージの言語はサーバーの実行中に変更でき、各クライアントはセッション lc_messages 値を目的のロケール名に設定することで、独自のエラーメッセージの言語を持つことができます。 たとえば、サーバーがエラーメッセージに fr_FR ロケールを使用している場合、クライアントは、次のステートメントを実行すると、英語でエラーメッセージを受信できます。

SET lc_messages = 'en_US';

関連キーワード:  文字, セット, 照合, 順序, エラーメッセージ, 言語, サーバー, messages, 設定, サポート