如何在MySQL中更改/加密根密码?

如何在MySQL中更改/加密根密码?,mysql,Mysql,我在MySQL中有三个用户,即root、testuser1、testuser2。我想通过在终端中键入以下命令来加密连接MySQL数据库时所有三个用户的密码 mysql-u根-p mysql-u testuser1-p mysql-u testuser2-p 它要求输入密码。在这一点上,我如何提供加密密码或使其从任何可能包含它的文件中读取 在我的项目中,需要加密MySQL用户的所有密码。(我也问了这个问题)。您不能在mysql客户端命令行上传递加密密码,而期望mysql“理解”它。充其量,您可以使

我在MySQL中有三个用户,即root、testuser1、testuser2。我想通过在终端中键入以下命令来加密连接MySQL数据库时所有三个用户的密码

  • mysql-u根-p
  • mysql-u testuser1-p
  • mysql-u testuser2-p
  • 它要求输入密码。在这一点上,我如何提供加密密码或使其从任何可能包含它的文件中读取


    在我的项目中,需要加密MySQL用户的所有密码。(我也问了这个问题)。

    您不能在mysql客户端命令行上传递加密密码,而期望mysql“理解”它。充其量,您可以使用加密的SSH会话来为您的mysql命令行会话进行加密

    您当然可以将加密的密码存储在文件或数据库中,然后解密以连接

    但在某个时刻,密码必须以明文形式传递给mySql。您需要准确地决定:

    1) 如何登录(从命令提示符?使用程序或web服务器)

    2) 如何在登录之前和登录期间保护存储的密码(包括但不限于加密)

    一些备选方案:

    MySql还支持“企业登录”场景。也许其中一个可以为您的问题提供解决方案:


    最后,如果您从应用程序服务器(例如WebSphere)使用MySQL,那么您不必手动使用“MySQL”命令行客户端登录,只需创建一个数据源,让应用程序服务器为您保护DB用户名和密码。

    除了答案,当您远程连接到mysql服务器时,通常通过安全网络和通道(如SSH、VPN连接等)进行连接。因此,客户端和服务器之间的数据传输将被加密,其中包括用户和密码信息。我永远不会因为不确定的联系或渠道而这样做。@maytham-这正是我在第一段中试图说的。谢谢你澄清。。。我们完全同意:)