MySQL 不喜欢任何配置 ins ~/.my.cnf

MySQL doesn't like any configs ins ~/.my.cnf

Mac El Capitan (10.11.6) 在这里。我通过自制程序安装了 MySQL(brew install mysql,它安装了 5.7.17)并且能够使用默认设置启动它(绝对 配置到 my.cnf).我能够创建一个包含表的数据库,填充它们,等等。

我打开 ~/.my.cnf 并看到它是空的,这是有道理的,因为我一开始就没有向它添加任何特殊配置。

所以我添加(到这个空文件):

[mysqld]
default-storage-engine = innodb
default-character-set=utf8
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'

然后我 运行 mysql.server start 开始 MySQL 并且:

mysql.server start
Starting MySQL
... ERROR! The server quit without updating PID file (/usr/local/var/mysql/MyUsername.local.pid).

如果我清除(并再次清空)~/.my.cnf 的内容并重新启动 MySQL,它将完全正常启动(没有错误;我 可以 查询表等)。但是如果我重新添加这些内容,我会得到同样的错误。

所以 很明显 MySQL 正在检查 ~/.my.cnf 以加载配置,很明显 有一些东西它不喜欢的语法。所以我开始了一系列 config/test 循环,看看哪个 属性 是违规者。

我把~/.my.cnf改成:

[mysqld]
default-storage-engine = innodb

然后重启。完全相同的错误。

我把~/.my.cnf改成:

[mysqld]
default-character-set=utf8

然后重启。完全相同的错误。

我把~/.my.cnf改成:

[mysqld]
collation-server = utf8_unicode_ci

然后重启。完全相同的错误。

我把~/.my.cnf改成:

[mysqld]
init-connect='SET NAMES utf8'

然后重启。完全相同的错误。显然这里还有其他事情发生。当我在 ~/.my.cnf 中指定 any 配置时,MySQL 不喜欢它。 这是怎么回事?!?

我尝试遵循 this article 中的所有建议,但其中 none 有效。绝对像是一个 MacOS/MySQL 问题。

如果我打开 /usr/local/var/mysql/MyUser.local.err 我会看到:

2017-04-13T13:10:42.6NZ mysqld_safe Logging to '/usr/local/var/mysql/MyUser.local.err'.
2017-04-13T13:10:42.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
2017-04-13T13:10:42.365982Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-04-13T13:10:42.366238Z 0 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
2017-04-13T13:10:42.366286Z 0 [Note] /usr/local/Cellar/mysql/5.7.17/bin/mysqld (mysqld 5.7.17) starting as process 56561 ...
2017-04-13T13:10:42.369426Z 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
2017-04-13T13:10:42.371041Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-04-13T13:10:42.371058Z 0 [Note] InnoDB: Uses event mutexes
2017-04-13T13:10:42.371062Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2017-04-13T13:10:42.371066Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-04-13T13:10:42.371389Z 0 [Note] InnoDB: Number of pools: 1
2017-04-13T13:10:42.371487Z 0 [Note] InnoDB: Using CPU crc32 instructions
2017-04-13T13:10:42.373341Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
2017-04-13T13:10:42.385062Z 0 [Note] InnoDB: Completed initialization of buffer pool
2017-04-13T13:10:42.402413Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
2017-04-13T13:10:42.456473Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2017-04-13T13:10:42.456722Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2017-04-13T13:10:42.498060Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
2017-04-13T13:10:42.499778Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
2017-04-13T13:10:42.499807Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
2017-04-13T13:10:42.500089Z 0 [Note] InnoDB: Waiting for purge to start
2017-04-13T13:10:42.550861Z 0 [Note] InnoDB: 5.7.17 started; log sequence number 6305962580
2017-04-13T13:10:42.551099Z 0 [Note] InnoDB: Loading buffer pool(s) from /usr/local/var/mysql/ib_buffer_pool
2017-04-13T13:10:42.551345Z 0 [Note] Plugin 'FEDERATED' is disabled.
2017-04-13T13:10:42.555196Z 0 [Note] InnoDB: Buffer pool(s) load completed at 170413 13:10:42
2017-04-13T13:10:42.559085Z 0 [ERROR] unknown variable 'default-character-set=utf8'
2017-04-13T13:10:42.559125Z 0 [ERROR] Aborting

