首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

数据库PostrageSQL-备份和恢复

虽然过程相当简单,清晰地理解其底层技术和假设是非常重要的。...我们后面将看到这样做有什么用处。 尽管上述命令会创建一个文本文件,pg_dump可以用其他格式创建文件以支持并行 和细粒度的对象恢复控制。...由pg_dump创建的备份在内部是一致的, 也就是说,转储表现了pg_dump开始运行时刻的数据库快照,且在pg_dump运行过程中发生的更新将不会被转储。...psql支持类似pg_dump的选项用以指定要连接的数据库服务器和要使用的用户名。参阅psql的手册获 取更多信息。 非文本文件转储可以使用pg_restore工具来恢复。...如果它们不存在,那么恢复过程将无法将对象创建成具有原来的所属关系以及权限(有时候这就是你所需要的,通常不是)。 默认情况下,psql脚本在遇到一个SQL错误后会继续执行。

2K10

PostgreSQL 14中连接参数target_session_attrs增强

背景 很多PG客户端程序使用C客户端libpq库访问数据库。libpq提供了一系列函数,允许连接PG后台服务并将查询传送过去,同时还可以接收查询返回的结果。...通过libpq,PG支持一个连接字符串,指定多个host+port。依次尝试每个host+port直到成功建立连接PG10中引入指定多个hosts的功能。...支持下面的参数值: target_session_attrs值 意义 any(默认值) 可以接受所有连接 read-write 默认情况下,可接受的读写事务中仅可以接受一个连接PG11开始,Fujitsu...如果hosts列表中没有standby server,那么尝试“any”模式 注意,由于default_transaction_read_only设置成on,PG的server可以是只读但不能是hot...连接性能的提升 target_session_attrs增加了新值,当连接PG14或之后的版本时,性能会有所提升。

1.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

PostgreSQL 14和SCRAM认证的改变--应该迁移到SCRAM?

最近,一些PG使用者反馈他们切换到PG14后,遇到了一些连接错误。...那些选择使用的人知道如何使用,PG社区多年来一直不愿将其作为主要方法,因为许多客户端/应用程序还没准备好进行SCRAM身份认证。这在PG14中发生变化。随着PG9.6不再支持,情况正在发生变化。...随着时间推移,改变了什么 Channel Binding 身份验证只是安全通信的一部分。身份验证后,中间的恶意服务器可能会接管并欺骗客户端连接。...容易出现字典攻击和泄露用户名密码hash问题。 3、新的scram认证是否带来了复杂性?连接是否需要更长时间? Scram的有线协议非常有效,并且不知道会导致连接时间下降。...应该关注什么以及如何做 从自动化/部署脚本、工具、应用程序连接连接池开始的任何东西都可能会中断。将此更改延迟到PG14的主要论据之一是,最旧的支持版本9.6即将停止支持。

1.4K30

进阶数据库系列(二十五):PostgreSQL 数据库日常运维管理

restart -mf touch /usr/local/pgsql/backup_in_progress # 开始基础备份,可以在代码里连接数据库执行 psql -c "select pg_start_backup...}.tar $PGDATA # 结束备份,可以在代码里连接数据库执行 psql -c "select pg_stop_backup();" # 停止wal日志备份 rm /usr/local/pgsql...{crt,key} #修改pg_hba.conf vi $PGDATA/pg_hba.conf #所有远程连接都通过ssl连接 hostssl all postgres...(); #重新登录 \q psql #查看当前连接信息 \conninfo #查看所有连接信息 select pg_ssl.pid ,pg_ssl.ssl ,pg_ssl.version...不被计数; count(distinct (col1,col2,…) ) 计算多列的唯一值时,NULL会被计数,同时NULL与NULL会被认为是想同的; NULL是UNKNOWN的意思,也就是不知道是什么

65720

进阶数据库系列(二十六):PostgreSQL 数据库监控管理

这么做的目的是让持有用户查询的服务器进程应该很少或者几乎不等待写动作的发生,因为后端写进程会做这件事情。这样的安排同样也减少了检查点造成的性能下降。...错误报告和日志 数据库管理员也许想知道错误报告和日志记录在什么地方,什么时间开始记录的和记录了什么等等。...select count(*) from pg_stat_activity ; 演示,打印每秒的总连接数。...psql select count(*) from pg_stat_activity ; \watch 1 N秒内新建的连接数 主要看趋势,直接与业务量挂钩, 如果突发大量连接,...如果很多,需要排查业务为什么未及时提交。 select count(*) from pg_prepared_xacts where now() - prepared > interval '?

88220

【DB宝91】PG高可用之主从流复制+keepalived 的高可用

:27 postgresql.conf -rw------- 1 pg13 postgres 0 Feb 10 16:27 standby.signal 在PG12之前,-R备份结束之后会自动生成...因此,可以看到谁处于连接状态,在做什么任务。pg_stat_replication也是检查slave是否处于连接状态的一个好方法。...• backend_start: 它告诉我们slave什么时间创建了流连接。 • state: 此列告诉我们数据的连接状态。如果事情按计划进行,它应该包含流信息。...-- 使用VIP连接 psql -h 172.72.6.8 -U postgres -p 5433 -c 'SELECT inet_server_addr(),pg_is_in_recovery()'...在主库关闭后,检测3次,即30秒之后发生切换,此时备库切换为主库,VIP也在此时漂移到备库: [root@lhrpg67 /]# ifconfig eth0: flags=4163<UP,BROADCAST

2.1K10

数据库PostrageSQL-启动数据库服务器

