Я только что установил MySQL на Mac OS X. Следующим шагом была установка пароля пользователя root, поэтому я сделал это следующим образом:
- Запустите приложение терминала для доступа к командной строке Unix.
Под приглашением Unix я выполнил эти команды:
$ cd /usr/local/mysql/bin $ ./mysqladmin -u root password 'password'
Но когда я выполняю команду
$ ./mysql -u root
вот ответ:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 224
Server version: 5.5.13 MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Я могу попасть в mysql
командную строку без пароля!
Почему это?
UPDATE mysql.user SET authentication_string=PASSWORD('password') WHERE User='root';
вместо этого.'password'
правую часть равенстваERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Если вы не помните пароль, который вы установили для пользователя root, и вам необходимо его сбросить, выполните следующие действия:
sudo mysqld_safe --skip-grant-tables;
mysql -u root
Для MySQL старше MySQL 5.7 используйте:
UPDATE mysql.user SET Password=PASSWORD('your-password') WHERE User='root';
Для MySQL 5.7+ используйте:
USE mysql;
UPDATE mysql.user SET authentication_string=PASSWORD("your-password") WHERE User='root';
Обновить и выйти:
FLUSH PRIVILEGES;
\q
источник
password
нужно бытьauthentication_string
сейчас.UPDATE user SET authentication_string=PASSWORD("NEWPASSWORD") WHERE User='root';
, как сказал @Scott.sudo kill
Не работать как Mac OSx будет автоматически перезапускать новый msql мгновенно.После того как я остановил mysql с помощью панели настроек, я мог вручную запуститьmysqld_safe --skip-grant-tables
После того, как вы установили MySQL, вам нужно будет установить пароль root. Если вы не устанавливаете пароль root, тогда, ну, нет пароля root, и вам не нужен пароль для входа.
Итак, как говорится, вам нужно установить пароль root.
Используя терминал, введите следующее:
Установка: Установите пароль пользователя root:
Если вы ошиблись или хотите изменить пароль root, используйте следующее:
Изменить пароль пользователя root:
источник
update user set authentication_string=PASSWORD("NEW_PASSWORD_HERE") where User='root';
вместо использованияset password=...
Инструкции, представленные на сайте MySQL, настолько понятны, чем вышеупомянутые
$ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start --skip-grant-tables
/usr/local/mysql/bin/mysql
exit
или Ctrl + z$ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/support-files/mysql -u root -p
Ссылка: http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
источник
Остановите сервер mysqld.
System Preferences
>MySQL
>Stop MySQL Server
sudo systemctl stop mysqld.service
Запустите сервер в безопасном режиме с обходом привилегий
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
В новом окне терминала:
sudo /usr/local/mysql/bin/mysql -u root
Это откроет командную строку mysql. Отсюда введите:
UPDATE mysql.user SET authentication_string=PASSWORD('NewPassword') WHERE User='root';
FLUSH PRIVILEGES;
quit
Остановите сервер mysqld снова и перезапустите его в обычном режиме.
sudo /usr/local/mysql/support-files/mysql.server restart
sudo systemctl restart mysqld
источник
Для нового Mysql 5.7 почему-то команды bin Mysql не прикреплены к оболочке:
Перезагрузите Mac после установки.
Запустите Mysql:
Системные настройки> Mysql> кнопка «Пуск»
Перейдите в папку установки Mysql в терминале:
$ cd /usr/local/mysql/bin/
Доступ к Mysql:
$ ./mysql -u root -p
и введите исходный пароль, указанный при установке.
В терминале Mysql смените пароль:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';
источник
В терминале напишите
mysql -u root -p
и нажмите Return. Введите текущий пароль MySQL, который вы должны были записать вниз. И установить парольSET PASSWORD = PASSWORD('new_password');
Пожалуйста, обратитесь к этой документации здесь для более подробной информации.
источник
Если вы забыли пароль root для MySQL, не можете вспомнить или хотите взломать… .. вы можете сбросить пароль базы данных mysql из командной строки в Linux или OS X, если вы знаете пароль пользователя root для этой коробки Вы находитесь на:
(1) Остановите MySQL
(2) Запустите его в безопасном режиме:
(3) Это будет текущая команда до завершения процесса, поэтому откройте другое окно оболочки / терминала и войдите без пароля:
В приведенной выше команде UPDATE просто замените «пароль» своим новым паролем, обязательно оставьте кавычки
(4) Сохранить и довольно
(5) Запустите MySQL
источник
Когда я установил OS X Yosemite, у меня возникла проблема с Mysql. Я перепробовал много методов, но ни один из них не сработал. Я действительно нашел довольно простой способ. Попробуйте это.
sudo su
sudo /usr/local/mysql/support-files/mysql.server stop
sudo mysqld_safe --skip-grant-tables
mysql -u root
UPDATE mysql.user SET Password=PASSWORD('new_password') WHERE User='root';
FLUSH PRIVILEGES;
источник
Методы, упомянутые в существующих ответах, не работают для MySQL 5.7.6 или новее. Согласно документации MySQL это рекомендуемый способ.
B.5.3.2.3 Сброс пароля root: общие инструкции
MySQL 5.7.6 и позже:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Ссылка: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
источник
Если вы не можете вспомнить свой пароль, ответ @ radtek сработал для меня, за исключением того, что в моем случае я настроил MySQL, используя brew, что означало, что шаги 1 и 2 его ответа пришлось изменить на:
/usr/local/bin/mysql.server stop
/usr/local/bin/mysqld_safe --skip-grant-tables
Примечание: отсутствие
sudo
.источник
Я думаю, что это должно работать:
(Обратите внимание, что вы, вероятно, должны заменить root своим именем пользователя, если оно не root)
источник
Остановка сервера MySQL
sudo /usr/local/mysql/support-files/mysql.server stop
Запуск MySQL в безопасном режиме
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
Смена пароля root
/usr/local/mysql/bin/mysql -u root
тестирование
Бегать
/usr/local/mysql/bin/mysql -u root
Теперь введите новый пароль, чтобы начать использовать MySQL.
источник
Вот что именно сработало для меня:
Убедитесь, что другой процесс MySQL не запущен. Чтобы проверить это, сделайте следующее:
Запустите MySQL с помощью команды:
Пароль для каждого пользователя хранится в таблице mysql.user под столбцами User и authentication_string соответственно. Мы можем обновить таблицу как:
источник
macOS 10.14+ с 5.7.26, установленным из установщика Mac OSX DMG.
При попытке использовать команду UPDATE, опубликованную другими пользователями, возникает следующая ошибка:
ОШИБКА 1820 (HY000): перед выполнением этого оператора необходимо сбросить пароль с помощью инструкции ALTER USER.
Скопируйте пароль, предоставленный вам открытым терминалом установщика, и сделайте следующее:
источник
Попробуйте это в терминале:
/usr/local/bin/mysql_secure_installation
источник
Для ссылки на MySQL 8.0.15 + функция password () недоступна. Используйте команду ниже.
Пожалуйста, используйте
источник
Если вы забыли свой пароль или хотите изменить его на свой mysql:
где "новый_пароль" - ваш новый проход. Вам не нужен старый пропуск для MySQL.
источник
Многое изменилось для MySQL 8. Я нашел следующую модификацию документации MySQL 8.0 «Как сбросить пароль root» работает с Mac OS X.
Создайте временный файл
$HOME/mysql.root.txt
с SQL для обновления пароля root:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<new-password>';
Это использует,
mysql_native_password
чтобы избежать плагина аутентификации 'caching_sha2_password' не может быть загружена ошибка, которую я получаю, если я опускаю опцию.Остановите сервер, начните с
--init-file
опции установки пароля root, затем перезапустите сервер:mysql.server stop mysql.server start --init-file=$HOME/mysql.root.txt mysql.server stop mysql.server start
источник
Давайте добавим этот обходной путь, который работает на моем ноутбуке!
Mac с Osx Mojave 10.14.5
Mysql 8.0.17 был установлен вместе с homebrew
Я запускаю следующую команду, чтобы найти путь MySQL
brew info mysql
Как только путь известен, я запускаю это:
/usr/local/Cellar/mysql/8.0.17/bin/mysqld_safe --skip-grant-table
В другом терминале я запускаю:
mysql -u root
Внутри этого терминала я изменил пароль root с помощью:
update mysql.user set authentication_string='NewPassword' where user='root';
и чтобы закончить, я бегу:
FLUSH PRIVILEGES;
И вуаля пароль был сброшен.
Ссылки :
источник
Вы можете вручную отключить mysql на Mac, нажав меню Apple и откройте «Системные настройки». Выберите панель настроек «MySQL», затем нажмите кнопку «Остановить MySQL Server», чтобы остановить MySQL Server на Mac.
После того, как вы остановите MySQL, вам нужно будет выполнить следующие шаги.
Затем вы можете перейти в меню Apple и открыть «Системные настройки». Выберите панель настроек «MySQL», затем нажмите кнопку «Остановить MySQL Server», чтобы остановить MySQL Server на Mac.
Наконец, вы можете снова перейти в меню Apple и открыть «Системные настройки». Выберите панель настроек «MySQL», затем нажмите кнопку «Запустить MySQL Server», чтобы запустить MySQL Server на Mac.
надеюсь, это поможет
источник
Ни один из предыдущих комментариев не решил проблему на моем Mac. Я использовал команды ниже, и это сработало.
источник
Мне как-то нужно делать это каждый раз, когда мой Macbook перезагружается. Размещая это для личного ознакомления, надеюсь, это поможет кому-то еще.
источник