2017-04-13T13:10:42.559139Z 0 [Note] Binlog end
2017-04-13T13:10:42.559221Z 0 [Note] Shutting down plugin 'ngram'
2017-04-13T13:10:42.559253Z 0 [Note] Shutting down plugin 'partition'
2017-04-13T13:10:42.559266Z 0 [Note] Shutting down plugin 'BLACKHOLE'
2017-04-13T13:10:42.559300Z 0 [Note] Shutting down plugin 'ARCHIVE'
2017-04-13T13:10:42.559311Z 0 [Note] Shutting down plugin 'PERFORMANCE_SCHEMA'
2017-04-13T13:10:42.559387Z 0 [Note] Shutting down plugin 'MRG_MYISAM'
2017-04-13T13:10:42.559406Z 0 [Note] Shutting down plugin 'MyISAM'
2017-04-13T13:10:42.559430Z 0 [Note] Shutting down plugin 'INNODB_SYS_VIRTUAL'
2017-04-13T13:10:42.559439Z 0 [Note] Shutting down plugin 'INNODB_SYS_DATAFILES'
2017-04-13T13:10:42.559443Z 0 [Note] Shutting down plugin 'INNODB_SYS_TABLESPACES'
2017-04-13T13:10:42.559447Z 0 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN_COLS'
2017-04-13T13:10:42.559450Z 0 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN'
2017-04-13T13:10:42.559453Z 0 [Note] Shutting down plugin 'INNODB_SYS_FIELDS'
2017-04-13T13:10:42.559457Z 0 [Note] Shutting down plugin 'INNODB_SYS_COLUMNS'
2017-04-13T13:10:42.559460Z 0 [Note] Shutting down plugin 'INNODB_SYS_INDEXES'
2017-04-13T13:10:42.559464Z 0 [Note] Shutting down plugin 'INNODB_SYS_TABLESTATS'
2017-04-13T13:10:42.559467Z 0 [Note] Shutting down plugin 'INNODB_SYS_TABLES'
2017-04-13T13:10:42.559473Z 0 [Note] Shutting down plugin 'INNODB_FT_INDEX_TABLE'
2017-04-13T13:10:42.559477Z 0 [Note] Shutting down plugin 'INNODB_FT_INDEX_CACHE'
2017-04-13T13:10:42.559510Z 0 [Note] Shutting down plugin 'INNODB_FT_CONFIG'
2017-04-13T13:10:42.559514Z 0 [Note] Shutting down plugin 'INNODB_FT_BEING_DELETED'
2017-04-13T13:10:42.559517Z 0 [Note] Shutting down plugin 'INNODB_FT_DELETED'
2017-04-13T13:10:42.559523Z 0 [Note] Shutting down plugin 'INNODB_FT_DEFAULT_STOPWORD'
2017-04-13T13:10:42.559529Z 0 [Note] Shutting down plugin 'INNODB_METRICS'
2017-04-13T13:10:42.559535Z 0 [Note] Shutting down plugin 'INNODB_TEMP_TABLE_INFO'
2017-04-13T13:10:42.559539Z 0 [Note] Shutting down plugin 'INNODB_BUFFER_POOL_STATS'
2017-04-13T13:10:42.559543Z 0 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE_LRU'
2017-04-13T13:10:42.559546Z 0 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE'
2017-04-13T13:10:42.559550Z 0 [Note] Shutting down plugin 'INNODB_CMP_PER_INDEX_RESET'
2017-04-13T13:10:42.559588Z 0 [Note] Shutting down plugin 'INNODB_CMP_PER_INDEX'
2017-04-13T13:10:42.559608Z 0 [Note] Shutting down plugin 'INNODB_CMPMEM_RESET'
2017-04-13T13:10:42.559622Z 0 [Note] Shutting down plugin 'INNODB_CMPMEM'
2017-04-13T13:10:42.559629Z 0 [Note] Shutting down plugin 'INNODB_CMP_RESET'
2017-04-13T13:10:42.559635Z 0 [Note] Shutting down plugin 'INNODB_CMP'
2017-04-13T13:10:42.559640Z 0 [Note] Shutting down plugin 'INNODB_LOCK_WAITS'
2017-04-13T13:10:42.559665Z 0 [Note] Shutting down plugin 'INNODB_LOCKS'
2017-04-13T13:10:42.559674Z 0 [Note] Shutting down plugin 'INNODB_TRX'
2017-04-13T13:10:42.559681Z 0 [Note] Shutting down plugin 'InnoDB'
2017-04-13T13:10:42.559742Z 0 [Note] InnoDB: FTS optimize thread exiting.
2017-04-13T13:10:42.559798Z 0 [Note] InnoDB: Starting shutdown...
2017-04-13T13:10:42.665019Z 0 [Note] InnoDB: Dumping buffer pool(s) to /usr/local/var/mysql/ib_buffer_pool
2017-04-13T13:10:42.665949Z 0 [Note] InnoDB: Buffer pool(s) dump completed at 170413 13:10:42
2017-04-13T13:10:44.125226Z 0 [Note] InnoDB: Shutdown completed; log sequence number 6305962599
2017-04-13T13:10:44.126507Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
2017-04-13T13:10:44.126528Z 0 [Note] Shutting down plugin 'MEMORY'
2017-04-13T13:10:44.126540Z 0 [Note] Shutting down plugin 'CSV'
2017-04-13T13:10:44.126545Z 0 [Note] Shutting down plugin 'sha256_password'
2017-04-13T13:10:44.126549Z 0 [Note] Shutting down plugin 'mysql_native_password'
2017-04-13T13:10:44.126701Z 0 [Note] Shutting down plugin 'binlog'
2017-04-13T13:10:44.126824Z 0 [Note] /usr/local/Cellar/mysql/5.7.17/bin/mysqld: Shutdown complete

2017-04-13T13:10:44.6NZ mysqld_safe mysqld from pid file /usr/local/var/mysql/MyUser.local.pid ended

关于字符集:您所写的可能不再被允许。

Change MySQL default character set to UTF-8 in my.cnf