Установка пароля пользователя root root на OS X

Я только что установил MySQL в Mac OS X. Следующим шагом было установление пароля пользователя root, поэтому я сделал следующее:

  1. Запустите приложение терминала для доступа к командной строке Unix.
  2. В командной строке 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 без пароля!

Почему это?

Попробуйте FLUSH PRIVILEGES команду FLUSH PRIVILEGES при входе в терминал MySQL. Если это не сработает, попробуйте следующий набор команд, когда в терминале MySQL

 $ mysql -u root mysql> USE mysql; mysql> UPDATE user SET password=PASSWORD("NEWPASSWORD") WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> quit 

Измените NEWPASSWORD с помощью любого пароля. Должно быть все готово!

Обновление . Начиная с MySQL 5.7, поле password было переименовано в authentication_string . При изменении пароля используйте следующий запрос, чтобы изменить пароль. Все остальные команды остаются неизменными:

 mysql> UPDATE user SET authentication_string=PASSWORD("NEWPASSWORD") WHERE User='root'; 

Если вы не помните пароль, установленный для root, и его необходимо сбросить, выполните следующие действия:

  1. Остановите сервер mysqld, это зависит от установки
  2. Запустите сервер в безопасном режиме с помощью обхода привилегий

sudo mysqld_safe --skip-grant-tables;

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

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

  1. Остановите сервер безопасного режима и запустите свой обычный сервер. Новый пароль должен работать сейчас. Работала как прелесть для меня 🙂

После того, как вы установили MySQL, вам нужно будет установить «root» пароль. Если вы не устанавливаете пароль root, то, конечно, нет пароля root, и вам не нужен пароль для входа в систему.

Итак, при этом вам нужно установить пароль root.

С помощью терминала введите следующее:

Установка: установите пароль пользователя root:

 /usr/local/mysql/bin/mysqladmin -u root password NEW_PASSWORD_HERE 

Если вы допустили ошибку или вам необходимо изменить пароль root, используйте следующее:

Изменить пароль root:

 cd /usr/local/mysql/bin/ ./mysql -u root -p > Enter password: [type old password invisibly] use mysql; update user set password=PASSWORD("NEW_PASSWORD_HERE") where User='root'; flush privileges; quit 

Инструкции, представленные на веб-сайте mysql, настолько ясны, как указано выше

 1. sudo /usr/local/mysql/support-files/mysql.server stop 2) sudo /usr/local/mysql/support-files/mysql.server start --skip-grant-tables 3) /usr/local/mysql/support-files/mysql 4) mysql> FLUSH PRIVILEGES; 5) mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass'; 6) Ctrl + z 7) sudo /usr/local/mysql/support-files/mysql.server start 8) /usr/local/mysql/support-files/mysql -u root -p 9) enter the new password ie MyNewPass 

http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

  1. Остановите сервер mysqld.

    • Mac OSX: System Preferences > MySQL > Stop MySQL Server
    • Linux (из терминала): sudo systemctl stop mysqld.service
  2. Запуск сервера в безопасном режиме с помощью обхода привилегий

    • От терминала: sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
  3. В новом окне терминала:

    • sudo /usr/local/mysql/bin/mysql -u root
  4. Это откроет командную строку mysql. Отсюда введите:

    • UPDATE mysql.user SET authentication_string=PASSWORD('NewPassword') WHERE User='root';

    • FLUSH PRIVILEGES;

    • quit

  5. Остановите сервер mysqld и перезапустите его в обычном режиме.

    • Mac OSX (из терминала): sudo /usr/local/mysql/support-files/mysql.server restart
    • Linux Terminal: sudo systemctl restart mysqld

Для новой Mysql 5.7 почему-то команды bin Mysql не привязаны к оболочке:

  1. Перезагрузите Mac после установки.

  2. Начать Mysql:

    Системные настройки> Mysql> Кнопка запуска

  3. Перейдите в папку установки Mysql в терминале:

    $ cd /usr/local/mysql/bin/

  4. Доступ к Mysql:

    $ ./mysql -u root -p

и введите начальный пароль для установки.

  1. В терминале Mysql сменить пароль:

    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';

В терминале напишите mysql -u root -p и нажмите Return. Введите текущий пароль mysql, который вы должны были записать. И установите пароль SET PASSWORD = PASSWORD('new_password');

Более подробную информацию см. В этой документации.

Если вы забыли пароль администратора MySQL, не можете запомнить или хотите переломить … .. вы можете сбросить пароль базы данных mysql из командной строки в Linux или OS X, если знаете пароль пользователя root из windows Вы находитесь на:

