首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 设置 PostgreSQL 以运行集成测试

    在本文中,我将解释如何设置PostgreSQL进行测试并讨论一些需要避免的常见陷阱。隔离是首要目标在我们深入细节之前,让我们先定义我们的目标:隔离——我们希望确保每个测试都是隔离运行的。 至少,这意味着每个测试都应该有自己的数据库。这可确保测试不会相互干扰,并且您可以并行运行测试而不会出现任何问题。性能– 我们希望确保为测试设置 PostgreSQL 的速度很快。 然而,在处理使用 PostgreSQL 特定功能的代码路径时,它很快就会成为问题。 在我们的例子中,由于使用了各种 PostgreSQL 扩展、PL/pgSQL 函数和其他 PostgreSQL 特定的功能,我们无法使用 SQLite 进行测试。 使用pg_tmp我们尝试的另一种方法是使用pg_tmp.pg_tmp是一个为每个测试创建临时 PostgreSQL 实例的工具。理论上pg_tmp是一个很好的解决方案。它允许完全隔离测试

    63910编辑于 2024-05-08
  • 来自专栏AustinDatabases

    POSTGRESQL 压力测试结果与 POSTGRESQL CPU OR 内存 提升性能提升大

    本篇文字,是没有业务方面的测试对于POSTGRESQL 的压力测试,但作为一个正规的数据库部门,我们一定是有,不同硬件在同样配置下的POSTGRESQL 的跑分成绩的,并且还要有不同的 1 数据量 我们总结出如下的一些在POSTGRESQL 13上表现得性能状态。 1 CPU 的核心数的增加,对比内存的增加,在同种压力的情况下,CPU 添加后对系统的性能帮助大。 图3 图4 3 OLTP ,在OLTP 的操作中,CPU 多的情况下,访问线程多的情况下对于POSTGRESQL 的影响就有不同了,在表的行数多的情况下,部分测试结果中内存大的POSTGRESQL 这里先说说,这两者查询在在同种配置的查询中,POSTGRESQL 更喜欢的是random point 的查询方式,因为这样的查询方式本身比range的查询的方式在TPS QPS 均有优势。 5 那么我们是否就可以得出POSTGRESQL 在数据处理中对于数据的操作应该给更多的CPU 要有利于给更多的内存,----下面的结果就给出了明确的结果 不是 下面的测试中,主要对于数据的UPDATE

    3.1K10编辑于 2022-12-12
  • 来自专栏深度学习之tensorflow实战篇

    centos7.4安装PostgreSQL测试

    安装yum更新源 yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-redhat10 -10-1.noarch.rpm 安装PostgreSQL客户端和服务端 yum install postgresql10 -y yum install postgresql10-server 把Environment=PGDATA=/var/lib/pgsql/10/data/修改为Environment=PGDATA=/data/pg10data/ /usr/pgsql-10/bin/postgresql -10-setup initdb #初始化 systemctl enable postgresql-10 #设置开机启动 systemctl start postgresql -10 #启动postgresql服务 也可以使用postgreSQL自带的初始化命令initdb初始化数据库: su - postgres 初始化 /

    95640发布于 2018-04-02
  • 来自专栏Greenplum

    PostgreSQL:effective_io_concurrency基准测试

    PostgreSQL:effective_io_concurrency基准测试 引言 正如在一篇近期的帖子中所提到的,我会定期检查我心爱的数据库的所有设置,今天我想和大家聊聊一个名为"effective_io_concurrency effective_io_concurrency 告知 PostgreSQL 我们的磁盘有多快(或慢查询)。 它的默认值为1,手册中是这样定义的: 设置 PostgreSQL 期望可以同时执行的并发磁盘 I/O 作的数量。提高此值将增加任何单个 PostgreSQL 会话尝试并行启动的 I/O 作的数量。 测试 由于我们正在测试磁盘性能,我会先清理缓存,然后重启PostgreSQL,之后再运行查询。 ://www.postgresql.org/docs/current/runtime-config-resource.html [2] PostgreSQL_effective_io_concurrency_benchmarked

    22610编辑于 2025-09-11
  • 来自专栏oracleace

    使用pgbench对PostgreSQL进行基准测试

    TPC-C是经典的衡量在线事务处理(OLTP)系统性能和可伸缩性的基准测试规范。 常见的开源数据库的基准测试工具有benchmarksql、 sysbench等,PostgreSQL自带运行基准测试的简单程序pgbench。 pgbench是一个类TPC-B 的基准测试工具,可以执行内置的测试脚本,也可以自定义脚本文件。 官方文档: PostgreSQL: Documentation: 15: pgbench https://www.postgresql.org/docs/15/pgbench.html 使用pgbench 01 — 初始化pgbench测试数据 使用下面的命令初始化测试数据 -bash-4.2$ pgbench -i -s 2 -F 80 -U postgres dropping old tables.

    1.7K10编辑于 2023-09-06
  • 来自专栏AustinDatabases

    Postgresql 压力测试 pgbench 与 准不准

    任何数据库都有压力测试的需求,每种数据库的压力测试都是要证明这个数据库本身在某种硬件的情况下,能达到的一种可以承受的工作上的压力。 那么有一个问题压力测试的数据准吗? 放到数据库也是一样,测试的标准都不唯一,怎么测试的,测试的数据,以及测试的复杂度都不一样,测试的结果能说明什么, 唯一能说明的就是如果结果太差,那这个数据库一定不行,但如果数据好看,也不能说这个数据库就一定好 言归正传,postgresql的压力测试有么有必要,当然有,但是我们的测试大部分就属于五星批发部, 那么今天五星批发部pgbench 就来测测我们的postgresql 这辆多功能“车”。 当然数据量也是很重要的,如果你需要测试更多的数据,也可以在初始化的时候通过 -s 来加大测试数据, 如果不给相关的测试数据默认是10万,-s 是测试的数据倍数。 另外一个事情是需要注意的是,你的 -c 参数是同时连接postgresql的客户端,注意你填写的客户端,这里不是要和你的最大连接数持平,而是你要和你在某一秒同时工作的连接进行对比,可能一个非常繁忙的系统

    1.7K30发布于 2021-04-22
  • 来自专栏数据和云

    MogDB与PostgreSQL分区策略语法测试

    PostgreSQL目前还不支持该语法,MogDB从版本已经支持。 注意: 1.从2.0.0版本开始,模板库默认字符集由SQL_ASCII改为了UTF8,同时数据库兼容性由Oracle改为PostgreSQL,对本测试的影响是date数据类型。 3.MogDB目前不支持子分区,PostgreSQL支持声明式子分区。 sjhy 关于作者 彭冲,云和恩墨PG技术顾问,网名“多米爸比”,PG社区认证专家,中国首期PostgreSQL ACE Partner,多年从事基于PostgreSQL数据库的软件研发,擅长于PL/PGSQL 业务迁移及优化,Oracle到PostgreSQL的迁移升级,异构数据库整合;作为墨天轮PostgreSQL实践专栏作者,热衷于PostgreSQL实践技术分享,在自己的岗位积极推广PostgreSQL

    2K20编辑于 2022-02-25
  • 来自专栏MySQL参数系列

    docker快速拉起任意版本PostgreSQL测试环境

    1、拉取镜像 docker pull postgres:14.4 2、创建docker容器 docker run --name pg14 -h pg14 -d -p 54327:5432 -e POSTGRES_PASSWORD=xxx -e TZ=Asia/Shanghai postgres:14.4 3、登录 docker exec -it pg14 psql -U postgres -d postgres

    56310编辑于 2022-12-19
  • 来自专栏AustinDatabases

    PostgreSQL Bgwriter 与 checkpoint 性能 与性能测试

    POSTGRESQL 系统有什么影响. 下面开始测试的环节,测试机是一台虚拟机 4 核心 16G 的CPU 系统没有进行复杂的优化,仅仅对 share buffer, workmem 进行了例行的调整 pgbench -i -s 1000 创建一个亿的数据 以下为基准测试测试后的数据 pgbench -M prepared -v -r -P 1 -f . /readwrite.sql -c 32 -j 32 -T 120 -D scale=1000 -D range=10000000 测试读写脚本 \set aid random_gaussian(1 ,而调整bgwriter 后对于测试的分数的增长并不明显.

    2K20发布于 2021-09-24
  • 来自专栏数据和云

    openGauss与PostgreSQL分区策略语法测试

    PostgreSQL支持继承,版本10之前的分区表都是通过继承特性来实现,每个分区实际上都是一个独立的表。数据更新可通过触发器trigger或者规则rule来实现。 PostgreSQL目前还不支持该语法,openGauss从版本1.1.0开始支持。 openGauss间隔分区例子。 注意: 上面是在opengauss 1.1.0版本上测试的,从2.0.0版本开始,模板库默认字符集由SQL_ASCII改为了UTF8,同时数据库兼容性由ORACLE改为PG,对本测试的影响是date数据类型 关于作者 彭冲,云和恩墨PG技术顾问,网名“多米爸比”,PG社区认证专家,中国首期PostgreSQL ACE Partner,多年从事基于PostgreSQL数据库的软件研发,擅长于PL/PGSQL业务迁移及优化 ,Oracle到PostgreSQL的迁移升级,异构数据库整合;作为墨天轮PostgreSQL实践专栏作者,热衷于PostgreSQL实践技术分享,在自己的岗位积极推广PostgreSQL,致力为PG社区多做奉献

    1.8K41发布于 2021-05-31
  • 来自专栏影子

    使用sysbench测试mysql及postgresql(完整版)

    使用sysbench测试mysql及postgresql(完整版) 转载请注明出处https://www.cnblogs.com/funnyzpc/p/14592166.html 前言 使用sysbench 测试数据库十分的麻烦(主要是sysbench安装麻烦),本人需要测试mysql及postgresql,mysql可以正常编译通过,postgresql的怎么都不行,后来群内有网友提供编译版, 发现一切都好使了 ,在此感谢某网友提供的编译版sysbench 另外,如在使用过程中报各种莫名其妙的错误请使用yum或apt安装下mysql或postgresql ,后续基本都顺利~ sysbench主要参数 --threads /sysbench_mysql [执行参数] postgresql: ./sysbench_pg [执行参数] oracle: . DB \ --oltp-tables-count=3 cleanup postgresql测试 构建测试数据 .

    1.9K10发布于 2021-04-09
  • 来自专栏iSharkFly

    Confluence 6 PostgreSQL 测试你的数据库连接

    在你的数据库设置界面,有一个 测试连接(Test connection)按钮可以检查: Confluence 可以连接你的数据库服务器 数据库字符集的编码是否设置正确 你的数据库用户是否有正确的权限可以访问和使用数据库 一旦上面的测试成功了,单击 下一步(Next )来继续进行 Confluence 的安装进程。 如果 Confluence 和 PostgreSQL 分别在不同的服务器上,请参考 PostgreSQL documentation on how to set up pg_hba.conf 中的内容来确定 Confluence 和 PostgreSQL 之间能正常通信。 https://www.cwiki.us/display/CONFLUENCEWIKI/Database+Setup+for+PostgreSQL

    93320发布于 2019-01-31
  • 100天跟着CP学PostgreSQL+AI,第19天 : 自动化测试:用生成式 AI 生成 PostgreSQL 测试用例

    系列文章介绍 第四阶段 : AI增强开发范式 主要内容 主题:自动化测试:用生成式 AI 生成 PostgreSQL 测试用例 核心内容:GPT-4 生成边界值测试数据 / 断言校验(用 pgTAP PostgreSQL 作为一款强大的开源关系型数据库,在各类项目中广泛应用。而自动化测试作为保障数据库质量的关键环节,如何高效生成测试用例成为了测试人员面临的一大挑战。 今天,我们就来探索如何借助生成式 AI,尤其是 GPT-4,来实现 PostgreSQL 测试用例的自动化生成,提升测试效率和质量。 一、GPT-4:边界值测试数据生成的利器 边界值测试是软件测试中常用的方法,通过对输入或输出的边界值进行测试,能够有效发现潜在的错误。在 PostgreSQL 测试中,边界值测试数据的生成至关重要。 我们向 GPT-4 发送如下提示: 请为 PostgreSQL 用户表的年龄字段生成边界值测试数据。

    29610编辑于 2025-08-27
  • 来自专栏AustinDatabases

    Postgresql 有了 psycopg2 操作测试更方便(一)

    随着对DB们的要求越来越高,测试,查找问题,监控,做一些比较复杂的事情,没有程序来加入,模拟一些比较复杂的应用环境,则事情会比较难搞。 Python 与 PostgreSql 之间的操作连接就是 psycopy2 ,今天来说说怎么通过psycopy2 来和postgresql 进行沟通。 connection.cursor()我们可以创建一个cursor对象,它允许我们通过Python源代码执行PostgreSQL命令。 我们可以从一个连接对象创建任意多的游标。 在了解了上面的一些事情后,下面就开始对数据库进行简单的一些操作 如何在创建一个表,并且判断这个表是否存在,如果存在就报错,否则就创建 使用到了 psycopg2.DatabaseError 下面代码创建测试表 ,一次性创建 500张 基本的操作会了,先我们需要一个测试 1 建立500张表 2 在每张表中开始插入数据,并且不能重复 3 在插入数据的同时,进行UPDATE 操作 下面就是这段代码 其中在操作DML

    2.9K10发布于 2020-03-10
  • 来自专栏AustinDatabases

    PostgreSQL 有了 psycopg2 操作测试更方便 (二)

    上期写了一个简单的例子,基本上怎么连接和操作postgresql 算是有了开始,今天会继续看看psycopg2 操作postgresql 有什么dig deep 在DML 操作中,大部分情况都是套好 “模版” 然后将实际值带入到传参,实际中postgresql 中的字段都是有不同的类型在使用,而在psycopg2中,所有的字段类型占位符均使用 %s ,而不使用 %d (int) , %f (float

    1.1K20发布于 2020-05-13
  • 来自专栏公众号:懒时小窝

    PostgreSQL】Introduction to PostgreSQL Index Types

    #PostgresqlPostgreSQL Index Types | 6 Types of Index available in PostgreSQL (educba.com)PostgreSQL Index PostgreSQL 索引在 PostgreSQL 中非常重要和有用,能以最快速度访问表中的数据。 We can create single and multiple indexes in PostgreSQL. 我们可以在 PostgreSQL 中创建单索引和多索引。 The PostgreSQL index is the same as the index of the book. PostgreSQL 索引有助于从表中高效检索数据。 PostgreSQL GIST 索引可以构建整体树形结构。GiST 索引适用于 PostgreSQL 中的几何数据类型和完全搜索。

    88220编辑于 2023-10-30
  • 来自专栏Lansonli技术博客

    PostgreSQL基础(一):PostgreSQL入门介绍

    PostgreSQL入门介绍一、介绍PostgreSQL是一个功能强大的 开源 的关系型数据库。底层基于C实现。PostgreSQL的开源协议和Linux内核版本的开源协议是一样的。。 BDS协议,这个协议基本和MIT开源协议一样,说人话,就是你可以对PostgreSQL进行一些封装,然后商业化是收费。PostgreSQL的名字咋来的。 PostgreSQL相对MySQL上述问题的特点: PostgreSQL的数据类型嘎嘎丰富。 PostgreSQL是有序列的概念的。 PostgreSQL的插件特别丰富。 PostgreSQL支持主从复制的同步操作,可以实现数据的0丢失。 PostgreSQL的MVCC实现和MySQL不大一样,PostgreSQL一行数据会存储多个版本,最多可以存储40亿个事务版本。 ​

    1.4K21编辑于 2024-09-03
  • 来自专栏lgp20151222

    postgresql安装,java简单使用postgresql

    二 安装 postgresql了解的主要原因是因为腾讯很多招聘都有要求,那么不管怎么说crud折腾一次是必要的 但是这玩意好像他们都不更新几年了.... 我把自己的猜测说一下 早期postgresql性能优于mysql,甚至有博客说是mysql的三倍。 但是在mysql 5.5就被追平,5.7反超,所以说腾讯用postgresql是历史原因,postgresql的开源团队毕竟几年都没更版本了。 postgresql在多年前就支持json。 mysql还没有,那么只要不引入其他支持json的等postgresql还是有一战之力的,但是5.7mysql也支持了... 那么除去性能除去json,腾讯同时使用这两数据库的原因估计就是postgresql在高压环境下性能并没有下降,而myql明显下降。还有各种数据格式的支持。sql编程能力强。

    1.9K10发布于 2018-11-29
  • 来自专栏干货分享

    PostgreSQL介绍和PostgreSQL包安装

    毫无疑问,PostgreSQL 已成为许多人和组织的开源关系数据库首选。开始使用 PostgreSQL 从未如此简单——选择一个您想要构建的项目,让 PostgreSQL 安全且稳健地存储您的数据。 为什么选择 PostgreSQLPostgreSQL 拥有许多旨在帮助开发人员构建应用程序、管理员保护数据完整性和构建容错环境的功能,并帮助您管理数据,无论数据集大小。 此外,PostgreSQL 具有高度的可扩展性:许多特性,如索引,都定义了 API,因此您可以使用 PostgreSQL 扩展来解决您的挑战。 /pgdg4sudocurl-o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc --fail https://www.postgresql.org a PostgreSQL Server | package13| postgresql16-server | The Programs Needed to Create and Run a PostgreSQL

    69210编辑于 2025-09-23
  • 来自专栏深度学习与python

    分布式PostgreSQL基准测试:Azure Cosmos DB、CockroachDB和YugabyteDB

    作者 | Renato Losio 译者 | 平川 策划 | Tina 最近,微软详细介绍了分布式 PostgreSQL 基准测试的结果,比较了 Azure Cosmos DB for PostgreSQL 根据 GigaOm 基准测试,在事务性能和价格方面,采用 Citus 分布式表的 Azure Cosmos DB for PostgreSQL 优于 CockroachDB Dedicated 和 Yugabyte 微软首席软件工程师 Marco Slot 写道: GigaOM 使用 HammerDB TPROC-C 对 Azure Cosmos DB for PostgreSQL 和两个类似的托管服务产品(…)进行了基准测试 Citus 是 PostgreSQL 中一个用于分发表的开源扩展,它要求开发人员指定一个分发列,即分片键: Citus 的核心理念一直是:分布式 PostgreSQL 是为大规模、高性能而生的,因为对于其他任何事情 ,PostgreSQL 都已经足够好。

    75620编辑于 2023-08-09
领券