如何重置或更改MySQL根密码?
如何在Ubuntu服务器中更改MySQL根密码和用户名? 在设置任何更改之前是否需要停止mysql服务?
我也有一个phpmyadmin设置,将phpmyadmin自动更新?
在Ubuntu Linux上设置/更改/重置MySQL根密码。 在terminal中input以下行。
- 
停止MySQL服务器。 sudo /etc/init.d/mysql stop
- 
启动mysqldconfiguration。 sudo mysqld --skip-grant-tables &
- 
以root身份login到MySQL。 mysql -u root mysql
- 
用您的新密码replaceYOURNEWPASSWORD! 
UPDATE mysql.user SET Password = PASSWORD('YOURNEWPASSWORD')WHERE User ='root'; FLUSH PRIVILEGES; 出口;
注意:此方法不被视为重置密码的最可靠的方法。 然而,它的工作。
参考文献:
- 在Ubuntu Linux上设置/更改/重置MySQL根密码
- 如何重置根密码
官方和简单的方法来重置Ubuntu的服务器上的根密码…
如果你在16.04:
 sudo dpkg-reconfigure mysql-server-5.5 
如果你在14.04:
 sudo dpkg-reconfigure mysql-server-5.5 
如果你在12.04:
 sudo dpkg-reconfigure mysql-server-5.5 
如果你在10.04:
 sudo dpkg-reconfigure mysql-server-5.1 
如果您不确定安装了哪个mysql服务器版本,您可以尝试:
 dpkg --get-selections | grep mysql-server 
更新了mysql-server-5.7的注释
请注意,如果您正在使用mysql-server-5.7,则无法使用上面显示的更简单的dpkg-reconfigure方法。
如果您知道密码,请login并运行以下命令:
 UPDATE mysql.user SET authentication_string=PASSWORD('my-new-password') WHERE USER='root'; FLUSH PRIVILEGES; 
或者,您可以使用以下内容:
 sudo mysql_secure_installation 
这将问你一系列有关保护你的安装的问题(强烈推荐),包括如果你想提供一个新的root密码。
如果您不知道root密码, 请参阅此过程中以Ubuntu为中心的写法 。
查看更多信息:
https://help.ubuntu.com/16.04/serverguide/mysql.html https://help.ubuntu.com/14.04/serverguide/mysql.html
我正在分享一步一步的最终解决scheme,在Linux Ubuntu中重置MySQL密码。
从博客引用(dbrnd.com)
第1步:停止MySQL服务。
 sudo stop mysql 
第2步:杀死所有正在运行的mysqld。
 sudo killall -9 mysqld 
第3步:在安全模式下启动mysqld。
 sudo mysqld_safe --skip-grant-tables --skip-networking & 
第4步:启动mysql客户端
 mysql -u root 
第五步:login成功后,执行该命令更改密码。
 FLUSH PRIVILEGES; 
第6步:您可以更新mysql root密码。
 UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root'; 
  注意 :在MySQL 5.7中,列Password称为authentication_string 。 
第七步:请执行这个命令。
 FLUSH PRIVILEGES; 
