概述

应用连接Windows平台的KingbaseES 数据库,报错“com.kingbase8.util.KSQLException: 致命错误: 用户"system" Password 认证失败(kbjdbc:autodetected server-encoding to be GB2312, if the message is not readable, please check database logs and/or host,port,dbname,user,password,pg_hba.conf)”

适用于:

在Windows系统部署的任意版本KingbaseES数据库。

问题现象:

Windows系统使用KingbaseES数据库Kstudio客户端工具、KingbaseES JDBC驱动、KingbaseES Ndp驱动连接KingbaseES Server提示异常,异常信息如下。

致命错误: 用户"system" Password 认证失败(kbjdbc:autodetected server-encoding to be GB2312, if the message is not readable, please check database logs and/or host,port,dbname,user,password,pg_hba.conf)

原因:

在Windows系统部署了KingbaseES数据库服务端,但是由于widnows系统不支持连接使用基于scram-sha-256/md5认证方法,导致连接出现异常。

注意:KingbaseES数据库默认连接使用认证方法是scram-sha-256。

解决方法:

  1. 检查KingbaseES数据库sys_hba.conf配置文件,如果认证方法(METHOD列的值)是md5/scram-sha-256,修改认证方法(METHOD列的值)为password/trust。
  2. 修改KingbaseES数据库sys_hba.conf配置文件连接认证方法后,重新加载下配置文件,然后再次尝试连接。
# 使修改后的sys_hba.conf配置文件生效方法
# 1 ksql登录数据库执行以下命令
select sys_reload_conf();
# 2 使用sys_ctl reload命令
sys_ctl -D data路径 reload
# 3 使用sys_ctl restart命令重启数据库
sys_ctl -D data路径 restart

关于认证方法:

  1. SCRAM-SHA-256口令认证:
方法"scram-sha-256"执行SCRAM-SHA-256认证。可防止密码在不可信的连接上被嗅探,并支持以密码散列的形式将密码存储在服务器上。属于安全的认证方法。低版本的jdbc驱动不支持此方法。
  1. MD5口令认证:
方法"md5"使用自定义安全性较低的质询-响应机制。可以防止密码被嗅探,并避免以纯文本形式将密码存储在服务器上,但如果攻击者设法从服务器窃取密码哈希,则不提供保护。
如果在sys_hba.conf中使用md5认证方法,但数据库服务器上用户的密码是SCRAM加密的,那么数据库会自动选择基于SCRAM的认证方法。
  1. Password口令认证:
方法"password"以明文形式发送密码,因此密码容易被嗅探获取。应尽量避免使用"password"认证方法。
如果必须使用"password"认证方法,应该结合SSL加密一起,这样"password"就可以安全的使用而不用担心密码被嗅探获取。
  1. trust信任认证:
当使用"trust"信任认证时,任意可以连接到数据库服务器的人都可以无限制的访问数据库。
在系统层对进入数据库服务器的连接有足够保护、安全限制时,才可以使用这种方法。

