PostgreSQL插件_pg数据库安装postgres插件-程序员宅基地

技术标签: postgresql  PG  服务器  数据库  

说明

PostgreSQL是一个可扩展的关系型数据库,支持插件机制。插件可以增强PostgreSQL的功能,例如添加新的数据类型、查询优化器、存储引擎等等。以上是一些常用的PostgreSQL插件,它们可以帮助开发者扩展PostgreSQL的功能,提高数据库的性能和灵活性。

PostgreSQL 最常用的插件 ](https://www.cnblogs.com/88223100/p/The-most-common-plug-ins-of-PostgreSQL.html)

列出插件

您可以使用以下命令来查看 PostgreSQL 中已安装的插件:

SELECT * FROM pg_available_extensions;

这将列出所有可用的扩展和其描述。

您还可以使用以下命令来查看已安装的插件:

SELECT * FROM pg_extension;
dx

这将列出所有已安装的扩展及其状态和版本信息。

示例

pgAudit

pgAudit是一个用于审计PostgreSQL数据库的插件,可以记录每个SQL语句的执行情况,包括执行时间、执行用户、执行结果等信息。下面是pgAudit插件的使用方法:

  1. 安装pgAudit插件

首先需要安装pgAudit插件,可以使用以下命令:

sudo apt-get install postgresql-contrib

安装完成后,需要在postgresql.conf文件中添加以下配置:

shared_preload_libraries = 'pgaudit'
pgaudit.log = 'ddl, read, write'
  1. 重启PostgreSQL服务器

添加配置后,需要重启PostgreSQL服务器使配置生效:

sudo service postgresql restart
  1. 创建审计日志表

在使用pgAudit插件之前,需要先创建一个审计日志表,可以使用以下命令:

CREATE TABLE audit.logged_actions (
    schema_name text NOT NULL,
    table_name text NOT NULL,
    user_name text NOT NULL,
    action_tstamp timestamp with time zone NOT NULL default current_timestamp,
    action text NOT NULL,
    original_data text,
    new_data text,
    query text,
    action_reason text,
    client_addr inet,
    client_port integer,
    session_user_name text,
    session_id text,
    application_name text
);
  1. 开启审计日志记录

在创建审计日志表后,需要使用以下命令开启审计日志记录:

SET pgaudit.log = 'all';
  1. 查看审计日志

审计日志记录完成后,可以使用以下命令查看审计日志:

SELECT * FROM audit.logged_actions;

以上就是pgAudit插件的使用方法,通过使用pgAudit插件,可以方便地对PostgreSQL数据库进行审计和监控。

SET pgaudit.log = 'all'; 是一个 PostgreSQL pgaudit 插件的设置命令,它的作用是启用 pgaudit 插件并将所有数据库操作记录到日志中。

pgaudit 是一个第三方插件,它可以用于审计 PostgreSQL 数据库的所有操作。它可以记录用户登录、数据库对象的创建、修改和删除、SQL 查询语句等操作,以及失败的登录尝试、未授权的访问等安全事件。

在设置 pgaudit.log'all' 后,pgaudit 将记录所有数据库操作,包括成功和失败的操作。这将产生大量的日志数据,因此建议仅在需要详细审计时使用该设置。您可以根据需要将其设置为 'ddl''read''write' 等选项,以记录特定类型的操作。

请注意,启用 pgaudit 插件会对数据库的性能产生一定的影响,因此在生产环境中建议谨慎使用。

postgres_fdw

PostgreSQL Foreign Data Wrapper (FDW) 是一种 PostgreSQL 扩展,它使得 PostgreSQL 数据库可以通过外部数据源连接到其他数据库或数据存储系统。FDW 允许 PostgreSQL 数据库通过 SQL 查询访问外部数据源的表、视图和函数,就好像它们是本地表一样。

FDW 通过实现 PostgreSQL 外部表(Foreign Table)的概念,将外部数据源映射到 PostgreSQL 数据库中。外部表的定义包括外部数据源的连接信息、表结构信息、索引和约束等。当查询外部表时,PostgreSQL 会将查询转换为外部数据源的查询语言,并将结果集返回到客户端。

FDW 的优点包括:

  • 可以轻松地将外部数据源集成到 PostgreSQL 中,无需复制数据或维护 ETL 流程。
  • 可以在 PostgreSQL 中使用 SQL 查询和操作外部数据源,无需了解外部数据源的查询语言或 API。
  • 可以通过 FDW 扩展实现 PostgreSQL 与其他数据库或数据存储系统的集成,例如 MySQL、Oracle、Hadoop、Elasticsearch 等。

PostgreSQL FDW 扩展提供了以下特性

  • 通过外部表将外部数据源映射到 PostgreSQL 数据库中。
  • 支持连接到多种数据源,例如 PostgreSQL、Oracle、MySQL、SQLite、SQL Server 等。
  • 允许使用 SQL 查询和操作外部数据源。
  • 支持在外部数据源上创建索引和约束。
  • 提供了安全性和隔离性,可以限制对外部数据源的访问权限。
  • 支持在外部数据源上执行远程事务。

使用 PostgreSQL FDW 扩展,可以轻松地将其他数据库和数据存储系统集成到 PostgreSQL 中,从而实现数据的统一管理和查询。需要注意的是,FDW 查询外部数据源的性能受到外部数据源的性能和网络通信的影响。在使用 FDW 时,需要评估外部数据源的性能和可用性,以确保查询效率和数据一致性。

postgres-fdw

dblink

contrib-dblink-function

pg_dblink是一个PostgreSQL扩展模块,它允许在PostgreSQL中使用SQL语句来连接其他的PostgreSQL数据库,或者连接其他数据库系统(如Oracle、MySQL等)。它使用动态语句执行(Dynamic SQL)来实现连接和操作外部数据,因此需要编写更多的代码来完成相同的任务。

pg_dblink的主要功能包括:

  1. 在PostgreSQL中连接其他数据库系统,包括其他的PostgreSQL数据库、Oracle、MySQL等;
  2. 在PostgreSQL中执行远程SQL语句,并返回结果;
  3. 在PostgreSQL中使用动态参数,可以在执行远程SQL语句时动态传递参数;
  4. 可以在PostgreSQL中使用事务控制来管理远程数据库的操作;
  5. 支持在PostgreSQL中使用函数和触发器来操作远程数据库。

使用pg_dblink需要先安装该扩展模块,可以使用CREATE EXTENSION命令来安装。安装后,可以使用dblink_connect函数来连接其他数据库系统,使用dblink_exec函数来执行远程SQL语句,使用dblink_fetch函数来获取远程SQL语句执行的结果。同时,pg_dblink还提供了其他的函数和操作,可以满足不同的需求。

postgres_fdw是PostgreSQL Foreign Data Wrapper的缩写,可以将其他数据库系统中的数据表映射到PostgreSQL中,让用户可以像操作本地数据表一样操作外部数据表,它实现了PostgreSQL的外部数据访问功能。

而dblink是一个PostgreSQL扩展模块,可以在PostgreSQL中连接其他的PostgreSQL数据库或其他数据库系统,并执行远程SQL语句,它实现了PostgreSQL的远程数据访问功能。

因此,两者的功能和用途不同。postgres_fdw主要用于访问外部数据表,而dblink主要用于访问远程数据库。

file_fdw

PostgreSQL file_fdw 是 PostgreSQL 中的一种扩展,它可以将文件系统中的文件映射到 PostgreSQL 数据库中,从而允许在 PostgreSQL 中访问这些文件。file_fdw 扩展提供了一种简单的方法来将文件系统中的数据集成到 PostgreSQL 中,无需复制数据或维护 ETL 流程。

file_fdw 扩展提供了以下特性:

  • 通过外部表将文件系统中的文件映射到 PostgreSQL 数据库中。
  • 支持连接到多种文件格式,例如 CSV、JSON、XML 等。
  • 允许使用 SQL 查询和操作文件系统中的文件。
  • 支持在文件系统上创建索引和约束。
  • 提供了安全性和隔离性,可以限制对文件系统的访问权限。

使用 PostgreSQL file_fdw 扩展,可以轻松地将文件系统中的数据集成到 PostgreSQL 中,从而实现数据的统一管理和查询。例如,您可以将 CSV 文件作为外部表导入到 PostgreSQL 中,并使用 SQL 查询来访问和操作这些数据。

pg_cron

定时任务

pg_cron 是一个用于 PostgreSQL 数据库的扩展,它提供了在数据库中执行定期任务的功能。pg_cron 扩展允许您在 PostgreSQL 数据库中定义和调度基于时间的作业,并以预定的时间间隔自动执行这些作业。

pg_cron 扩展的作用包括:

  1. 定期任务调度:pg_cron 允许您在 PostgreSQL 数据库中创建定期任务,例如定时备份、数据清理、统计计算等。您可以使用类似于 cron 的语法定义作业的执行时间表。

  2. 作业管理:pg_cron 允许您创建、修改、查看和删除作业。您可以轻松管理数据库中的定期任务,而无需使用外部工具或脚本。

  3. 作业执行控制:pg_cron 提供了对作业执行的灵活控制。您可以暂停和恢复作业的执行,也可以立即执行作业而不必等待预定的执行时间。

  4. 错误处理和日志记录:pg_cron 记录作业的执行结果和状态,并提供错误处理机制。您可以查看作业的执行日志,并根据需要采取相应的措施。

使用 pg_cron 扩展,您可以在 PostgreSQL 数据库中实现自动化的定期任务管理,避免依赖外部工具和脚本。它简化了定时任务的创建和管理,并提供了灵活的调度和控制选项,以满足您的需求。

CREATE EXTENSION IF NOT EXISTS “pg_cron”;
ERROR: can only create extension in database postgres
DETAIL: Jobs must be scheduled from the database configured in cron.database_name, since the pg_cron background worker reads job descriptions from this database.
HINT: Add cron.database_name = ‘test’ in postgresql.conf to use the current database.
CONTEXT: PL/pgSQL function inline_code_block line 4 at RAISE

cron.database_name 添加需要安装插件的数据库

在 PostgreSQL 中,cron.database_name 是一个配置参数,用于指定 pg_cron 后台工作进程读取作业描述的数据库名称。这个参数的值是一个字符串,表示数据库名称。

答案是可以设置多个数据库。您可以在 cron.database_name 参数的值中指定多个数据库名称,使用逗号进行分隔。例如:

cron.database_name = 'db1, db2, db3'

上述配置将使 pg_cron 后台工作进程从数据库 db1db2db3 中读取作业描述。

请注意,每个数据库都必须启用了 pg_cron 扩展,并在其中定义了作业。否则,即使配置了多个数据库名称,pg_cron 后台工作进程也无法读取和执行作业。

另外,请确保在修改 PostgreSQL 配置文件后重新加载配置使其生效。可以使用 pg_ctl 命令或 PostgreSQL 的重新启动来实现。

citus

Citus 是一个开源的 PostgreSQL 扩展,它旨在为 PostgreSQL 提供水平扩展能力和分布式数据库功能。它使得在大规模数据集上进行并行查询和分布式数据处理变得更加容易。

以下是 Citus 的一些主要特性和功能:

  1. 水平扩展:Citus 允许将 PostgreSQL 扩展到多个节点,从而实现数据的水平分片和分布式存储。通过将数据分布在多个节点上,可以实现高度可伸缩性和高吞吐量。

  2. 分布式查询:Citus 提供了分布式查询引擎,可以将查询计划并行执行在多个节点上。这样可以加快查询速度并减少响应时间。

  3. 分布式事务:Citus 支持分布式事务处理,使得在分布式环境中维护数据的一致性和完整性变得更加容易。它提供了事务管理和并发控制机制,确保事务的原子性、一致性、隔离性和持久性。

  4. 扩展性和灵活性:Citus 可以根据需要动态添加或删除节点,以适应不断增长的数据和负载。它还提供了灵活的数据分片策略和查询路由机制,以便根据应用程序的需求进行优化。

  5. PostgreSQL 兼容性:Citus 是以 PostgreSQL 为基础开发的扩展,因此保留了 PostgreSQL 的兼容性和丰富的功能集。您可以继续使用 PostgreSQL 的各种功能,如索引、触发器、视图和存储过程。

  6. 简化的管理和开发:Citus 提供了一组工具和命令,用于管理分布式集群和执行分布式查询。它还提供了用于数据分片和迁移的工具,以及用于监控和调优的仪表板。

Citus 是一个强大的工具,适用于需要处理大规模数据和高并发负载的应用程序。它可以帮助提高查询性能、扩展性和可用性,并简化分布式数据库的管理和开发。

CREATE EXTENSION IF NOT EXISTS “citus”;
ERROR: Citus can only be loaded via shared_preload_libraries
HINT: Add citus to shared_preload_libraries configuration variable in postgresql.conf in master and workers. Note that citus should be at the beginning of shared_preload_libraries.

shared_preload_libraries = 'citus,pg_stat_statements,pgaudit,pg_cron'

必须要放在第一个!否则会导致数据无法启动
2023-05-25 12:21:21.419 CST [1132] LOG: pgaudit extension initialized
2023-05-25 12:21:21.424 CST [1132] FATAL: Citus has to be loaded first
2023-05-25 12:21:21.424 CST [1132] HINT: Place citus at the beginning of shared_preload_libraries.
2023-05-25 12:21:21.425 CST [1132] LOG: database system is shut down

pg_trgm

pg_trgm是PostgreSQL数据库中的一个扩展模块,用于实现基于n-gram的文本匹配和相似度计算。该扩展模块提供了一种有效的方法来处理文本数据的模糊匹配和相似性搜索。

以下是一些关于pg_trgm扩展的说明:

  1. 三元组(trigram):pg_trgm扩展使用三元组(trigram)作为基本单元来表示文本。三元组是由三个连续字符组成的字符串片段。例如,对于字符串"OpenAI",生成的三元组包括"Ope",“pen”,“enA"和"nAI”。

  2. 文本索引:通过创建基于pg_trgm的文本索引,可以实现模糊匹配和相似度搜索。该索引存储了文本中所有可能的三元组,并为其建立了索引,以便可以快速进行模糊匹配和相似性计算。

  3. 模糊匹配:使用pg_trgm扩展,可以进行模糊匹配,即查找与给定模式相似的文本。例如,可以使用pg_trgm来查找与单词"apple"相似的其他单词,如"aple"或"appple"。

  4. 相似度计算:pg_trgm还提供了计算两个文本之间相似度的函数。可以使用这些函数来评估文本之间的相似程度,例如计算两个字符串之间的相似度分数。

pg_trgm扩展提供了一种灵活和高效的方式来处理模糊匹配和相似性搜索,尤其在处理大量文本数据时非常有用。可以通过在PostgreSQL中启用和使用pg_trgm扩展来利用这些功能。

uuid-ossp

uuid-ossp是PostgreSQL数据库中的一个扩展模块,用于生成和操作UUID(通用唯一标识符)。UUID是一种标准的128位标识符,用于在分布式系统中唯一地标识实体。

以下是一些关于uuid-ossp扩展的说明:

  1. UUID生成:uuid-ossp扩展提供了函数来生成不同类型的UUID。其中包括使用随机算法生成的版本4 UUID、使用命名空间和名称生成的版本3和版本5 UUID,以及使用MAC地址和时间戳生成的版本1 UUID。

  2. UUID数据类型:uuid-ossp扩展还引入了UUID数据类型,允许在数据库中存储和处理UUID值。UUID数据类型在语法上与其他基本数据类型类似,并提供了一些函数和操作符用于UUID之间的比较、操作和转换。

  3. UUID索引:通过在UUID列上创建索引,可以高效地检索和查询UUID值。uuid-ossp扩展支持在UUID列上创建B-tree索引,以加速UUID值的查找。

  4. UUID操作函数:uuid-ossp扩展还提供了一些函数,用于在UUID值之间执行各种操作。例如,可以比较两个UUID值的大小,提取UUID的组成部分,将UUID转换为字符串表示等。

使用uuid-ossp扩展可以方便地生成、存储和操作UUID值,特别适用于需要在分布式系统中唯一标识实体的场景,如数据库主键、标识符或跟踪日志等。

要使用uuid-ossp扩展,需要在PostgreSQL中启用该扩展。可以使用CREATE EXTENSION语句来启用uuid-ossp扩展,并通过在查询中调用相关函数来使用其提供的功能。

oracle_fdw

Oracle Foreign Data Wrapper (oracle_fdw) 是一个PostgreSQL扩展,它允许在PostgreSQL数据库中访问和查询Oracle数据库中的数据。它通过创建外部表来实现与Oracle数据库的连接和数据交互。

下面是oracle_fdw的一些说明和特点:

  1. 安装:在使用oracle_fdw之前,您需要将其安装为PostgreSQL的扩展。安装方法包括从源代码编译、使用包管理器安装或使用预编译的二进制文件安装。

  2. 配置:安装完成后,需要进行一些配置步骤。这些配置包括创建外部服务器、创建用户和用户映射,并定义外部表的结构。

  3. 外部服务器:通过创建外部服务器,您可以定义与Oracle数据库的连接信息,包括主机地址、端口号和数据库名称。这样,PostgreSQL就能够通过外部服务器与Oracle数据库建立连接。

  4. 用户和用户映射:在创建外部服务器后,您需要创建一个PostgreSQL用户,并将其与外部服务器上的Oracle用户进行映射。这样可以确保在查询执行时,正确的用户凭据被传递给Oracle数据库。

  5. 外部表:一旦外部服务器和用户映射配置完成,您可以创建外部表来映射Oracle数据库中的表。外部表的结构与Oracle表的结构相匹配,并且您可以在PostgreSQL中对这些外部表执行查询和操作。

  6. 查询和操作:使用oracle_fdw,您可以在PostgreSQL中对Oracle数据库中的数据执行查询、插入、更新和删除操作。这样,您可以方便地在PostgreSQL中访问和处理Oracle数据库的数据,实现数据集成和应用程序的开发。

需要注意的是,使用oracle_fdw连接到Oracle数据库需要确保网络连接可用、具有正确的数据库连接信息和凭据,并且PostgreSQL数据库具有足够的权限来执行这些操作。

总之,oracle_fdw是一个有用的工具,它扩展了PostgreSQL的功能,使其能够与Oracle数据库进行集成,并实现数据的共享和查询。

实操

根据您提供的信息,这些步骤是在PostgreSQL中安装和配置Oracle Foreign Data Wrapper (oracle_fdw) 插件以实现与Oracle数据库的连接。以下是对每个步骤的解释:

  1. 安装插件:
create extension oracle_fdw;

这条命令用于在PostgreSQL中创建并启用oracle_fdw扩展。这样做后,您就可以在PostgreSQL中使用oracle_fdw功能。

  1. 创建到Oracle的服务器:
create server to_ora_bpx foreign data wrapper oracle_fdw options (dbserver '//x.x.x.x:1521/orcl');

这条命令创建了一个名为to_ora_bpx的外部服务器,它使用oracle_fdw作为数据包装器,并指定了连接到Oracle数据库的连接信息。这里的dbserver参数指定了Oracle数据库的连接地址。

  1. 创建用户:
create user oracle_fdw superuser password 'oracle';

这条命令创建了一个名为oracle_fdw的用户,并分配了超级用户权限。该用户用于在PostgreSQL中执行与Oracle数据库相关的操作。

  1. 映射用户:
create user mapping for oracle_fdw server to_ora_bpx options (user 'bpx', password 'bpx');

这条命令创建了一个用户映射,将PostgreSQL中的oracle_fdw用户与外部服务器to_ora_bpx上的Oracle用户BPX进行映射。这样可以确保在执行查询时,正确的用户凭据被传递给Oracle数据库。

  1. 创建外部表映射Oracle中的表:
create foreign table oracle_test (id int, name varchar) server to_ora_bpx options (schema 'BPX', table 'BPX');

这条命令创建了一个外部表oracle_test,它映射了Oracle数据库中的BPX模式下的BPX表。外部表允许在PostgreSQL中访问Oracle数据库中的数据。

请注意,在执行这些步骤之前,您需要确保已经安装了oracle_fdw插件,并且PostgreSQL数据库具有足够的权限来执行这些操作。此外,还需要提供正确的连接信息和凭据,以便成功连接到Oracle数据库。

如果您遇到任何问题或需要进一步的帮助,请提供详细的错误消息或问题描述。

psql -h x.x.x.x -p 1014 -U oracle_fdw -d test
select * from oracle_test ;

timescaledb

timescaledb
TimescaleDB vs. PostgreSQL

1. 修改实例配置文件的shared_preload_libraries参数,增加 timescaledb 值,如 shared_preload_libraries = 'pgaudit' => shared_preload_libraries = 'pgaudit,timescaledb'
2. 重启数据库使配置生效
3. 连接数据库执行查询启用插件:CREATE EXTENSION timescaledb;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

pg_profile

下载链接
https://github.com/zubkov-andrei/pg_profile/issues

使用@1

使用@2

select * from take_sample();

select show_samples();

psql -d bpx -qtc "select public.get_report(1,2)"  --output /tmp/awr_report_postgres_1_2.html

orafce

1、准备依赖

mv /etc/yum.repos.d/pgdg-redhat-all.repo /root
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf install -y --enablerepo=powertools postgresql14-devel unzip redhat-rpm-config openssl-devel
dnf reinstall gcc

2、下载插件安装包
https://github.com/orafce/orafce

3、安装 orafce

unzip orafce-master.zip
cd orafce-master
make install 

在这里插入图片描述
在这里插入图片描述
使用说明

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hezuijiudexiaobai/article/details/130578426

智能推荐

软件测试流程包括哪些内容?测试方法有哪些?_测试过程管理中包含哪些过程-程序员宅基地

文章浏览阅读2.9k次,点赞8次,收藏14次。测试主要做什么?这完全都体现在测试流程中,同时测试流程是面试问题中出现频率最高的,这不仅是因为测试流程很重要,而是在面试过程中这短短的半小时到一个小时的时间,通过测试流程就可以判断出应聘者是否合适,故在测试流程中包含了测试工作的核心内容,例如需求分析,测试用例的设计,测试执行,缺陷等重要的过程。..._测试过程管理中包含哪些过程

政府数字化政务的人工智能与机器学习应用:如何提高政府工作效率-程序员宅基地

文章浏览阅读870次,点赞16次,收藏19次。1.背景介绍政府数字化政务是指政府利用数字技术、互联网、大数据、人工智能等新技术手段,对政府政务进行数字化改革,提高政府工作效率,提升政府服务质量的过程。随着人工智能(AI)和机器学习(ML)技术的快速发展,政府数字化政务中的人工智能与机器学习应用也逐渐成为政府改革的重要内容。政府数字化政务的人工智能与机器学习应用涉及多个领域,包括政策决策、政府服务、公共安全、社会治理等。在这些领域,人工...

ssm+mysql+微信小程序考研刷题平台_mysql刷题软件-程序员宅基地

文章浏览阅读219次,点赞2次,收藏4次。系统主要的用户为用户、管理员,他们的具体权限如下:用户:用户登录后可以对管理员上传的学习视频进行学习。用户可以选择题型进行练习。用户选择小程序提供的考研科目进行相关训练。用户可以进行水平测试,并且查看相关成绩用户可以进行错题集的整理管理员:管理员登录后可管理个人基本信息管理员登录后可管理个人基本信息管理员可以上传、发布考研的相关例题及其分析,并对题型进行管理管理员可以进行查看、搜索考研题目及错题情况。_mysql刷题软件

根据java代码描绘uml类图_Myeclipse8.5下JAVA代码导成UML类图-程序员宅基地

文章浏览阅读1.4k次。myelipse里有UML1和UML2两种方式,UML2功能更强大,但是两者生成过程差别不大1.建立Test工程,如下图,uml包存放uml类图package com.zz.domain;public class User {private int id;private String name;public int getId() {return id;}public void setId(int..._根据以下java代码画出类图

Flume自定义拦截器-程序员宅基地

文章浏览阅读174次。需求:一个topic包含很多个表信息,需要自动根据json字符串中的字段来写入到hive不同的表对应的路径中。发送到Kafka中的数据原本最外层原本没有pkDay和project,只有data和name。因为担心data里面会空值,所以根同事商量,让他们在最外层添加了project和pkDay字段。pkDay字段用于表的自动分区,proejct和name合起来用于自动拼接hive表的名称为 ..._flume拦截器自定义开发 kafka

java同时输入不同类型数据,Java Spring中同时访问多种不同数据库-程序员宅基地

文章浏览阅读380次。原标题:Java Spring中同时访问多种不同数据库 多样的工作要求,可以使用不同的工作方法,只要能获得结果,就不会徒劳。开发企业应用时我们常常遇到要同时访问多种不同数据库的问题,有时是必须把数据归档到某种数据仓库中,有时是要把数据变更推送到第三方数据库中。使用Spring框架时,使用单一数据库是非常容易的,但如果要同时访问多个数据库的话事件就变得复杂多了。本文以在Spring框架下开发一个Sp..._根据输入的不同连接不同的数据库

随便推点

EFT试验复位案例分析_eft电路图-程序员宅基地

文章浏览阅读3.6k次,点赞9次,收藏25次。本案例描述了晶振屏蔽以及开关电源变压器屏蔽对系统稳定工作的影响, 硬件设计时应考虑。_eft电路图

MR21更改价格_mr21 对于物料 zba89121 存在一个当前或未来标准价格-程序员宅基地

文章浏览阅读1.1k次。对于物料价格的更改,可以采取不同的手段:首先,我们来介绍MR21的方式。 需要说明的是,如果要对某一产品进行价格修改,必须满足的前提条件是: ■ 1、必须对价格生效的物料期间与对应会计期间进行开启; ■ 2、该产品在该物料期间未发生物料移动。执行MR21,例如更改物料1180051689的价格为20000元,系统提示“对于物料1180051689 存在一个当前或未来标准价格”,这是因为已经对该..._mr21 对于物料 zba89121 存在一个当前或未来标准价格

联想启天m420刷bios_联想启天M420台式机怎么装win7系统(完美解决usb)-程序员宅基地

文章浏览阅读7.4k次,点赞3次,收藏13次。[文章导读]联想启天M420是一款商用台式电脑,预装的是win10系统,用户还是喜欢win7系统,该台式机采用的intel 8代i5 8500CPU,在安装安装win7时有很多问题,在安装win7时要在BIOS中“关闭安全启动”和“开启兼容模式”,并且安装过程中usb不能使用,要采用联想win7新机型安装,且默认采用的uefi+gpt模式,要改成legacy+mbr引导,那么联想启天M420台式电..._启天m420刷bios

冗余数据一致性,到底如何保证?-程序员宅基地

文章浏览阅读2.7k次,点赞2次,收藏9次。一,为什么要冗余数据互联网数据量很大的业务场景,往往数据库需要进行水平切分来降低单库数据量。水平切分会有一个patition key,通过patition key的查询能..._保证冗余性

java 打包插件-程序员宅基地

文章浏览阅读88次。是时候闭环Java应用了 原创 2016-08-16 张开涛 你曾经因为部署/上线而痛苦吗?你曾经因为要去运维那改配置而烦恼吗?在我接触过的一些部署/上线方式中,曾碰到过以下一些问题:1、程序代码和依赖都是人工上传到服务器,不是通过工具进行部署和发布;2、目录结构没有规范,jar启动时通过-classpath任意指定;3、fat jar,把程序代码、配置文件和依赖jar都打包到一个jar中,改配置..._那么需要把上面的defaultjavatyperesolver类打包到插件中

VS2015,Microsoft Visual Studio 2005,SourceInsight4.0使用经验,Visual AssistX番茄助手的安装与基本使用9_番茄助手颜色-程序员宅基地

文章浏览阅读909次。1.得下载一个番茄插件,按alt+g才可以有函数跳转功能。2.不安装番茄插件,按F12也可以有跳转功能。3.进公司的VS工程是D:\sync\build\win路径,.sln才是打开工程的方式,一个是VS2005打开的,一个是VS2013打开的。4.公司库里的线程接口,在CmThreadManager.h 里,这个里面是我们的线程库,可以直接拿来用。CreateUserTaskThre..._番茄助手颜色

推荐文章

热门文章

相关标签