如果这个环境变量也没有提供则导致失败。 通常最好在后台启动postgres。...通过检查服务器日志或使用手工启动的方法(不做标准输出或标准错误的重定向), 就可以看到出现什么错误消息。下面我们详细地解释一些最常见的错误消息。...和上面一样,你可以通过减少允许的连接数(max_connections)来绕开这个限制,最终你还是会希望提高内核的限制。...客户端连接问题 尽管可能在客户端出现的错误情况范围宽广而且是应用相关的,的确有几种与服务器的启动方式直接相关。除了下面提到的几种错误之外的问题都应该在相应的客户端应用文档中。...上面的情况看起来是发生在尝试 TCP/IP 通信时。常见的错误是忘记把服务器配置成允许 TCP/IP 连接

4.2K20

Postgres 源码学习 1—Postgres 源码编译和 debug

su 安装依赖 安装 Postgres 编译所需的依赖(这里是摘取了 Greenplum 的安装依赖,可能包含了一些没必要安装的,肯定是涵盖了 Postgres 需要的依赖,所以全部安装上也没啥问题...,如果嫌麻烦,可以加入到 $HOME 目录中的 .bashrc 或者 .zshrc(取决于你的 sh 是什么),这样下次登录就不用重复设置了。...pg_ctl -D pg-data start 启动之后,可以查看 postgres 的进程状态。...也可以通过 psql 命令连接到数据库中: psql postgres 如何 Debug 有了源码环境之后,其实 Debug 调试就比较简单。...使用 psql 登录之后,后台会启动一个工作进程来服务于这个客户端的请求,可以通过 pg_backend_pid() 方法查看进程 id。

11010

OushuDB入门(三)——高可用篇

客户端连接到主master节点并且查询只能在主master节点上执行。从master节点保持与主master节点的实时同步,这是通过将预写日志从主复制到从实现的。 3....当这些表在主节点上发生更改后(如DDL所引起),将自动同步到备用主节点,使其保持最新状态。如果主节点发生故障,管理员可以激活备用主节点。...当客户端使用jdbc连接OushuDB时,如果没有配置虚拟IP地址,建议同时将主节点地址与备用主节点地址加入到 jdbc连接的url地址中,以便客户端程序在OushuDB集群主节点发生切换时仍保持可用。...登录到备用主节点并激活它,之后备用主节点成为了OushuDB的主master。...使用以下查询检查活动连接: [gpadmin@hdp3 ~]$ psql -c "select pg_terminate_backend(procpid) from pg_catalog.pg_stat_activity

86220

【DB宝61】PostgreSQL使用Pgpool-II实现读写分离+负载均衡

连接池 Pgpool-II保存与PostgreSQL服务器的连接,并在具有相同属性(即用户名,数据库,协议版本)的新连接进入时重用它们。它减少了连接开销,并提高了系统的整体吞吐量。...限制超出连接 PostgreSQL的最大并发连接数有限制,连接在这么多连接后被拒绝。但是,设置最大连接数会增加资源消耗并影响系统性能。...pgpool-II对最大连接数也有限制,额外连接将排队,而不是立即返回错误。 看家狗 Watchdog可以协调多个Pgpool-II,创建一个强大的集群系统,避免单点故障或脑裂。...如果活动Pgpool-II发生故障,则可以将备用Pgpool-II提升为活动状态,并接管虚拟IP。 在内存查询缓存中 在内存中查询缓存允许保存一对SELECT语句及其结果。...vi进入列操作:Ctrl + v 进入块选择模式,然后移动光标选中你要注释的行,再按大写的I进入行首插入模式,输入注释符号如 // 或 #,输入完毕之后,按两下ESC,Vim会自动将你选中的所有行首都加上注释

2.5K40

PostgreSQL pg_catcheck 系统文件的缺失的检查员

pg_catcheck 来的检测来说明当前PG的系统文件中的文件和关系是否一一对应. ?...pg_catcheck 对于某一个数据库是可以进行相关的数据一致性的判断, 命令和psql 是类似的,如果是对于详细信息展示,也是有命令可以支持的,添加 -v 命令可以对于检查的数据库的内部信息进行一个全面的扫描...pg_catcheck本身是不能告诉你,为什么system catlog出现什么问题,何时发生的,发生的原因是什么,pg_catcheck 能告诉你的就是系统的catalog出问题了,你需要注意了 ?...在初始化的时候天剑 -k 或者 --data-checksums ,用这个功能需要注意 1 对于大型的数据库操作可能需要比较长的时间, 系统需要在关闭的状态下进行 2 对于正在复制的系统,不要轻易启动或者关闭这个参数...通过上面的命令来开启数据文件的检测 https://www.postgresql.org/docs/12/app-pgchecksums.html 具体的命令可以查看上面的连接 所以相比较危险性和功能

47810

【云原生进阶之数据库技术】第三章-PostgreSQL-管理-2.2-运维操作

\l 2.连接指定服务器上的数据库 psql -h IP地址或数据库名 -p 端口 -U 用户名 -d 数据库名 3.创建名字为mydb的数据库 CREATE DATABASE mydb 4.查看所有数据库...-bash-4.2$ pg_dumo 数据库名 > 自定义名.bak 生成的备份文件*.bak可以使用scp传输到另一台主机也可以存储在本地以供之后使用。...在默认情况下,PostgreSQL将忽略备份过程中发生的任何错误,这可能导致备份不完整,要防止这种情况,可以使用-1选项运行pg_dump命令。...这会将整个备份过程视为单个事务,将在发生错误时阻止部分备份。...创建配置文件: -bash-4.2$ pg_dumpall > pg_backup.bak 从备份还原所有数据库: -bash-4.2$ psql -f pg_backup.bak postgres

10410
领券