Documentation Home
MySQL 8.0 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.3Mb
PDF (A4) - 40.3Mb
PDF (RPM) - 39.9Mb
HTML Download (TGZ) - 10.5Mb
HTML Download (Zip) - 10.6Mb
HTML Download (RPM) - 9.2Mb
Man Pages (TGZ) - 240.0Kb
Man Pages (Zip) - 343.7Kb
Info (Gzip) - 3.9Mb
Info (Zip) - 3.9Mb
Excerpts from this Manual

MySQL 8.0 Reference Manual  /  ...  /  comp_err — Compile MySQL Error Message File

4.4.1 comp_err — Compile MySQL Error Message File

comp_err creates the errmsg.sys file that is used by mysqld to determine the error messages to display for different error codes. comp_err normally is run automatically when MySQL is built. It compiles the errmsg.sys file from text-format error information in MySQL source distributions:

  • As of MySQL 8.0.19, the error information comes from the messages_to_error_log.txt and messages_to_clients.txt files in the share directory.

    For more information about defining error messages, see the comments within those files, along with the errmsg_readme.txt file.

  • Prior to MySQL 8.0.19, the error information comes from the errmsg-utf8.txt file in the sql/share directory.

comp_err also generates the mysqld_error.h, mysqld_ername.h, and mysqld_errmsg.h header files.

Invoke comp_err like this:

shell> comp_err [options]

comp_err supports the following options.

  • --help, -?

    Display a help message and exit.

  • --charset=dir_name, -C dir_name

    The character set directory. The default is ../sql/share/charsets.

  • --debug=debug_options, -# debug_options

    Write a debugging log. A typical debug_options string is d:t:O,file_name. The default is d:t:O,/tmp/comp_err.trace.

  • --debug-info, -T

    Print some debugging information when the program exits.

  • --errmsg-file=file_name, -H file_name

    The name of the error message file. The default is mysqld_errmsg.h. This option was added in MySQL 8.0.18.

  • --header-file=file_name, -H file_name

    The name of the error header file. The default is mysqld_error.h.

  • --in-file=file_name, -F file_name

    The name of the input file. The default is ../share/errmsg-utf8.txt.

    This option was removed in MySQL 8.0.19 and replaced by the --in-file-errlog and --in-file-toclient options.

  • --in-file-errlog=file_name, -e file_name

    The name of the input file that defines error messages intended to be written to the error log. The default is ../share/messages_to_error_log.txt.

    This option was added in MySQL 8.0.19.

  • --in-file-toclient=file_name, -c file_name

    The name of the input file that defines error messages intended to be written to clients. The default is ../share/messages_to_clients.txt.

    This option was added in MySQL 8.0.19.

  • --name-file=file_name, -N file_name

    The name of the error name file. The default is mysqld_ername.h.

  • --out-dir=dir_name, -D dir_name

    The name of the output base directory. The default is ../sql/share/.

  • --out-file=file_name, -O file_name

    The name of the output file. The default is errmsg.sys.

  • --version, -V

    Display version information and exit.