- 博客(1369)
- 收藏
- 关注

原创 【只为求才,Want AD】
【求才】有数据库DBA经验,或开发经验均可谈。中国大陆地区。感谢关注和推荐。company: www.highgo.comSend Resumes To Mail: [email protected]
2021-12-10 16:13:50
1986
2

原创 基于PostgreSQL进行Java应用开发
该手册由PG实验室的成员结合多年对postgresql数据库的使用及Java应用开发经验,总结了一套实战入门手册。帮助PostgreSQL软件爱好者及初学者快速学习postgresql数据库的相关知识。针对应用如何适配postgresql数据库,提供了丰富的技巧案例。开发人员在不了解postgresql的情况下,通过该手册的学习,能够自主的实现基于postgresql的应用开发工作。以上是适配手册涵盖的章节内容。本手册一共6个章节:第1章PostgreSQL介绍 1.1.PostgreSQL起源
2021-11-04 15:27:45
4200
1
原创 CentOS 8 安装HGDB V4.5 psql命令执行报错
root用户执行 :sudo ln -s /usr/lib64/libtinfo.so.6.1 /usr/lib64/libtinfo.so.5。psql执行时,会使用操作系统lib 库中的libtinfo.so.5依赖,但是未找到该文件。
2025-07-25 16:08:00
276
原创 如何查看SQL的执行计划
Hash Join:使用两个表中较小的表,并利用连接键在内存中建立散列表,然后扫描较大的表并探测散列表,找出与散列表匹配的行。Nestloop Join:嵌套循环连接,是在两个表做连接时,内表被外表驱动,外表返回的每一行都要在内表中检索找到与它匹配的行,因此整个查询返回的结果集不能太大,要把返回子集较小的表作为外表,而且在内表的连接字段上要有索引,否则会很慢。timing:在输出中包含实际启动时间和每个节点花费的时间,重复读系统块在某些系统上会显著的减缓查询的速度,只在ANALYZE也启用的时候使用;
2025-07-25 09:53:45
703
原创 将瀚高数据库表内数据导出Excel格式
copy命令同\copy命令语法上相同,区别在于copy必须使用能够超级用户使用,copy …to file 中的文件都是数据库服务器所在的服务器上的文件,而\copy 一般用户即可执行且\copy 保存或者读取的文件是在客户端所在的服务器,本文主要以copy命令作为介绍重点,使用copy命令将表内数据倒为csv格式文件即为excel格式。本文主要用于介绍如何使用copy或者\copy命令将瀚高数据库内表的数据导出为excel格式,方便用户查看。②带列名导出,默认情况下使用,作为分隔符。
2025-07-24 15:36:54
300
原创 瀚高数据库自定义操作符‘!~~‘
系统平台:Microsoft Windows (64-bit) 10。解决应用程序中SQL语句使用!三,解决方案:自定义操作符。
2025-07-24 09:44:40
170
原创 HGDBV5.6.5数据库Docker镜像安装启动管理
h rep-0 -e REP_MASTER_HOSTNAME=rep:这个使用在集群上的,识别集群做的操作;–volume , -v: 绑定一个卷,主机的目录/opt/test 映射到容器的/opt/HighGoDB-5.6.5/data;Loaded image: centos-x86-highgo-565:v1.0 --这个镜像名称:版本,在创建容器时需要。再执行:docker exec -ti hgdb /bin/bash --切进容器。-i: 以交互模式运行容器,通常与 -t 同时使用;
2025-07-23 13:40:47
743
原创 如何查看数据库当前连接数和最大连接数
当数据库的连接数达到(max_connections - superuser_reserved_connections)时,只有超级用户才能建立新的数据库连接,普通用户连接时将会返回错误信息“FATAL: sorry, too many clients already.”或者“FATAL: remaining connection slots are reserved for non-replication superuser connections”,登录数据库查询。1、查看数据库当前连接数。
2025-07-22 15:15:57
805
原创 MySQL的substring_index函数到HGDB的迁移
在HGDB中暂时不兼容该函数,为了不修改应用程序的代码,需要通过自定义substring_index函数实现。系统平台:Linux x86-64 Red Hat Enterprise Linux 7。如果count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容。相反,如果是负数,那么就是从右边开始数,第N个分隔符右边的所有内容。str是要处理的字符串,delim是分隔符,count是计数。HGDB中的解决方案:自定义substring_index函数。修改后的执行结果:与MySQL的结果一致。
2025-07-22 10:33:27
159
原创 excel 导入highgo数据库
copy 表名(id,forname,entryid,dburl) from ‘F:\support.csv’ with csv HEADER。系统平台:Microsoft Windows (64-bit) 10。用于Excel导入highgo数据库企业版5.6.5。1、Excel修改格式为CSV。2、将格式修改为UTF-8。
2025-07-21 14:51:32
275
原创 查询字段类型为numeric时,where条件与‘ ’对比报错
瀚高数据库中numeric不能与’ '进行对比,在查询时where条件不能写为 where numeric = ‘’;在查询中字段类型为numeric时加where条件不等于空时报错,无效的类型numeric 输入语法:’’系统平台:Linux x86-64 Red Hat Enterprise Linux 7。
2025-07-21 10:40:31
282
原创 瀚高数据库开启Oracle兼容模块
系统平台:Linux x86-64 Red Hat Enterprise Linux 7。在瀚高数据库V45中oracle兼容模块需要单独开启默认是关闭状态。不能使用Oracle兼容;
2025-07-18 14:05:14
214
原创 瀚高数据库JDBC查询返回全大写字段设置
在java框架中如果客户获取数据时使用的全是大写字段,使用jdbc默认查询会取不到值(默认返回全是小写字段名);在jdbc连接串中添加参数“upperColumnName=true”即可返回大写字段列名。系统平台:Linux x86-64 Red Hat Enterprise Linux 7。版本:6.0,4.5。
2025-07-18 13:54:13
266
原创 瀚高数据库V45及V6解锁用户
系统平台:Linux x86-64 Red Hat Enterprise Linux 7。瀚高数据库用户输入密码超过自大次数限制会锁定用户(默认5次输错密码锁定);使用syssso解锁用户,将USERNAME替换为锁定用户;版本:4.5,6.0。
2025-07-17 15:00:50
650
原创 This connection has been closed,应用连接数据库后1-3小时,即自动断开连接
ISV部署的环境(多应用+java+MyBatis+DBCP连接池+hgdbV4347)下,发现应用在1-3小时运行后会断开连接,需要重启数据库或者应用才能连接,但是数据库管理工具不会断开。启动测试,当再次出现无法连接时,检查监控日志./nohup.out,是否正常。如果未出现异常可排除网络原因,进行下一步修改连接池参数。2.应用使用的连接池为DBCP,本身包含许多配置参数,参数配置异常导致取到了已断开的连接。创建文件autoTelent.sh。系统平台:中标麒麟(海光)7。版本:4.3.4.7。
2025-07-17 10:53:48
552
原创 pg_ctl:无法启动服务器进程
瀚高数据库突然无法启动,could not open directory “pg_tblspc”:No such file or directory。因昨晚数据库服务没有正常停止就进行关机操作,导致第二天数据库无法正常启动。(注:未避免出现类似的情况,请在正常停止数据库服务情况下,再关机哦。系统平台:Microsoft Windows (64-bit) 10。在data目录下重新创建pg_tblspc文件夹后,可以正常连接。
2025-07-17 08:41:11
187
原创 在瀚高数据库中实现汉字转拼音
系统平台:Linux x86-64 Red Hat Enterprise Linux 7。在瀚高数据库中实现汉字转拼音的功能,获取姓名的首字母。3、创建输出type和函数,函数返回的是数组。详细信息和另一种实现方法请查看附件哦。1、首先创建汉字和拼音首字母的对照表。4、创建函数get_py_zm()2、未收录汉字插入到以下表。
2025-07-16 13:46:28
173
原创 Oracle触发器转写成瀚高触发器
③、inserting updating deleting 替换成(TG_OP = ‘INSERT’) (TG_OP = ‘UPDATE’) (TG_OP = ‘DELETE’)本文章主要介绍oracle触发器转换成瀚高的触发器需要做哪些操作,主要修改哪些东西。系统平台:Microsoft Windows (64-bit) 10。第一步,将Oracle触发器主逻辑封装成HighGoDB触发器函数。①、使用NEW替换:NEW,使用OLD 替换:OLD。将Oracle触发器的逻辑封装成触发器函数。
2025-07-15 14:44:23
304
原创 查询表名、注释、数据行数、字段数
文中需要用到user_tab_comment和user_col_comments视图,可参考实现达梦user_tab_comments和user_col_comments视图(APP)系统平台:Linux x86-64 Red Hat Enterprise Linux 7。满足同时查出表名、注释情况、数据行数及字段数的需求。查询表名、注释、数据行数、字段数。
2025-07-15 10:57:32
395
原创 应用系统报错:com.highgo.jdbc.util.PSQLException:bad value for long(APP)
MyBatis中在查询进行select映射的时候,返回类型可以用resultTy,调查分析发现,客户的程序中返回字段类型为longvarchar,故走了jar包内的tolong方法,引起报错。修改程序中返回字段类型longvarchar为varchar。系统平台:银河麒麟(飞腾)U系 V4。版本:4.3.4.5。
2025-07-14 14:30:58
383
原创 maven仓库如何加载瀚高数据库JDBC驱动
如: highgo/hgdb 5.0-42/system/${basedir}/src/main/lib/hgdb-5.0jdbc42.jar。2、将需要的jar包文件复制到 lib 文件夹下,和以及可自己定义,最好符合jar包的名称以及来源,必须填写为system,填写HGDB的驱动jar。内网环境,HGDB的驱动jar包无法自动下载,就需要把本地的HGDB的驱动jar包引用到maven项目中。在使用瀚高数据库时,需要将瀚高jdbc驱动通过maven来管理,如何使用。
2025-07-14 13:55:06
390
原创 瀚高数据库提交数据后,是否需要COMMIT
瀚高数据库默认自动COMMIT(提交数据),程序中不需要再进行提交控制。瀚高数据库提交数据后,是否需要commit,瀚高数据库是否有配置项。瀚高数据库默认自动commit,程序中不需要再进行提交控制。瀚高数据库提交数据后,是否需要commit。版本:5.6.5,4.5。
2025-07-11 14:26:48
311
原创 Arcgis连接HGDB报错
查看数据库日志,提示未配置spatial_planning用户连接postgres数据库的pg_hba记录。系统平台:Linux x86-64 Red Hat Enterprise Linux 7。无法连接到数据库服务器来检索数据库列表;请检查服务器名称、用户名和密码信息,然后重试。再次使用arcgis连接HGDB,可正常连接,问题解决。新增pg_hba内容。
2025-07-11 10:23:31
273
原创 迁移工具报错:Packet for query is too large (4482427>4194304)
进行插入、更新或查询时数据包的大小,会受 max_allowed_packet 参数限制,导致操作失败。迁移工具迁移MySQL时报错:Packet for query is too large (4482427>4194304)(2).退出mysql,重启mysql服务,再登录myql中查询max_allowed_packet是否修改成功。(1).在mysql控制台下输入以下命令,设置max_allowed_packet为20M。(1).mysql控制台下输入以下命令,编辑my.cnf。
2025-07-10 17:32:32
241
原创 select * from a where `key` = 1,表不存在
找到工程中指定mybatis-plus数据源的class类,在DataSourceConfig.java指定数据源为postgresql,代码生成器中的datasource 设置为 postgresql。客户原库使用的MySQL,mybatis-plus 2.1.4指定的数据源为MySQL,SQL生成器生成的语法为MySQL语法,所以报错。mybatis-plus 2.1.4 动态代理生成的SQL语句在瀚高数据库中执行报错,select * from a where。
2025-07-10 10:38:52
242
原创 HGDB兼容USER_TAB_COLUMNS介绍
Oracle中的USER_TAB_COLUMNS视图,一般用来根据指定的表名查看表结构,字段名,数据类型,数据长度,精度等信息,瀚高数据库封装了USER_TAB_COLUMNS视图,并不是完全的和Oracle的一样,但是一般可以满足用户需求。SELECT A.table_name 表名, A.column_name 字段名, A.data_type 数据类型, A.data_length 数据长度, A.DATA_PRECISION 精度。data_length:字段长度。data_type:字段类型。
2025-07-09 15:23:38
387
原创 查询瀚高数据库的创建时间
方法1.通过pg_controldata查询出system identifier的值,通过to_timestamp函数将字符串转换为时间格式。方法2.瀚高数据库提供函数pg_control_system可以直接查询出system identifier。系统平台:Linux x86-64 Red Hat Enterprise Linux 7。本文档用于查询瀚高数据库的创建时间。版本:6.0,4.5。
2025-07-09 09:46:24
201
原创 企业版V6口令复杂度配置 目录
不能使用包含瀚高数据库关键字和当前用户名的密码,以及其他被数据库系统认定为过于简单的密码。开关参数passwordstrength,默认on。关闭以上口令复杂度功能需要使用管理员执行“alter system set passwordxxxx = off”后,重启数据库生效。(1)最短长度8位,最长长度1024位。(3)不能使用前五次使用过的密码。开关参数passwordhistory,默认on。(4)创建用户所使用的密码不能含有瀚高保留字、关键字。1、关闭口令强度要求,设置简单密码。
2025-07-08 14:29:33
256
原创 为什么停库可能会很慢?
如果有walsender进程存在(例如有standby,有pg_basebackup,有pg_receivewal等利用流复制协议的客户端就会存在walsender进程),那么要等walsender将所有未发送完的wal日志都发送给下游后才可关闭该进程。事实上,除了client进程以后,数据库可能会有 walsender 进程、归档进程等。了解了归档进程和walsender进程需要执行的操作后,我们也就明白为什么有时候停库会花费很长的时间, wal没有发送完成,wal日志未归档完成都会导致这种情况的发生。
2025-07-08 14:00:26
889
原创 HGDB4.5.6无法使用HGDB4.5.5data目录启动数据库
HGDB4.5.6对audit_param.conf文件进行了修改,与4.5.5版本相比增加了hg_audit_keep_days等参数,所以在启动过程中读取audit_param.conf不成功,故启动失败。等待服务器进程启动 …2021-03-24 16:51:02.782 CST [63316] 致命错误: fail to read from audit_param.conf。pg_ctl: 无法启动服务器进程。
2025-07-07 15:45:24
394
原创 瀚高数据库使用hg_rman进行块恢复示例
注:此处的1663指的是表空间OID,通过select oid,* from pg_tablespace;本文档旨在介绍使用瀚高数据库提供的hg_rman工具进行块恢复。重启后此时查询测试表,会发现表已被破坏,无法获取表数据。5、创建模拟数据并使用hg_rman备份。vi 17227 编辑物理文件删除第一行。【block 0 指的是被破坏的块】需要重启防止数据库读取缓存数据。6、 模拟破坏测试表物理文件。恢复验证,数据已恢复完成。找到测试表的物理文件。
2025-07-07 15:08:27
508
原创 锁查询及处理
多个会话在同一时间段对相同的数据做了改动,且第一个会话没有立即释放。数据库锁表后,对锁住的表无法进行改动,严重时会影响业务正常运转。【此时会一直卡住不动】4、取消对应操作进程。
2025-07-04 14:25:23
226
原创 如何禁止数据库执行drop table的操作?
本文档旨在介绍如何在数据库中通过事件触发器禁止用户执行drop table的操作。其他高风险操作也可通过类似方式进行限制。
2025-07-04 09:55:12
213
原创 MyBatis分页插件PageHelper之数据库方言
com.github.pagehelper.PageException: 无法自动获取数据库类型,请通过 helperDialect 参数指定!没有配置数据库的方言参数helper-dialect,在pagehelper插件中不能获取数据库类型,分页失败。客户使用的框架是springboot,在配置文件application.yml中配置数据库的方言。系统平台:Linux x86-64 Red Hat Enterprise Linux 7。客户配置之后,分页正常。版本:4.3.4.9。
2025-07-03 14:52:44
205
原创 Excel导入null错误解决方式
用hgdbdeveloper-2021-03-03进行Excel导入时报null错误的解决方式介绍。错误原因:之前导出的excel文件中sheet的名称还是之前的表名。解决方式:修改导出的excel文件中sheet的名称为新表名。总结:excel导入数据时,sheet的名称应为表名。(2)、在新表上右键,选择导入表。(1)、在表上右键,选择导出表。(6)、修改sheet名称。(8)、查看导入的数据。(2)、选择导出格式。(4)、选择文件目录。(3)、选择导入格式。(4)、选择导入文件。
2025-07-03 10:53:27
569
原创 应用程序访问不到表
运行应用程序访问表,提示表不存在。postgresql.conf中添加程序需要访问的模式名,重启数据库。应用启动后,数据库中表还是访问不到。应用程序运行数据库脚本自动生成表,脚本中包含pg_catalog.set_config=(‘search_path’,‘’,false)删除脚本中pg_catalog.set_config=(‘search_path’,‘’,false)系统平台:Microsoft Windows (64-bit) 10。
2025-07-02 14:27:35
138
原创 MYSQL迁移瀚高后换行符与回车符问题
MySQL数据库换行符char(10),回车符char(13).瀚高数据库换行符是chr(10),回车符chr(13)替换mysql SQl中char(10)和char(13)为chr(10),chr(13)系统平台:Microsoft Windows (64-bit) 10。MySQL数据库迁移到瀚高后,执行SQL报错。
2025-07-02 10:18:27
258
原创 兼容MySQL中的find_in_set函数
假如字符串str在由N个子链组成的字符串列表strlist中,则返回值的范围在1到N之间,计算从1开始,不是从0开始。在HighGoDB中,通过自定义函数,兼容MySQL中的find_in_set(str,strlist)函数。第二个参数strlist是要搜索的逗号分隔的字符串列表。MySQL中的find_in_set函数。第一个参数str是要查找的字符串。HighGoDB兼容。
2025-07-01 14:10:56
372
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人