Setting the Language for Error Messages
MariaDB server error messages are by default in English. You can change this to a number of other languages. As of MariaDB 10.0, error messages are available in the following languages
- Czech
- Danish
- Dutch
- English
- Estonian
- French
- German
- Greek
- Hungarian
- Italian
- Japanese
- Korean
- Norwegian
- Norwegian-ny (Nynorsk)
- Polish
- Portuguese
- Romanian
- Russian
- Serbian
- Slovak
- Spanish
- Swedish
- Ukrainian
The actual error message file is errmsg.sys
, and there is one for each available language, stored in a different directory.
Setting the lc_messages
System Variable
The lc_messages
and lc_messages_dir
system variables can be used to set the server locale used for error messages.
The lc_messages
system variable is specified as the language name.
Any valid locale my be given, but if error messages for the associated language are not available, the default (English) will be used.
The lc_messages_dir
system variable is specified as the path to the directory storing the server's error message files.
These system variables can be specified as command-line arguments to mysqld
or they can be specified in a relevant server option group in an option file. For example:
[mariadb] ... lc_messages=fr_CA lc_messages_dir=/usr/share/mysql
The lc_messages
system variable can also be changed dynamically with SET GLOBAL
. For example:
SET GLOBAL lc_messages='fr_CA';
The lc_messages_dir
system variable can not be changed dynamically.
With the above configuration, error messages would be in French.:
... SELECT blah; ERROR 1054 (42S22): Champ 'blah' inconnu dans field list
See locales for a list of locales and their related languages.
Setting the --language Option
The --language
option can also be used to set the server's language for error messages, but it is deprecated. It is recommended to set the lc_messages
system variable instead.
The --language
option option can be specified as a language name. For example:
mysqld --language=estonian
The --language
option option can be specified as the path to the directory storing the language's error message file. For example:
mysqld --language=/my/maria-10.0.13/sql/share/danish/
Character Set
The character set that the error messages are returned in is determined by the character_set_results variable, which defaults to UTF8.