Homebrew-> MariaDB (10.4.11) Проблемы с разрешением для OSX Catalina (10.15.3) - PullRequest
0 голосов
/ 12 марта 2020

Я настраиваю новую машину для разработки с OS X Catalina (10.15.3) и имею проблемы с разрешениями MariaDB / MySQL. Я установил Homebrew, а затем установил пакет MariaDB. После входа в систему с помощью mysql -uroot я получаю следующую ошибку при попытке создать базу данных:

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'my_db'

При чтении ошибки похоже, что моя команда интерпретируется как не из root, но вместо этого анонимный пользователь. Тем не менее, когда я запускаю status в командной строке MySQL, он выводит следующее:

MariaDB [(none)]> status;
--------------
mysql  Ver 15.1 Distrib 10.4.11-MariaDB, for osx10.15 (x86_64) using readline 5.1

Connection id:      9
Current database:
Current user:       root@localhost
SSL:            Not in use
Current pager:      less
Using outfile:      ''
Using delimiter:    ;
Server:         MariaDB
Server version:     10.4.11-MariaDB Homebrew
Protocol version:   10
Connection:     Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:        /tmp/mysql.sock
Uptime:         18 min 10 sec

Threads: 7  Questions: 11  Slow queries: 0  Opens: 16  Flush tables: 1  Open tables: 10  Queries per second avg: 0.010
--------------

Похоже, это означает, что он регистрирует меня вошедшим в систему как root@localhost, но это не то, что ранее перечисленная ошибка предполагает.

Это ошибка, связанная с разрешениями? Я не думаю, что пропустил какие-либо префиксы sudo во время установки, но кажется, что это может быть связано.

Это всегда "просто работало" для меня при настройке / переформатировании моего Разработчики машин, так что это мой первый раз, когда нужно копаться. Любая помощь очень важна, и дайте мне знать, будет ли полезна дополнительная информация. Заранее благодарен за любой совет!

Обновление № 1 (13.03.2020)

После попытки нескольких разных вещей и переустановки Homebrew, а также MariaDB, я сейчас, в месте, где я получаю ошибку отказа в доступе (см. ниже), когда я пытаюсь войти в систему через iTerm / Terminal с помощью mysql -uroot, однако, используя sudo mysql -uroot, я могу войти. Я могу запустить команды для создания базы данных после того, как войду с помощью Префикс sudo, однако эти БД недоступны ни через один из моих проектов через проверку usr / pwd через файл .env для Laravel и wp-config. php для Wordpress.

Это заставляет меня поверить, что это ошибка прав доступа, и мне нужно как-то настроить пакет MariaDB / MySQL, чтобы у моего пользователя OS X было разрешение на чтение / запись / выполнение, а не root.

Просто хотел опубликовать обновление, мы надеемся, что появится разрешение ...

➜  ~ mysql -uroot
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Обновление № 2 (13.03.2020)

Когда я вхожу в префикс sudo, я могу напечатать таблицу пользователей со значениями плагинов для каждого пользователя, чтобы показать, как они проходят аутентификацию, если это полезно

MariaDB [(none)]> select User, Host, Plugin from mysql.user;
+---------+---------------------+-----------------------+
| User    | Host                | plugin                |
+---------+---------------------+-----------------------+
| root    | localhost           | unix_socket           |
| os_user | localhost           | mysql_native_password |
|         | localhost           |                       |
|         | usrnames-imac.local |                       |
+---------+---------------------+-----------------------+
...