Mysql
 sql >> база данни >  >> RDS >> Mysql

Не мога да вляза в mysql 5.7.9 след промяна на паролата

Две неща се промениха от по-ранните версии на mySQL (използвам 5.7.10):

  1. systemd сега се използва за грижа за mySQL вместо mysqld_safe (затова получавах командата -bash: mysqld_safe: command not found грешка - не е инсталиран)

  2. user структурата на таблицата е променена.

Така че, за да нулирате root паролата, все пак стартирате mySQL с --skip-grant-tables опции и актуализирайте user таблица, но как го правите се промени.

1. Stop mysql:
systemctl stop mysqld

2. Set the mySQL environment option 
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set
systemctl start mysqld

4. Login as root
mysql -u root

5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
    -> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

6. Stop mysql
systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time
systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:
systemctl start mysqld

Try to login using your new password:
7. mysql -u root -p

Справка

Както пише на http://dev.mysql.com /doc/refman/5.7/en/mysqld-safe.html ,

Което ви отвежда до http://dev .mysql.com/doc/refman/5.7/en/server-management-using-systemd.html където се споменава systemctl set-environment MYSQLD_OPTS= в долната част на страницата.

Командите за нулиране на паролата са в долната част на http:// dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Разширението mysqli липсва, phpmyadmin не работи

  2. Изберете всички месеци в рамките на даден период от време, включително тези със стойности 0

  3. Свързване чрез предходен еквивалент за MySQL

  4. JDBC връща изключение на MySQLSyntaxError с правилно изявление

  5. Показване на дата от база данни PHP