Я пытаюсь настроить MySQL на Mac OS 10.6, используя Homebrew brew install mysql 5.1.52
.
Все идет хорошо, и я также успешно с mysql_install_db
.
Однако, когда я пытаюсь подключиться к серверу, используя:
/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin -u root password 'mypass'
Я получил:
/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin: подключиться к серверу на локальном хосте ошибка: «Доступ запрещен для пользователя« root »@« localhost »(с использованием пароля: НЕТ)»
Я пытался получить доступ mysqladmin or mysql using -u root -proot
,
но он не работает с паролем или без него.
Это совершенно новая установка на совершенно новом компьютере, и, насколько я знаю, новая установка должна быть доступна без пароля root. Я также попробовал:
/usr/local/Cellar/mysql/5.1.52/bin/mysql_secure_installation
но я тоже получаю
ОШИБКА 1045 (28000): доступ запрещен для пользователя 'root' @ 'localhost' (используется пароль: НЕТ)
mysql
macos
homebrew
mysql-error-1045
Nikola
источник
источник
mysql -u root
и это сработало здесь: |Ответы:
Я думаю, что можно оказаться в этом положении с уже установленными более старыми версиями mysql. У меня была та же самая проблема, и ни одно из вышеупомянутых решений не работало для меня. Я исправил это так:
Использовал команды brew
remove
&cleanup
, выгрузилlaunchctl
скрипт, затем удалил каталог mysql/usr/local/var
, удалил мой существующий/etc/my.cnf
(оставлю это на ваше усмотрение, если он применим) и launchctl plistОбновлена строка для plist. Также обратите внимание, что каталог альтернативных скриптов безопасности будет зависеть от того, какую версию MySQL вы устанавливаете.
Шаг за шагом:
Я тогда начал с нуля:
brew install mysql
выполнил команды, предложенные Brew: (см. примечание: ниже)
Запустите mysql с
mysql.server start
командой, чтобы иметь возможность войти в нееИспользовал альтернативный скрипт безопасности:
Далее следует
launchctl
раздел из выходных данных скрипта пакета brew, например:Примечание:
--force
немного поbrew cleanup
желанию также очистки устаревших бочонки, думает , что это новый иш особенности доморощенной.Обратите внимание на второе: комментатор говорит, что шаг 2 не требуется. Я не хочу проверять это, так что YMMV!
источник
launchctl: Couldn't stat("com.mysql.mysqld.plist"): No such file or directory
Вот подробные инструкции, объединяющие избавление от всего MySQL с вашего Mac и установку его The Brew Way, как писал Седорнер выше:
Удалите MySQL полностью за Техническую Лабораторию
ps -ax | grep mysql
kill
любые процессы MySQLsudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
/etc/hostconfig
и удалите строкуMYSQLCOM=-YES-
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*
sudo rm -rf /tmp/mysql*
mysql
, это не должно работатьBrew установить MySQL для каждого пользователя Sedorner из этого ответа StackOverflow
brew doctor
и исправить любые ошибкиbrew remove mysql
brew cleanup
brew update
brew install mysql
unset TMPDIR
mysql.server start
запустите команды, которые предлагает Brew, добавьте MySQL,
launchctl
чтобы он автоматически запускался при запускеmysql
теперь должен работать и работать все время, как ожидалосьGodspeed.
источник
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
, затем через несколько шагов вы пытаетесь найтиlaunchctl unload
этот файл ... но его там не будет, потому что вы удалили его. Кроме того,brew install mysql
побежалmysql_install_db
за мной шаг, нет необходимости делать это дважды.root
вwhoami
части ваших команд?root
). Это сработало отлично./etc/hostconfig
не существует в Йосемити и за ее пределами ( superuser.com/questions/850974/… )Была такая же проблема. Похоже, что-то не так с инструкциями по настройке или начальными таблицами, которые создаются. Вот так я запустил mysqld на своей машине.
Если сервер mysqld уже запущен на вашем Mac, остановите его сначала с помощью:
launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist
Запустите сервер mysqld с помощью следующей команды, которая позволяет любому войти в систему с полными разрешениями.
mysqld_safe --skip-grant-tables
Затем запустите программу,
mysql -u root
которая должна позволить вам успешно войти в систему без пароля. Следующая команда должна сбросить все корневые пароли.UPDATE mysql.user SET Password=PASSWORD('NewPassword') WHERE User='root'; FLUSH PRIVILEGES;
Теперь, если вы убьете работающую копию mysqld_safe и запустите ее снова без опции skip-grant-tables, вы сможете войти в систему с
mysql -u root -p
новым паролем, который вы только что установили.источник
Если brew установил MySQL 5.7, процесс немного отличается от предыдущих версий. Для сброса пароля root выполните следующие действия:
Временный пароль будет напечатан на консоли и может использоваться только для обновления пароля root:
источник
ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXXXX.local.pid).
и когда я выполняю mysql -u root, пароль не принимается.mysql
работает правильно. Жаль, что мне пришлось потратить огромное количество времени, чтобы заставить его работать над новым Macbook. : |mysql -u root -p <temp-password>
2.ALTER USER 'root'@'localhost' IDENTIFIED BY 'New-Password';
Хорошо, у меня была та же проблема, и я решил ее. По какой-то причине скрипт mysql_secure_installation не работает сразу после установки Homebrew для установки mysql, поэтому я сделал это вручную. В CLI введите :
Это должно привести вас в MySQL. Теперь сделайте следующее (взято из mysql_secure_installation):
Теперь выйдите и вернитесь в mysql с помощью:
mysql -u root -p
источник
У меня была такая же проблема только сейчас. Если вы
brew info mysql
и выполните шаги, похоже, пароль root должен быть,new-password
если я правильно помню. Я видел то же, что вы видите. Эта статья помогла мне больше всего.Оказалось, что я не создал никаких учетных записей для меня. Когда я вошел в систему после запуска
mysqld_safe
и неselect * from user;
вернул ни одной строки. Я открыл MySQLWorkbench сmysqld_safe
запущенным и добавилroot
учетную запись со всеми привилегиями, которые я ожидал. Это работает хорошо для меня сейчас.источник
Если MySQL уже установлен
Остановите MySQL полностью.
mysql.server stop
<- может потребоваться редактирование в зависимости от вашей версииps -ef | grep mysql
<- перечисляет процессы с mysql в названииkill [PID]
<- убить процессы с помощью PIDУдалить файлы. Инструкции выше хороши. Я добавлю:
sudo find /. -name "*mysql*"
rm -rf
эти файлы. Обратите внимание, что многие программы имеют драйверы для mysql, которые вы не хотите удалять. Например, не удаляйте вещи в каталоге установки PHP. Удалять вещи в своем собственном каталоге MySQL.устанавливать
Надеюсь, у вас есть доморощенный. Если нет, загрузите его.
Мне нравится запускать brew от имени пользователя root, но я не думаю, что вы должны это делать. Изменить 2018: вы больше не можете запускать Brew от имени root
sudo brew update
sudo brew install cmake
<- зависимость для MySQL, полезноsudo brew install openssl
<- зависимость для MySQL, полезноsudo brew info mysql
<- просмотрите это ... это дает вам некоторое представление о том, что будет дальшеsudo brew install mysql --with-embedded; say done
<- устанавливает mysql со встроенным сервером. Сообщает, когда он закончится (моя установка заняла 10 минут)потом
sudo chown -R mysql /usr/local/var/mysql/
<- MySQL не будет работать для меня, пока я не запустил эту командуsudo mysql.server start
<- еще раз, точный синтаксис может отличатьсяисточник
варево информация mysql
mysql.service start
или mysql -u root
Я какое-то время ищу решение, но не могу решить свою проблему. Я попробовал несколько решений в stackoverflow.com, но это не помогло мне.
источник
sudo chown -R mysql /usr/local/var/mysql/
перед запуском,mysql.server start
если вы работаетеmysql.server
с правами суперпользователя (когда вы начинаете использовать пользователя root, сервер MySQL понижается до уровня_mysql
пользователя).brew install redis
tbhTL; DR
Сервер MySQL может не работать после установки с Brew. Попробуйте
brew services start mysql
или просто,mysql.server start
если вы не хотите, чтобы MySQL работал в качестве фоновой службы.Полная история:
Я только что установил MySQL (стабильный) 5.7.17 на новый MacBook Pro с Sierra, а также получил ошибку при запуске
mysql_secure_installation
:Чего-чего?
В соответствии с информацией об установке от Brew,
mysql_secure_installation
должен предложить мне ... обеспечить установку. Я подумал, что сервер MySQL может не работать, и это правильно. Бегалbrew services start mysql
а потомmysql_secure_installation
работал как шарм.источник
Попробуйте, предоставив разрешение Грант Command of mysql
источник
Ни один из приведенных выше ответов (или любой из десятков ответов, которые я видел в другом месте) не работал для меня при использовании brew с самой последней версией mysql и yosemite. В итоге я установил другую версию MySQL через Brew.
Указание более старой версии с помощью (например)
Работал на меня. Надеюсь, это кому-нибудь поможет. Это была неприятная проблема, и я чувствовал, что застрял навсегда.
источник
brew install mysql
), вы можете следовать указаниям в моем ответе stackoverflow.com/a/33924648/133106Вот обновление для MySQL 5.7
источник
Просто чтобы добавить что-то к предыдущим ответам - при обновлении с MySql 5.6 до MySql 8.0 я следовал инструкциям, приведенным здесь, чтобы выполнить чистое удаление, но у меня появились следующие ошибки
Мне понадобилось время, чтобы понять это. Нашел подсказку здесь: https://discourse.brew.sh/t/clean-removal-of-mysql/2251
Итак, ключом к моей проблеме было удаление файла /usr/local/etc/my.cnf после удаления. После этого последнего шага MySql наконец начал работать.
источник
У меня была та же проблема после того, как я попытался перезапустить MySQL.
Я использую следующие два псевдонима в моем .profile для удобства
После остановки mysql и повторной попытки перезагрузки у меня возникла проблема, с которой вы столкнулись. Я посмотрел на загрузку launchctl, и она сообщала об ошибке «ничего не найдено для загрузки».
После быстрого поиска я нашел это ..
http://www.daveoncode.com/2013/02/01/solve-mac-osx-launchctl-nothing-found-to-load-error/
Поэтому я обновил
mysql-start
псевдоним следующим образомЭто решило мою проблему, которая может быть полезна для вас.
источник
services
команды, поэтому их можно заменить наbrew services stop mysql
иbrew services start mysql
соответственно.«Базовый путь» для Mysql хранится в том,
/etc/my.cnf
что не обновляется, когда вы делаете обновление brew. Просто откройте его и измените значение basedirНапример, измените это:
указать на новую версию:
Перезапустите mysql с помощью:
источник