我通常设置正确的MySQL来进行远程访问。
目前,我被MySQL 8卡住了。
第一件事是,在mysql.conf.d/mysqld.cnf上,我没有任何绑定地址行,所以我手动添加了它(bind-address 0.0.0.0),并授予'%‘上的用户访问权限。
当我连接时,我收到消息“身份验证失败”
但它在本地主机/命令行上工作得很好
发布于 2019-04-26 00:37:10
my.ini文件中删除或注释bind_address参数。(文件名因操作系统而异。在Linux上,my.ini实际上是位于目录/etc/mysql/中的my.cnf )
重新启动根用户service.
root @’,它只具有本地访问权限):CREATE USER 'root'@'%' IDENTIFIED BY '123';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
对于数据库管理员用户,请在末尾添加
。
例如CREATE USER 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
因为它不能使用GRANT__创建?
MySQL 8不再能够使用GRANT创建用户,因此如果您尝试将其与GRANT一起使用,则IDENTIFIED BY '123'中会出现错误,这是最常见的错误。
发布于 2021-01-09 04:53:07
MySQL 8中的远程访问:
1)允许从任何主机访问
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 0.0.0.02)允许用户从任何地方访问:
mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
UPDATE mysql.user SET host='%' WHERE user='root';3)将身份验证更改为密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'ThePassword';发布于 2020-08-27 15:54:44
有相同的问题,连接到MySQL工作台并更新了用户权限。
MySQL版本: 8.0.20社区。操作系统: Windows 10。
打开changes.
屏幕截图

https://stackoverflow.com/questions/50570592
复制相似问题