更新时间:2024-03-06 GMT+08:00

GaussDB(DWS) gsql和PostgreSQL psql以及libpq对比

GaussDB(DWS) gsql和PostgreSQL psql

GaussDB(DWS) gsql相较于PostgreSQL psql做了如下安全加固变更:

  • 取消通过元命令\password设置用户密码。
  • 新增元命令\i+、 \ir+、\include_relative+和输入输出参数-k,以支持给导入导出的文件加密。
  • 取消打印命令行历史到文件的元命令\s。
  • 涉及敏感操作SQL历史不再记录,如含有密码操作。即用户通过翻页/上下键查阅SQL历史将不能查到对应的记录。
  • 支持连接后在屏幕上给出用户密码过期提示以及版本信息。

gsql在psql基础上还增加了如下功能:

  • 新增输出格式参数-r。支持用户输入命令时的tab补齐和方向键调整焦点。
  • 新增并行操作元命令\parallel,以提升执行性能。
  • 新增\set RETRY支持语句出错重试。
  • 新增PLSQL默认结束符功能,将“/”作为PLSQL语句(create or replace function/procedure)的默认结束符,增加便利性。

libpq

GaussDB(DWS)在开发某些功能,如客户端连接工具gsql时,对PostgreSQL libpq进行了较大修改,但并未对此接口在应用程序开发场景下的使用做验证。因此对使用此接口做应用程序开发存在的风险未知,故不推荐用户使用此套接口做应用程序开发。推荐用户使用ODBC或JDBC接口来替代。