Redis内存碎片mem_fragmentation_ratio

众所周知Redis是一款内存数据库,内存碎片会影响Redis的访问效率, 平时需要对Redis的运行健康度检查时,需要关注该指标,同时需要综合判断,是否需要人工干预,Redis自己的内存管理机制可以自动清理碎片,但有可能在清理时会有性能波动或带了CPU消耗。

有哪些技术可以减少PostgreSQL/openGauss数据库的存储空间?

试想一下如果你的OpenGauss或postgreSQL数据库主机告警使用率超过了90%, 且因为使用local 存储,所有硬盘槽位已用完,除了迁移或扩展外部存储以外,是否可以给数据库做”瘦身”, 在PostgreSQL数据库中,有几种技术可以帮助减少数据库存储空间的使用

注意: GreatDB中sysdate并不是oracle的sysdate

国产库在承接Oracle替换方面做了大量的兼容性,如果仅实现了语法兼容,没有相同的语义,这恐怕比不兼容还糟糕,比如原来的oracle的应用迁移到国产库后执行不报错,但却有可能和oracle得到完全不一样的结果。今天我们以万里开源的GreatDB中的sysdate为例, 对最近同事遇到这个案例简单分享。

,

注意:HAProxy可能限制MySQL的最大连接数

MySQL架构中经常会遇到和keepalived、HAProxy中间件的组合,解决MySQL的高可用与负载均衡的需求, 但是会给数据库配置带来复杂性。如果没有把这些组件与MySQL级联配置,可能会出现一些意向不到的问题,了解HaProxy就变的重要,近期一个客户在这样的环境做压力测试时,MySQL数据库的max_connections最大链接数已调整到10000, 但一应用反馈链接报错,从数据库上看链接最大也就在2000左右,并且MySQL日志未出现报错,

, , ,

How to alter a Procedure Created by Another User in MySQL?

在企业级运维中,应用程序用户和维护用户通常不建议复用,分别能过权限控制给维护人员修改应用对象的权限, 但是对于存储过程在MySQL中授权相对较麻烦,没有像oracle数据库中的alter any procedure的系统权限。 比如当user1修改user2创建的存储过程时,在DDL中带有“DEFINER=”其他用户时会报错如下:
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER or SET_USER_ID privilege(s) for this operation

,

PostgreSQL生成UUID函数的性能区别

在oracle中可以使用sys_guid()函数生产UUID唯一值, 在PostgreSQL中可以利用”uuid-ossp”提供的方法生成UUID值,但是当查看PostgreSQL在线文档uuid-ossp的方法是发现有多种函数,如uuid_generate_v1、 uuid_generate_v3 、uuid_generate_v4、uuid_generate_v5,那它们生的效率有区别吗? 这里简单的测试。

什么是 pg_filenode.map 文件?

在PostgreSQL中,每个数据库对象都有一个唯一的文件节点号,用于标识对象在磁盘上的位置。这些文件节点号与实际的物理文件相对应,例如表的数据文件、索引文件等。pg_filenode.map文件将这些文件节点号与相应的文件路径进行映射,以便数据库系统能够准确地找到和访问这些对象, 通常从数据字典pg_class可以根据relfilenode字段查找对应的文件。试想一下,在数据库启动时,数据库都没有open如何加载pg_class?

Troubleshooting XFS filesystem损坏恢复,与ASM start fail案例

上个月那次“盆泼大瓢”式的暴雨差点导致一客户的服务器上船,但还是导致电源故障,在UPS支撑了一会儿中断,再次启动RAC中的一个节点,查看/u01 oracle 软件所在的文件系统无法使用, 重启后操作系统无法启动,后修复文件系统再次出现ASM无法启动问题,简单记录一下这个故障。

,

Troubleshooting oracle 19c datapatch Fails with Error:”ORA-25153: Temporary Tablespace is Empty”

一套oracle 19c 多租户环境,安装19.19RU时datapatch失败,日志提示其中某个PDB执行SQL时,ORA-25153: Temporary Tablespace is Empty (DBD ERROR: OCILobCreateTemporary) ,简单记录处理方法.

,

Oracle RAC Multiple Private Interconnects注意配置rp_filter

前段时间一套Oracle Exadata的环境, 2个ib做的private network和cell存储网络,但总有一条存储链路从db server到cell server ping不通,但是ibstat ibping rds-ping都正常, 因为一个IB链路出问题同样影响IO,无法做到高可用。后分析发现是出于安全检查只是从内存级修改了rp_filter值为1启用了严格的反向路径校验,禁用rp filter后恢复正常。