【问题标题】:How to allow percona connection with root as non-sudo user on localhost?如何在 localhost 上允许 percona 以非 sudo 用户身份与 root 连接?
【发布时间】:2019-10-24 15:32:39
【问题描述】:

我的percona mysql8 安装中有默认的root 用户。

问题:当我先sudo -s然后mysql -u root -prootpw,然后我可以连接到mysql。但我也希望允许非root 用户(例如在非root 帐户下运行的java 应用程序)使用默认用户。

但我只是得到:

mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

那么如何强制 percona 在非 root 终端用户上下文中允许来自 localhost 的root 连接?

【问题讨论】:

  • mysql 将始终在您的用户为 root 时登录您,无论您是否通过 -p 参数提供值。我建议你通过grant 命令创建一个单独的用户
  • 什么版本的 MySQL? “默认用户”是什么意思?应用应该使用特定于应用的用户名连接,不是 root。
  • @RickJames 我知道每个应用程序都应该有自己的用户。但不管怎样,问题是:如何允许非 sudo 用户以 root/rootpw 身份连接。
  • sudo 永远不需要。 /.../mysql 拥有什么所有权和权限?

标签: mysql ubuntu percona


【解决方案1】:
mysql > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'rootpw';
mysql > FLUSH PRIVILEGES;
$ systemctl restart mysql

【讨论】:

  • “本机密码”仅适用于较新的版本。我认为不需要重启。
猜你喜欢
  • 1970-01-01
  • 2019-05-17
  • 2011-02-28
  • 2020-10-14
  • 1970-01-01
  • 2013-07-02
  • 2017-02-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多