mysql 拒绝新用户访问数据库

mysql new user access denied to database

创建了一个新用户。无法访问数据库。
我已经尝试了所有我能找到或想到的方法。
来自 Workbench 本地主机

SELECT user, host, plugin FROM mysql.user;

显示

# user  host    plugin
root    localhost   mysql_native_password
root    127.0.0.1   mysql_native_password
root    ::1 mysql_native_password
newuser localhost   mysql_native_password

我将所有表的所有权限授予新用户:

GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';
FLUSH PRIVILEGES;
SHOW GRANTS FOR 'newuser'@'localhost';

显示

GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost' IDENTIFIED BY PASSWORD '*...'

作为 root,我可以

use db;

但是作为新用户失败了
错误代码:1044。拒绝用户 'newuser'@'localhost' 访问数据库 'db'

我将密码简化为字母和数字。那确实有帮助。现在我可以登录 workbench。仍然无法访问数据库。

mysql_upgrade 是主要答案。
另外,我有一个连接使用 127.0.0.1 而不是本地主机。