Каква версия на mySQL използвате? Използвам 5.7.10 и имах същия проблем с влизането като root
Има 2 проблема - защо не мога да вляза като root, за да започна, и защо не мога да използвам 'mysqld_safe`, за да стартирам mySQL, за да нулирам root паролата.
Нямам отговор за настройката на root паролата по време на инсталацията, но ето какво правите, за да нулирате root паролата
Редактиране първоначалната root парола при инсталиране може да бъде намерена, като изпълните
grep 'temporary password' /var/log/mysqld.log
http://dev.mysql.com /doc/refman/5.7/en/linux-installation-yum-repo.html
-
systemd
сега се използва за грижа за mySQL вместоmysqld_safe
(поради което получавате командата-bash: mysqld_safe: command not found
грешка - не е инсталиран) -
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
*** Edit ***
As mentioned my shokulei in the comments, for 5.7.6 and later, you should use
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Or you'll get a warning
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