我尝试使用命令行在macos中启动mysql,但总是显示一个错误:
~ mysql.server start
my_print_defaults: [ERROR] Found option without preceding group in config file /etc/my.cnf at line 1!
my_print_defaults: [ERROR] Fatal error in defaults handling. Program aborted!
Starting MySQL
.my_print_defaults: [ERROR] Found option without preceding group in config file /etc/my.cnf at line 1!
my_print_defaults: [ERROR] Fatal error in defaults handling. Program aborted!
my_print_defaults: [ERROR] Found option without preceding group in config file /etc/my.cnf at line 1!
my_print_defaults: [ERROR] Fatal error in defaults handling. Program aborted!
我搜索了错误,大多数答案是在my.cnf中添加了[mysqld],我检查了my.cnf文件,它已经有了[mysqld]标签。这是my.cnf,在我通过homebrew·github在mac上重新安装mysql之前,它是不存在的
默认自制mysql服务器配置
[我的qld]
只允许本地主机的连接
绑定地址=127.0.0.1
安全文件\u priv=''
然后我发现另一种可能的方法是将字符集更改为ansi或ascii,所以我检查了我的.cnf文件,但它是ascii编码。
~ enca -L none /usr/local/etc/my.cnf
7bit ASCII characters
我试图停止和重新启动,仍然得到相同的错误。顺便说一句,我使用了另一个命令,它显示了一个不同的错误:
~ service mysql restart
zsh: command not found: service
所以我改变了主意 $PATH
配置,还是没用。
最后我发现我可以在系统首选项中启动mysql,但是配置文件是空的,我把它改成了 /usr/local/etc/my.cnf
并运行了它,显示mysql服务器正在启动。我可以使用查询并连接到数据库。
但是,当我使用上面这样的命令时,仍然会遇到同样的错误,而且我不能在mysql工作台中使用数据导出。我跑了 /usr/local/mysql-8.0.12-macos10.13-x86_64/bin/mysqldump
,显示了相同的错误。
请帮忙。
2条答案
按热度按时间mhd8tkvw1#
请确保您的
my.cnf
文件使用#
签署意见行。您看到的错误看起来像是从某些行中去掉了散列符号。这是我自己的my.cnf
文件看起来像,请注意有些行以#
以便mysql不会将它们视为指令:628mspwn2#
我删除了mysql并手动删除了所有相关文件,然后重新启动并重新安装,它在终端工作。但是,在中找不到my.cnf文件
/usr/local/etc/
或者其他地方,在我的mac电脑里不存在。