B.1 Error Message Sources and Elements (original) (raw)

This section discusses how error messages originate within MySQL and the elements they contain.

Error Message Sources

Error messages can originate on the server side or the client side:

Example server-side error messages written to the error log:

2018-10-28T13:01:32.735983Z 0 [Note] [MY-010303] [Server] Skipping  
generation of SSL certificates as options related to SSL are specified.  
2018-10-02T03:20:39.410387Z 768 [ERROR] [MY-010045] [Server] Event Scheduler:  
[evtuser@localhost][myschema.e_daily] Unknown database 'mydb'  

Example server-side error message sent to client programs, as displayed by the mysql client:

mysql> SELECT * FROM no_such_table;
ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist

Example client-side error message originating from within the client library, as displayed by the mysql client:

$> mysql -h no-such-host
ERROR 2005 (HY000): Unknown MySQL server host 'no-such-host' (-2)

Whether an error originates from within the client library or is received from the server, a MySQL client program may respond in varying ways. As just illustrated, the client may display the error message so the user can take corrective measures. The client may instead internally attempt to resolve or retry a failed operation, or take other action.

Error Message Elements

When an error occurs, error information includes several elements: an error code, SQLSTATE value, and message string. These elements have the following characteristics:

Error Code Ranges

The set of error codes used in error messages is partitioned into distinct ranges, each with its own purpose:

The server handles error messages written to the error log differently from error messages sent to clients: