版本:
v4.0.2
远程连接报错:
ERROR 1045 (28000): Access denied for user 'prog_passport'@'localhost' (using password: NO)
host竟然是localhost
监听端口是:
tcp6 0 0 :::4000 :::* LISTEN 27092/bin/tidb-serv
版本:
v4.0.2
远程连接报错:
ERROR 1045 (28000): Access denied for user 'prog_passport'@'localhost' (using password: NO)
host竟然是localhost
监听端口是:
tcp6 0 0 :::4000 :::* LISTEN 27092/bin/tidb-serv
先本地登录,然后把localhost 修改为 %,在重新授权一下(参考Mysql 的步骤就好了)
基本就可以了
已经是%了
相同的用户名密码,如果开启socket,远程就不能连接,就只能在tidb本地才能连接
如果授权所有的即%,那么开启socket是可以远程连接;但是如果只授权某个网段如:10.1.%这样,开启socket就不能远程连接了
我还以为你发现了重大bug
结果自己一试,并没有复现你说的问题。
你甚至都没有贴出来证据,只是在描述说你无法远程连接
你是4.0.2版本?
你怎么测试的?
1、在tidb-server加入–socket=/tmp/mysql.socket
2、重启tidb-server
3、创建账号’prog_passport’@‘10.1.1.5’
4、登入10.1.1.5,用prog_passport连接tidb,报如下错误:
ERROR 1045 (28000): Access denied for user ‘prog_passport’@‘localhost’ (using password: YES)
版本:
v4.0.2
我错了,我用的不是这么老的版本,也许有bug
不过你描述清楚了也方便官方技术支持解答你的问题
好的,谢谢回复,我测试了下5.0版本是可以
我试了一下 v4.0.2 ,的确有问题。不过跟你说的也不完全一致。
tidb-server 开启 socket 连接之后,如果创建的账户是需要密码认证的,即使 host_name
为 %
, 也不能远程访问
CREATE USER [IF NOT EXISTS] 'user_name'@'host_name' [IDENTIFIED BY 'auth_string'];
有一条这样的日志
[conn.go:573] ["open new session failure"] [conn=16]
[error="[server:1045]Access denied for user 'xxx'@'localhost' (using password: NO)"]