MySQL 配置:何时使用连字符以及何时使用下划线

Posted

技术标签:

【中文标题】MySQL 配置:何时使用连字符以及何时使用下划线【英文标题】:MySQL configuration: when to use hyphen and when to use underscore 【发布时间】:2011-12-05 21:20:22 【问题描述】:

mysql 中,一些配置选项使用_,一些使用-。有什么方法可以轻松确定何时使用一种与另一种?

【问题讨论】:

当您要更改配置选项时,您肯定已经将其放在眼前,不是吗?不确定这会有什么意义? 使用下划线 (_) 以免混淆 MySQL 服务器的命令行标志。 @Pekka 至少,如果每个选项都遵循独特的模式,那会很有帮助,同意吗? 【参考方案1】:

没有。

这只是一个团队设计产品时发生的事情之一。 使用不同的约定会导致不一致。

请看这里:http://dev.mysql.com/doc/refman/5.5/en/mysqld-option-tables.html

滚动到以ssl 开头的选项,您就会明白我的意思了。

【讨论】:

在文档中甚至不一致:在Time Zones 我们找到default-time-zonedefault_time_zone。两者都要吗?它会同时包含在配置文件和命令行中吗?如果没有,它会发出警告还是默默地忽略?这在很多方面都是草率的,并导致不必要的混乱。我记得大约 20 年前记录了一个错误来修复这个问题。咕噜。 测试显示,从配置文件读取时,下划线和虚线选项都有效,未知选项将导致服务器无法启动。 default_time_zonedefault_time-zonedefault-time-zone 都被识别。 (MariaDB 10.2.13) 太好了!。【参考方案2】:

根据the mysql bug report讨论mysql文档混乱状态的建议:

    my.cnf 和命令行选项可以使用_- 在选项名称中。 服务器变量是_仅在工作时 使用 MySQL 客户端(例如从 SET 修改)。

总之,您可以在配置文件中交替使用_-

【讨论】:

以上是关于MySQL 配置:何时使用连字符以及何时使用下划线的主要内容,如果未能解决你的问题,请参考以下文章

MySQL中的`unsigned`是啥意思以及何时使用它?

电子邮件标题中的特殊字符是啥以及何时使用引号?

Laravel 迁移字符串(MySQL VarChar)与文本 - 何时使用它们?它们有何不同?

何时使用 socket.io ?以及何时使用简单的 Http 调用? [复制]

何时在 Python 中使用一两个下划线 [重复]

mysql 何时使用myisam,何时使用innodb?