
数据库技术
文章平均质量分 85
拾光编程
一个老程序员,在剩余的时光里,记录编程的点点滴滴。
展开
-
PostgreSQL 17深度解析(从17.0-17.4)
通过深度解析PostgreSQL 17的演进,我们可以看到其在**高并发处理、数据安全、Oracle兼容性**等方面的显著提升。对于技术团队而言,及时升级并调优PostgreSQL 17,将大幅提升系统性能和可靠性,为业务增长提供坚实支撑。原创 2025-04-11 21:10:21 · 932 阅读 · 0 评论 -
PostgreSQL 16深度解析(从16.0-16.8)
PostgreSQL 16系列通过持续迭代,在保持ACID特性的同时,显著提升了分析型负载处理能力。从16.0到16.8的演进路线,清晰展现了开源数据库在云原生时代的进化方向。对于日均数据量超过TB级的企业,建议优先采用16.5+版本以获得向量搜索能力;对于传统OLTP场景,16.3的在线DDL特性可显著降低运维复杂度。原创 2025-04-06 20:38:21 · 1006 阅读 · 0 评论 -
PostgreSQL15深度解析(从15.0-15.12)
PostgreSQL 15系列通过15.0到15.12的迭代,实现了性能、安全与功能的全面跃升。15.0引入革命性MERGE命令,重构逻辑复制架构,深化JSON生态;算法级优化使排序效率指数级提升,压缩技术栈重构平衡存储与I/O;并行计算引擎突破传统限制,资源隔离提升多核利用率。运维体系强化零信任安全模型,可观测性工具链精准定位瓶颈,统计信息内存化架构保障实时性。后续小版本持续修复漏洞,如15.3修复MERGE内存泄漏,15.5补安全补丁,15.7优化索引。原创 2025-03-30 18:49:37 · 1010 阅读 · 0 评论 -
大数据入门
大数据入门需要掌握一系列核心技术和工具,包括编程语言、数据结构与算法、数据库知识、分布式系统、数据采集、数据清洗与预处理、数据分析方法和数据可视化等。通过学习和实践这些技术,你可以逐步掌握大数据处理和分析的基本能力,为后续深入学习和应用打下基础。同时,实际案例和示例也是学习和应用大数据技术的重要途径。通过参与实际项目或自己动手实践,你可以将理论知识与实践相结合,更好地理解和应用所学知识。转载 2025-01-06 20:28:40 · 1094 阅读 · 0 评论 -
数据库之连接池Druid
Druid是阿里巴巴开源的高性能数据库连接池组件,广泛应用于高并发互联网应用和企业级项目中。它提供了高效的连接管理、详细的监控信息、丰富的配置选项和安全特性。Druid支持快速创建和回收数据库连接,减少性能开销,并通过连接复用机制降低频繁连接的成本。其监控功能帮助开发者实时了解数据库状态,优化性能。Druid还内置防SQL注入功能,增强安全性。此外,它易于与Spring等框架集成,支持动态配置和插件扩展,Druid能显著提升应用性能和响应速度,是企业级应用的首选数据库连接池解决方案。原创 2024-12-08 09:21:52 · 1492 阅读 · 0 评论 -
面试常见题之PostgreSQL
PostgreSQL是一个开源的对象关系型数据库系统,具有高度的可扩展性和稳定性。其架构包括服务器进程、后端进程、共享内存、WAL和系统表等组件。PostgreSQL支持多种数据类型,如数值、字符串、日期/时间、布尔、枚举、JSON/JSONB和数组等。在PostgreSQL中,可以创建和删除数据库及表,使用索引提高查询性能,利用锁机制管理并发访问,创建和使用视图以及序列。原创 2024-12-02 22:17:27 · 1322 阅读 · 0 评论 -
缓存之Redis介绍
Redis是一个高性能、开源的键值对数据结构存储系统,支持多种数据类型和操作命令。其特点包括高性能、持久化机制、多用途、主从复制和集群模式。Redis支持字符串、哈希表、列表、集合、有序集合等数据结构,并提供了丰富的操作命令。它广泛应用于缓存、消息队列、实时分析等领域。Java程序可以通过Jedis等客户端库与Redis服务器交互,实现存储和检索数据、操作列表、使用哈希表、设置键的过期时间等功能。Redis还支持事务处理、发布/订阅模式、Lua脚本、地理空间索引和流等高级特性,适用于各种复杂的应用场景。原创 2024-11-30 21:03:43 · 1665 阅读 · 0 评论 -
PostgreSQL数据库高可用实现方案介绍
PostgreSQL的高可用实现方案多种多样,其中Pgpool-II、Patroni和Corosync+Pacemaker是三种常见的选择。Pgpool-II作为中间件,提供连接池、负载均衡和故障转移功能,适用于需要提高吞吐量和可用性的场景,但读写分离时性能会有所折损。Patroni则通过外部存储实现自动故障检测、恢复和转移,确保数据一致性和完整性,适合对高可用性和数据要求严格的环境。而Corosync+Pacemaker作为集群资源管理和心跳检测方案,提供了丰富的功能和灵活性,适用于各种高可用性需求。原创 2024-11-26 22:05:11 · 2008 阅读 · 0 评论 -
PostgreSQL数据库参数调优实践
PostgreSQL数据库性能调优涉及多方面,包括基础了解双重缓冲区处理、数据库性能影响因素及查询优化器。主要参数调优实践涵盖shared_buffers、work_mem、effective_cache_size等,通过合理设置可显著提升性能。索引优化包括选择索引类型、创建复合索引及定期维护。硬件资源如CPU、内存和存储的升级也能大幅提升性能。实际案例显示,通过参数调优、索引优化和硬件评估,数据库查询响应时间缩短,QPS提升,资源利用率更均衡,维护操作时间缩短,整体性能显著提高。原创 2024-11-25 22:37:11 · 1098 阅读 · 0 评论 -
PostgreSQL表膨胀问题解析
表膨胀是PostgreSQL数据库中常见的问题,主要表现为表数据和索引占用空间不断增大,而实际数据量并未显著变化。这主要由MVCC机制、频繁更新删除、未提交事务、填充因子设置及autovacuum机制不足等因素引起。膨胀的表会导致存储成本增加、查询性能下降、备份恢复时间延长及系统资源消耗增加等问题。为解决这些问题,可以定期执行VACUUM操作,启用和配置autovacuum机制,使用pg_repack或pg_reorg工具进行在线重组,合理设计数据库和查询,以及建立监控和预警体系。原创 2024-11-24 20:14:02 · 1204 阅读 · 0 评论 -
PG数据库之用户权限
PostgreSQL数据库的用户权限管理是确保数据库安全、完整性和高效运行的关键组成部分。通过精细的用户权限管理,可以实现对数据库资源的访问和操作的严格控制,防止未经授权的访问和修改。在实际应用中,应根据业务需求和安全考虑合理设置和管理用户权限。同时,应定期审查权限设置确保它们符合组织的安全策略和合规要求。通过有效的用户权限管理可以提高数据库的安全性、可用性和性能为业务的发展提供有力支持。原创 2024-11-03 21:58:37 · 1970 阅读 · 0 评论 -
PG数据库之表分区
PostgreSQL通过表分区功能解决了大数据量表查询性能低下的问题。表分区将大表分割为多个小而易管理的部分,每部分称为分区,具有独立名称和存储特性。分区类型包括范围、列表和哈希分区,分别适用于不同数据特性。创建分区表需先建父表,再根据需要创建子分区。此功能提升了查询性能、简化了数据管理,并支持高效的数据组织、归档和并发访问。通过具体示例,展示了如何按日期、地理位置和用户ID哈希值进行分区,以及分区在时间序列、地理数据和高并发访问等场景中的应用。原创 2024-11-02 21:43:26 · 1117 阅读 · 0 评论 -
PG数据库之触发器详解
PostgreSQL中的触发器是一种在特定数据库事件(如插入、更新、删除)发生时自动执行的函数。触发器可用于强制业务规则、记录审计日志、同步数据等。PostgreSQL支持多种触发器类型,包括行级、语句级和INSTEAD OF触发器,以及处理DDL事件的事件触发器。创建触发器需先定义触发器函数,该函数在触发器被触发时执行,并返回trigger类型的值。原创 2024-10-30 22:19:31 · 2291 阅读 · 0 评论 -
PG数据库之视图详解
PostgreSQL中的视图是一种虚拟表,通过SQL查询定义,不实际存储数据,可简化数据访问、提高数据安全、实现数据抽象和逻辑独立性,并有助于性能优化。视图在数据报表、分析、挖掘、安全及数据仓库和OLAP应用中具有重要作用。为优化视图性能,可以简化视图定义、优化基础表、合理使用连接、避免复杂逻辑和计算,以及使用物化视图。在创建和管理视图时,应遵循实用建议和最佳实践,如使用CREATE VIEW和CREATE OR REPLACE VIEW语句、限制用户访问权限、使用触发器进行额外验证、监控和分析视图性能等。原创 2024-10-29 22:23:20 · 1466 阅读 · 0 评论 -
PG数据库之流复制详解
PostgreSQL流复制是一种实时数据同步技术,通过WAL日志在主节点和从节点间传输并应用数据变更,确保数据一致性和可靠性。它适用于高可用数据系统、数据同步、跨数据中心复制及读写分离等场景。配置流复制需调整主从节点的参数,创建复制用户,并初始化从节点数据。流复制具有实时同步、高可用、负载均衡等优点,但也存在性能开销、网络延迟及数据不一致性风险。与逻辑复制相比,流复制适用于高性能数据同步,而逻辑复制则更灵活,支持跨版本和数据库复制。为发挥流复制优势,应合理配置参数、建立监控告警机制,并定期备份与恢复测试。原创 2024-10-28 22:29:25 · 1724 阅读 · 0 评论 -
PG数据库之性能优化
优化PostgreSQL查询性能涉及多个关键因素,包括索引优化、查询优化、数据库配置、硬件资源和并发控制。通过选择合适的索引类型、优化查询语句、调整配置参数、升级硬件资源和设置合理的事务隔离级别,可以显著提升数据库性能。例如,创建复合索引、避免全表扫描、使用JOIN代替子查询、调整shared_buffers和work_mem等配置参数,以及使用SSD存储和多核CPU,都能有效提高查询速度。此外,通过pg_stat_statements监控查询性能和pg_repack进行表重组,也能进一步提升性能。原创 2024-10-28 19:40:40 · 1448 阅读 · 0 评论 -
PG数据库之索引详解
PostgreSQL数据库中的索引是提高查询性能的关键数据结构。它通过多种索引类型,如B-tree、Hash、GiST、SP-GiST、GIN、BRIN等,满足了各种查询场景的需求。这些索引类型各有特点,如B-tree适用于等值查询和范围查询,Hash适用于等值查询,GiST和SP-GiST适用于空间数据和多种数据类型,GIN适用于多值查询,BRIN则适用于大数据量和时序数据。此外,PostgreSQL还支持多列索引、唯一索引和表达式索引,以及部分索引,后者只对满足特定条件的行创建索引,从而减少了索引大小和原创 2024-10-27 22:25:02 · 1614 阅读 · 0 评论 -
PG数据库之数据类型入门
PostgreSQL(PG)数据库支持多样的数据类型,涵盖整数、浮点数、任意精度数值的数值类型,字符、文本字符串的字符类型,以及日期、时间、时间戳的日期和时间类型。此外,它还支持布尔、二进制数据、数组、JSON/JSONB、UUID、网络地址、几何数据类型等。这些丰富的数据类型使得PostgreSQL在数据存储和处理上具有高度的灵活性和精确性。原创 2024-10-27 22:15:05 · 2198 阅读 · 0 评论 -
PG数据库之事务处理
PostgreSQL数据库的事务处理是确保数据库操作一致性和完整性的关键机制。通过遵循事务处理的基本步骤,使用适当的存储过程和函数,设置合理的隔离级别和保存点,以及进行性能优化,可以大大提高数据库系统的可靠性和性能。在实际应用中,需要根据具体需求和环境来设计和实现事务处理逻辑,以满足不同的业务要求。原创 2024-10-26 22:41:14 · 1773 阅读 · 0 评论 -
面试常见题之PG数据库
本文为面试时问道数据库(PG数据库)时,准备了10几道常见的题目,并给出了参考答案,涵盖了PostgreSQL的基础、高级功能、优化、安全性、备份与恢复等多个方面。原创 2024-09-13 22:13:06 · 1456 阅读 · 0 评论 -
PostgreSQL中的多版本并发控制(MVCC)深入解析
多版本并发控制(MVCC)是PostgreSQL中一个非常重要的并发控制机制,它通过维护数据的多个版本来实现高效的并发读写操作,同时保证了数据的一致性和隔离性。本文深入解析了MVCC的工作原理、使用场景和实现细节,并通过具体SQL示例展示了其在实际应用中的表现。原创 2024-09-08 11:13:36 · 1643 阅读 · 0 评论 -
PostgreSQL入门介绍
PostgreSQL 是一款功能强大的开源关系型数据库管理系统,起源于20世纪80年代末,旨在提供高性能、可扩展和可靠的数据存储解决方案。它支持几乎所有SQL标准,并提供了如ACID事务、MVCC、复杂查询、大型对象支持、触发器、存储过程等高级功能。PostgreSQL 与 MySQL 相比,在数据类型支持、SQL标准遵循、扩展性等方面更具优势,适用于金融、电信、ERP等复杂应用场景。原创 2024-09-08 08:48:12 · 2150 阅读 · 0 评论 -
PG数据库安装-虚拟机模式
本文档概述了PostgreSQL 15.5版本的安装与配置过程,包括安装前的依赖组件安装、新建用户及组、文件夹创建、环境变量更新、上传并解压安装文件、配置编译安装选项、数据库初始化、启动及配置修改(如监听地址、远程连接设置)、以及最终的安装结果测试(数据库访问、表操作、防火墙端口设置等)。整个流程旨在确保PostgreSQL数据库能够在Linux环境下成功安装并配置为接受远程连接。原创 2024-08-17 09:13:05 · 1223 阅读 · 0 评论 -
pg数据库安装-主备模式
pg15数据库安装-主备模式原创 2024-07-14 15:51:20 · 1739 阅读 · 0 评论 -
PG数据库的高可用工具-Repmgr的安装
Repmgr是一款用于管理PostgreSQL集群复制和故障转移的开源工具,支持流复制管理、自动故障转移、集群状态监控及通知报警等功能,安装需配置依赖并编译源代码,验证安装可通过查看版本实现。原创 2024-07-14 16:07:36 · 444 阅读 · 0 评论 -
PG数据库使用repmgr手动切换
siblings-follow 表示从节点或者witness节点也跟随切换。–siblings-follow 表示从节点或者witness节点也跟随切换。测试完毕,切回134 master, 135 salve。在standy(134)节点 上查看。在standy(135)节点 上查看。测试完毕,能正常手动切换。134是从,135是主。在主库(135)上查看。134是主,135是从。在主库(134)上查看。原创 2024-07-14 16:20:47 · 313 阅读 · 0 评论 -
PG数据库使用repmgr自动切换
若想要实现高可用集群的自动故障转移,就必须使用repmgrd的守护程序,用来监控和记录复制集群信息、检测集群复制故障并决策选出最佳服务器并提升为主服务器,启动repmgrd的同时需要我们在PostgreSQL数据库中添加repmgr的共享库。修改后重启PG。原创 2024-07-14 16:24:37 · 260 阅读 · 0 评论 -
docker环境下安装及使用PG数据库
1、docker环境下安装PG数据库。原创 2022-01-03 21:43:54 · 2255 阅读 · 0 评论