Bug #76270 Consider improving startup mysql startup NO_AUTO_CREATE_USER warning message
Submitted: 11 Mar 2015 22:56 Modified: 12 Mar 2015 6:15
Reporter: Simon Mudd (OCA) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Options Severity:S3 (Non-critical)
Version:5.7.6, 8.0.0 OS:Any
Assigned to: CPU Architecture:Any
Tags: 5.7, no_auto_create_user, Options, SQL_MODE

[11 Mar 2015 22:56] Simon Mudd
Description:
Starting up mysql 5.7.6 gave the following warning:

2015-03-11T21:27:50.307379Z 0 [Warning] 'NO_AUTO_CREATE_USER' mode is deprecated. It will be made read-only in a future release.

This is confusing as I hadn't actually configured anything with NO_AUTO_CREATE_USER in my /etc/my.cnf file.

The cause of the problem was really an /etc/my.cnf setting like this:

sql_mode = TRADITIONAL,ONLY_FULL_GROUP_BY

The TRADITIONAL sql_mode is a combination of other modes. That should be mentioned.

How to repeat:
see above.

Suggested fix:
Please modify t the error message clear and indicate that the setting refers to sql_mode.

So maybe something like this:

2015-03-11T21:27:50.307379Z 0 [Warning] sql_mode contains the mode: 'NO_AUTO_CREATE_USER'. This mode is deprecated. It will be made read-only in a future release.
2015-03-11T21:27:50.3074000 0 [Warning] Some sql_modes combine the effects of other sql_modes, so you may not have configured this explicitly.
2015-03-11T21:27:50.3074000 0 [Warning] Please check http://dev.mysql.com/doc/refman/5.7/en/sql-mode.html for more details regarding the configuration of sql_mode.

Given the changes in sql_mode behaviour in MySQL 5.7 I think it's useful to be a little explicit about this especially as you want to remove this specific "mode" in a future release.
The extra comments provide a bit more context and point where to find more information if needed.
[12 Mar 2015 6:15] MySQL Verification Team
Hello Simon,

Thank you for the report.

Thanks,
Umesh
[12 Mar 2015 6:17] MySQL Verification Team
// 5.7.6
// Build
[root@cluster-repo mysql-5.7.6]# more docs/INFO_SRC
commit: e1298eb6a8e2247361533811930a07fde7aff618
date: 2015-02-26 15:29:31 +0100
build-date: 2015-02-26 15:35:58 +0100
short: e1298eb
branch: mysql-5.7.6-m16-release

MySQL source 5.7.6

[root@cluster-repo mysql-5.7.6]# bin/mysqld --basedir=/root/setups/mysql-5.7.6 --datadir=/root/setups/mysql-5.7.6/76139 --sql_mode='TRADITIONAL,ONLY_FULL_GROUP_BY' --core-file --socket=/tmp/mysql_ushastry.sock  --port=15000 --log-error=/root/setups/mysql-5.7.6/76139/log.err
2015-03-14T07:49:25.180838Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-03-14T07:49:25.181120Z 0 [Warning] 'NO_AUTO_CREATE_USER' mode is deprecated. It will be made read-only in a future release.

^^^^^^
[12 Mar 2015 6:20] MySQL Verification Team
// 5.8.0
// Build
commit: 5dccdf5a27a9629e926976ac65c2103d73ecfcb5
date: 2015-03-02 13:48:12 -0600
build-date: 2015-03-02 20:58:13 +0100
short: 5dccdf5
branch: mysql-trunk

MySQL source 5.8.0

[umshastr@hod03]/export/umesh/mysql-5.8.0: bin/mysqld --basedir=/export/umesh/mysql-5.8.0 --datadir=/export/umesh/mysql-5.8.0/76270 --sql_mode='TRADITIONAL,ONLY_FULL_GROUP_BY' --core-file --socket=/tmp/mysql_ushastry.sock  --port=15000 --log-error=/export/umesh/mysql-5.8.0/76270/log.err 2>&1 &
[1] 17674
[umshastr@hod03]/export/umesh/mysql-5.8.0: 2015-03-12T06:18:35.100858Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-03-12T06:18:35.100945Z 0 [Warning] 'NO_AUTO_CREATE_USER' mode is deprecated. It will be made read-only in a future release.
^^^
[18 Jun 2016 21:24] Omer Barnir
Posted by developer:
 
Reported version value updated to reflect release name change from 5.8 to 8.0
[9 Dec 7:03] Morse Abraham
That's a good point about the MySQL startup warning. I agree, a clearer message would definitely help new users avoid confusion. Often, obscure error messages like that send people scrambling for documentation or tutorials. It's something that even experienced devs encounter occasionally. When I need a break from debugging, I often find myself relaxing with some quick io games to clear my head. Hopefully, the MySQL team will address this in a future update. https://iogamesweb.com/