连接Windows 平台 KingbaseES异常的更多相关文章

  1. Windows平台开发Mapreduce程序远程调用运行在Hadoop集群—Yarn调度引擎异常

    共享原因:虽然用一篇博文写问题感觉有点奢侈,但是搜索百度,相关文章太少了,苦苦探寻日志才找到解决方案. 遇到问题:在windows平台上开发的mapreduce程序,运行迟迟没有结果. Mapredu ...

  2. 连接LilyPad之Windows平台的驱动

    连接LilyPad之Windows平台的驱动 LilyPad和其他的Arduino控制板的不同之处是它是为电子织物和可穿戴设计的.那么,它的大小就必须要紧凑.所以,它并没有板载其他大多数板子都具有的U ...

  3. windows平台使用MongoDB shell 来连接 MongoDB 服务器并创建数据库

    windows平台使用MongoDB shell 来连接 MongoDB 服务器并创建数据库 命令行进入MongoDB的bin目录运行mongod.exe mongod --dbpath c:\dat ...

  4. Windows平台分布式架构实践 - 负载均衡(下)

    概述 我们在上一篇Windows平台分布式架构实践 - 负载均衡中讨论了Windows平台下通过NLB(Network Load Balancer) 来实现网站的负载均衡,并且通过压力测试演示了它的效 ...

  5. Windows平台下利用APM来做负载均衡方案 - 负载均衡(下)

    概述 我们在上一篇Windows平台分布式架构实践 - 负载均衡中讨论了Windows平台下通过NLB(Network Load Balancer) 来实现网站的负载均衡,并且通过压力测试演示了它的效 ...

  6. 【MongoDB】windows平台搭建Mongo数据库复制集(类似集群)(转)

    原文链接:[MongoDB]windows平台搭建Mongo数据库复制集(类似集群)(一) Replica  Sets(复制集)是在mongodDB1.6版本开始新增的功能,它可以实现故障自动切换和自 ...

  7. Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决

    Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决 I. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity ...

  8. 详解 UWP (通用 Windows 平台) 中的两种 HttpClient API

    UWP (通用 Windows 平台) 应用开发者在构建通过 HTTP 与 Web 服务或服务器断点交互的应用时,有多种 API 可以选择.要在一个托管 UWP 应用中实现 HTTP 客户端角色,最常 ...

  9. windows平台是上的sublime编辑远程linux平台上的文件

    sublime是个跨平台的强大的代码编辑工具,不多说. 想使用sublime完毕linux平台下django网站的代码编辑工作以提高效率(原来使用linux下的vim效率较低,适合编辑一些小脚本). ...

  10. 【MongoDB】windows平台搭建Mongo数据库复制集(相似集群)(三)

    关于windows平台搭建Mongo数据库复制集这个话题,我已经在前面写了两篇博客 第一篇: 怎样在windows平台搭建Mongo数据库复制集 第二篇: 数据同步和故障自适应測试 在本篇里面,咱们重 ...

随机推荐

  1. win32 - GetMenuBarInfo的使用

    MSDN文档介绍GetMenuBarInfo是用来检索有关指定菜单栏的信息. 假如有个需求是要找到菜单下拉菜单的矩形大小,该怎么做呢? 最简单的方法就是获取菜单栏的句柄,然后将句柄作为参数传给GetM ...

  2. Direct2D 另一种与D3D创建类似的方法

    在进行D2D学习的时候,发现了这样一篇文档, Direct2D Quickstart for Windows 8 只有这么一小段介绍, Direct2D is a native-code, immed ...

  3. 以二进制文件安装K8S之部署Master高可用集群

    如下以二进制文件方式部署安全的Kubernetes Master高可用集群,具体步骤如下: 1.下载Kubernetes服务的二进制文件 2.部署kube-apiserver服务 3.创建客户端CA证 ...

  4. 发送HTML模板邮件

    概述 为了增强邮件内容展示的样式,可以将普通的文本邮件转换为HTML内容格式. 在Java中,可以通过页面模板技术来实现.具体来说,可以使用Thymeleaf模板. 具体实现 首先,在项目中引入Thy ...

  5. Docker实践之08-使用网络

    目录 一.外部访问容器 启动容器时指定参数-P(大写P) 启动容器时指定参数-p(小写p) 二.容器互联 使用--link参数使容器互联 将容器加入自定义网络实现互联 三.为容器配置DNS 一.外部访 ...

  6. vue实现导出word文档(含多张图片)

    vue实现导出word文档(含多张图片) 转自: https://www.pudn.com/news/62e1e14e55398e076bea2d2f.html

  7. queryset高级用法:prefetch_related

    这个方法和select_related方法类型,就是访问多个表中的数据的时候,减少查询的次数.这个方法是为了解决一对多和多对多的关系的查询问题.比如要获取标题中带有hello字符串的文章以及它的所有标 ...

  8. java基础之StringBuilder---03

    StringBuilder概述 StringBuilder是一个可变的字符串类,我们可以把它看成是一个容器,这里的可变指的是StringBuilder对象中的内容是可变的. 如果对字符串进行拼接操作, ...

  9. 安装SQL Server 具有不支持的属性(Compressed)集。

    安装sqlserver 2014报错信息 D:\Program Files\Microsoft SQL Server 具有不支持的属性(Compressed)集.请通过使用文件夹属性对话框从该文件夹中 ...

  10. ZYNQ 裸机模式下修改默认uart端口

    ## 背景 调试ZYNQ 裸机code, 调用 printf()后在UART端口无法看到打印信息输出,查看原理图后发现,板子用的UART 1作为默认串口调试接口,UART 0分配给了RS485使用,因 ...