我试图遵循这里的所有建议,但没有一个对我有用。我已经在Fedora上安装了mysql社区服务器mysql-community-server-5.7.9-1.fc21.x86_64
我尝试使用 sudo grep 'temporary password' mysqld.log
但它不返回任何密码。
我不断收到错误 Access denied for user 'root'@'localhost' (using password: NO)
当我执行mysqld_safe --skip-grant-tables 时出现此错误
2016-06-14 10:46:00 3495 mysqld_safe: Logging to '/var/log/mysqld.log'.
chown: invalid user: ‘@MYSQLD_USER@’
2016-06-14 10:46:00 3495 mysqld_safe: The file @libexecdir@/mysqld
does not exist or is not executable. Please cd to the mysql installation
directory and restart this script from there as follows:
./bin/mysqld_safe&
See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information
我无法重置根用户密码。请帮忙。
对于 mysql 5.7 on centos
systemctl stop mysqld
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
systemctl start mysqld
mysql -u root
mysql> use mysql;
mysql> update user set authentication_string=password('you new pass') where
user='root';
mysql> flush privileges;
mysql> exit
systemctl restart mysqld
RESET MYSQL ROOT PASSWORD( 适用于 Linux 用户)
登录到根用户并运行
Step 1# /etc/init.d/mysql stop
Step 2# mysqld_safe --skip-grant-tables &
Output : Starting mysqld daemon with databases from /var/lib/mysql mysqld_safe[6025]: started
Step 3 Login to new terminal (with root user)
[#] mysql -u root
mysql> use mysql;
mysql> update user set password=PASSWORD('NEW-ROOT-PASSWORD') where User='root';
mysql> flush privileges;
mysql> quit
Step 4 # Stop MySQL Server:
/etc/init.d/mysql stop
Step 5 # /etc/init.d/mysql start
mysql -u root -pNEWPASSWORD
---------------------完成----------