MySQL не работает в терминале, но может подключиться к базе данных и использовать запрос - PullRequest
0 голосов
/ 29 октября 2018

Я пытался использовать командную строку для запуска MySQL в MacOS, но всегда показывал ошибку:

~ 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!

Я искал ошибку, и большинство ответов добавляет [mysqld] в my.cnf, я проверил файл my.cnf, в нем уже был тег [mysqld]. Это my.cnf, его не было до переустановки MySQL с помощью Переустановка Mysql на Mac через Homebrew · GitHub

Конфигурация сервера MySQL Homebrew по умолчанию

[туздЫ]

Разрешить соединения только с локального хоста

bind-address = 127.0.0.1

secure_file_priv = ''

Затем я нашел другой возможный способ - изменить набор символов на ANSI или ASCII, поэтому я проверил файл my.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 Workbench. Я запустил /usr/local/mysql-8.0.12-macos10.13-x86_64/bin/mysqldump, он показал ту же ошибку.

Пожалуйста, помогите.

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

Я удалил mysql и вручную удалил все связанные файлы, затем перезапустил и установил снова, он работает в терминале. Однако файл my.cnf не найден ни в /usr/local/etc/, ни в других местах и ​​не существует на моем Mac.

0 голосов
/ 29 октября 2018

Убедитесь, что в вашем файле my.cnf используется знак # для строк комментариев. Ошибка, которую вы видите, выглядит так, как будто вы удалили хеш-знаки из некоторых строк. Вот как выглядит мой собственный файл my.cnf, обратите внимание, что некоторые строки начинаются с #, поэтому MySQL не считает их инструкциями:

# Default Homebrew MySQL server config
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...