(1) Остановить MySQL

 sudo /usr/local/mysql/support-files/mysql.server stop 

(2) Запустите его в безопасном режиме:

 sudo mysqld_safe --skip-grant-tables 

(3) Это будет текущая команда, пока процесс не завершится, поэтому откройте другое окно оболочки / терминала , войдите в систему без пароля:

 mysql -u root UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; 

В приведенной выше команде UPDATE просто замените пароль на свой новый пароль, не забудьте сохранить кавычки

(4) Сохранить и довольно

 FLUSH PRIVILEGES; \q 

(5) Запустить MySQL

 sudo /usr/local/mysql/support-files/mysql.server start 

Когда я установил OS X Yosemite, у меня возникла проблема с Mysql. Я пробовал много методов, но никто не работал. На самом деле я нашел довольно простой способ. Попробуйте это.

  1. Первый вход в терминал из привилегий su.

sudo su

  1. остановить mysql

sudo /usr/local/mysql/support-files/mysql.server stop

  1. начать в безопасном режиме:

sudo mysqld_safe --skip-grant-tables

  1. откройте другой терминал, войдите в систему как привилегии su, чем, войдите в mysql без пароля

mysql -u root

  1. изменить пароль

UPDATE mysql.user SET Password=PASSWORD('new_password') WHERE User='root';

  1. привилегии флеша

FLUSH PRIVILEGES;

  1. Теперь все готово

Если вы не можете вспомнить свой пароль, ответ @ radtek работал для меня, кроме как в моем случае я настроил MySQL с использованием варева, что означало, что шаги 1 и 2 его ответа должны были быть изменены на:

  1. /usr/local/bin/mysql.server stop

  2. /usr/local/bin/mysqld_safe --skip-grant-tables

Примечание: отсутствие sudo .

Остановка сервера 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

 use mysql; UPDATE user SET authentication_string=PASSWORD('NEW_PASSWORD') WHERE user='root'; FLUSH PRIVILEGES; exit 

тестирование

Запустить /usr/local/mysql/bin/mysql -u root

Теперь введите новый пароль, чтобы начать использовать MySQL.

Если вы забыли свой пароль или хотите изменить его на свой mysql:

  1. запустите свой терминал и введите:
 sudo su 
  1. Введите пароль для вашей системы
  2. Остановите свой mysql:
 sudo /usr/local/mysql/support-files/mysql.server stop 
  1. Оставьте это окно ОТКРЫТО, запустите второе окно терминала и введите здесь:
 mysql -u root 
  1. И измените свой пароль для mysql:
 UPDATE mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root'; 

где «new_password» – ваш новый пропуск. Вам не нужен старый проход для mysql.

  1. Сбросьте, выйдите и проверьте свой новый пропуск:
 FLUSH PRIVILEGES; 
  1. Закройте все windows и проверьте свой новый проход для mysql. Удачи.

Это то, что именно сработало для меня:

  1. Убедитесь, что другой MySQL-процесс не запущен. Чтобы проверить это, выполните следующие действия:

      a.From the terminal, run this command: lsof -i:3306 If any PID is returned, kill it using kill -9 PID b. Go To System Preferences > MySQL > check if any MySQL instances are running, stop them. 
  2. Запустите MySQL с помощью команды:

     sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables 
  3. Пароль для каждого пользователя хранится в таблице mysql.user под столбцами User и authentication_string соответственно. Мы можем обновить таблицу следующим образом:

     UPDATE mysql.user SET authentication_string='your_password' where User='root' 

Многое изменилось для MySQL 8. Я нашел следующее изменение MySQL 8.0 «Как восстановить пароль корневого пароля» работает с Mac OS X.

Создайте временный файл $HOME/mysql.root.txt с SQL для обновления пароля root:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';

Это использует 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

  • Проверка пароля с помощью PBKDF2 в Java
  • yii CPasswordHelper: hashPassword и verifyPassword
  • Безопасно ли хранить пароли в качестве переменных среды (а не как обычный текст) в файлах конфигурации?
  • Как заставить ssh получить пароль от stdin
  • Ссылка - проверка пароля
  • Почему плохие текстовые пароли плохо, и как я убеждаю своего босса, что его заветные веб-сайты находятся под угрозой?
  • Создание случайных паролей
  • Отключить функциональность браузера «Сохранить пароль»
  • Сброс пароля ROOT в MySQL 5.6
  • Java 256-битное шифрование на основе AES на основе паролей
  • Запуск приложения Shiny после ввода пароля
  • Interesting Posts
    Давайте будем гением компьютера.