MySQL my.cnf文件 - 找不到前一组的选项

Afr*_*fra 61 mysql my.cnf

我正在尝试远程连接到Ubuntu中的数据库,但在尝试时遇到错误消息mysql -u root -p:

在配置文件中找到没有前面组的选项:/etc/mysql/my.cnf at line:1

my.cnf看起来像:

[mysqld]
user        = mysql
socket      = /var/run/mysqld/mysqld.sock
port        = 3306
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
bind-address        =  0.0.0.0
key_buffer      = 16M
max_allowed_packet  = 16M
thread_stack        = 192K
thread_cache_size       = 8
myisam-recover         = BACKUP
query_cache_limit   = 1M
query_cache_size        = 16M
log_error                = /var/log/mysql/error.log
expire_logs_days    = 10
max_binlog_size         = 100M

[client]
port        = 3306
socket      = /var/run/mysqld/mysqld.sock

[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice        = 0

[mysqldump]
quick
quote-names
max_allowed_packet  = 16M

[mysql]

[isamchk]
key_buffer      = 16M
Run Code Online (Sandbox Code Playgroud)

小智 71

缺少配置标头

只需[mysqld]/etc/mysql/my.cnf文件中添加第一行即可.

[mysqld]
default-time-zone = "+08:00"
Run Code Online (Sandbox Code Playgroud)

然后,记得重新启动MySQL服务.

sudo mysqld stop
sudo mysqld start
Run Code Online (Sandbox Code Playgroud)

  • 他的 my.cnf 已经有 [mysqld]...您的答案对于那些没有该行的人很有用。 (5认同)

ale*_*oot 39

字符集编码

检查文件的charset编码.确保它是ASCII格式.

例如,使用该od命令查看开头是否有UTF-8 BOM.

  • 附加说明:缺少[mysqld]也会导致错误. (36认同)

小智 13

这是因为[mysqld]前面的字母或数字只是在[mysqld]之前检查了汇率或数字是不需要的

它可能是这样的

0 [mysqld]然后会发生此错误

  • 是的,配置文件中有一个随机+字符.谢谢! (2认同)

小智 7

什么对我有用:

  • 用 Notepad++ 打开 my.ini
  • 编码 --> 转换为 ANSI
  • 节省