更改MySQL根密码。
这个方法将密码暴露给命令行历史logging,这些命令应该以root身份运行。
- 
通过mysql命令行工具login: mysql -uroot -poldpassword
- 
运行这个命令: SET PASSWORD FOR root@'localhost' = PASSWORD('newpassword');
要么
- 
运行这个命令,为当前用户设置一个密码(在这种情况下为“root”): SET PASSWORD = PASSWORD('newpassword'); 
唯一的方法是我这里描述的(我正在运行的Ubuntu 14.04)。 为了清楚起见,这些是我遵循的步骤:
-  sudo vim /etc/mysql/my.cnf
- 
最后join以下几行: 的[mysqld] 跳过赠款表 
- 
sudo service mysql restart
- 
mysql -u root
- 
UPDATE mysql.user set password = PASSWORD('your_new_password') where user = 'root' and host = 'localhost';
或者在某些系统中,例如:5.7.18你可能想要做的
 UPDATE mysql.user SET authentication_string = PASSWORD('password'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES; 
供参考: https : //dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
- 
exit
- 
如果要保持安全标准,请删除第2步中添加的行 。 
如果你想改变MySQL的root密码,在terminalinput:
 sudo dpkg-reconfigure mysql-server-5.5 
MySQL守护进程将被停止,并且会提示您input新的密码。
这就像我为Ubuntu 16.04做的那样。 充分的信贷下面的链接,因为我从那里。 [ https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-lts%5D%5B1%5D
停止MySQL
 sudo service mysql stop 
创buildMySQL服务目录。 sudo mkdir / var / run / mysqld
授予MySQL用户写入服务目录的权限。
 sudo chown mysql: /var/run/mysqld 
手动启动MySQL,没有权限检查或联网。
 sudo mysqld_safe --skip-grant-tables --skip-networking & 
无密码login。
 mysql -uroot mysql 
更新root用户的密码。 请确保atleast根帐户更新由下面的查询。 做一些select,并检查现有的价值,如果你喜欢
 UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='%'; EXIT; 
closuresMySQL。
 sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown 
正常启动MySQL服务。
 sudo service mysql start 
什么对我有用(Ubuntu 16.04,MySQL 5.7):
停止MySQL
 sudo service mysql stop 
创buildMySQL服务目录。
 sudo mkdir /var/run/mysqld 
授予MySQL用户写入服务目录的权限。
 sudo chown mysql: /var/run/mysqld 
手动启动MySQL,没有权限检查或联网。
 sudo mysqld_safe --skip-grant-tables --skip-networking & 
在另一个控制台上,不用密码login。
 mysql -uroot mysql 
然后:
 UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='%'; EXIT; 
closuresMySQL。
 sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown 
正常启动MySQL服务。
 sudo service mysql start 
 当您在要更改密码的系统上使用MySQL的PASSWORD()时,可能会导致密码在MySQL日志中以明文forms显示[ source ]。 保持他们,他们的备份等安全的密码听起来像噩梦对我来说,所以我宁愿这样做,如下所示: 
- 
在您的本地机器上,使用您的密码运行: mysql -u someuser -p < <(echo "SELECT PASSWORD('mypass');")请注意前面的空格,以防止它在bash历史logging中出现(对于Ubuntu以外的其他发行版,这可能以不同的方式工作 – 来源 )。 
- 
在您的服务器机器上,执行以下命令更改其MySQL根密码(将第一个命令打印的密码哈希replace为 myhash):mysql -u root -p < <(echo "SET PASSWORD FOR root@localhost = 'myhash';")
- 
可选地,让我们有点偏执:在你的本地机器上,清除你的terminal屏幕并清除虚拟terminal的回滚,以隐藏出现在上面的命令中的明文密码。 
如果你知道你当前的密码,你不必停止mysql服务器。 打开ubuntuterminal。 login到MySQL使用:
 mysql - username -p 
然后input你的密码。 这将带你到MySQL控制台。 在控制台内input:
 > ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; 
然后使用以下命令刷新权
 > flush privileges; 
那么你们都完成了。
 如果您已经设置了phpmyadmin来连接而不提供密码或用户名,那么在本地机器上就不用重新设置密码了。 通过启动mysql , apache等检查了这一点。我已经安装在本地机器xampp 。 因此,启动xampp将启动所有必要的服务。 现在去http://localhost/phpmyadmin显示我所有的数据库。 这证实你已经在phpmyadmin的configuration文件中保存了用户名和密码,可以在phpmyadmin安装位置find。 如果安装了xampp ,则可以在xampp安装的根文件夹中findphpmyadmin文件夹。 在config.inc.php文件中searchpassword 。 在那里你会findpassword和username 。 
如果通过提供的phpadmin gui部署在xampp上,您可以轻松更改mysql密码。
 phpMyAdmin -> User Accounts -> Edit Privileges (Select the intended user) -> Change Password (Tab) 
你可以使用这个命令:
UPDATE mysql.user SET Password = PASSWORD('newpwd')WHERE User ='root';
之后,请求使用冲洗FLUSH特权;
对于MySQL 5.6这个命令的工作,你可以通过向导设置密码:
 sudo dpkg-reconfigure mysql-server-5.6 
当更改/重置MySQL密码时,上面列出的以下命令不起作用。 我发现进入terminal并使用这些命令是毫无意义的。 而是使用命令sudo stop everything。 删除系统32的窗户,如果有帮助。