金仓数据库KingbaseES使用ksql连接时,密码含有特殊字符时报错认证失败

关键字:

KingbaseES、KES、ksql、Password 认证失败

问题现象:

使用KingbaseES数据库自带的客户端工具ksql连接数据库时,因为使用了包含特殊字符的密码,连接时出现如下所示报错:

致命错误用户 "usra" Password 认证失败

问题原因:

当密码中包含有特殊字符“$”的时候,需要使用反斜杠转移符对特殊字符转义(即表示为“\$”),如果未转义,则会认证失败。

解决步骤:

使用KingbaseES新建用户“usra”,并授权密码为“pwd$#123”,ksql工具使用新建用户“usra”连接数据库“test”。问题重现及解决的操作步骤如下:

  1. 在Linux终端下使用ksql进行连接数据库,报错“认证失败”,如下所示:

$ ./ksql –h 127.0.0.1 -p 54323 -U "usra" –W "pwd$#123"

ksql: 致命错误:  用户 "usra" Password 认证失败

    2. 对特殊字符“$”转义后,再次使用ksql进行连接数据库,连接成功,如下所示:

$ ./ksql –h 127.0.0.1 -p 54323 -U "usra" –W "pwd\$#123"

ksql (V009R006C002B0001)

输入 "help" 来获取帮助信息.

kingbase=#

注意:在使用ksql时,用户名与密码最好使用英文的双引号引用起来,否则一些特殊的符号,如分号(;)、管道(|)、重定向(>)等特殊字符将会引发一些错误。

至此,出现的问题得以解决。

相关内容可参考官方产品用户文档中的路径:

https://help.kingbase.com.cn

你可能感兴趣的:(数据库,数据库,linux,database)