Я пытался установить homebrew и очень-очень глупо сделал это:
sudo chown -R $USER /usr/local
Инструкции Homebrew говорят об этом, и я не очень большой системный администратор, поэтому я поверил им на слово. Извлеченный урок (хотя я действительно не знаю, как это проверить ... похоже, что сценарий отмены был бы здесь очень ценен)
В любом случае, что сделано, то сделано, но теперь я получаю такую ошибку:
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 548
Server version: 5.1.33 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> show databases;
ERROR 1018 (HY000): Can't read dir of '.' (errno: 13)
Я безрезультатно пытался вернуться к корневому каталогу. Кто-нибудь знает, как это исправить без переустановки mysql? При желании, если мне нужно переустановить mysql, как я могу выгрузить свои базы данных без доступа к командной строке, чтобы я не потерял все свои данные.
Спасибо!
Определите, от имени какого пользователя работает mysql (я бы использовал ps aux |grep mysql
, но ваши флаги для ps могут отличаться), найдите, где установлен mysql (мой показывает в результатах ps как --datadir=/usr/local/mysql/data
, но вам может потребоваться, чтобы ваш экран был достаточно широким, чтобы он не усекал команду), а затем снова смените владельца на правильного пользователя.
Найдите каталог данных mysql и покажите его пользователю MySQL (обычно mysql: mysql) ...
$ cd /usr/lcoal/mysql/
$ ls -l
$ sudo -R chown mysql:mysql data/
data/
это каталог в /usr/local/mysql/
который содержит всю базу данных.
Теперь сделай mysql -u user -p password
. Вы можете получить доступ к своей базе данных