我通过引用https://opensourcedbms.com/dbms/how-to-do-point-in-time-recovery-with-postgresql-9-2-pitr-3/网站执行PITR的一些步骤。
我想知道pg_basebackup实际上做了什么?我想知道,Postgres做了什么?有时我注意到在{pg_xlog目录中创建了000000010000000000000006.000000D0.backup
个文件。其内容如下:
START WAL LOCATION: 0/60000D0 (file 000000010000000000000006)
STOP WAL LOCATION: 0/60001D8 (file 000000010000000000000006)
CHECKPOINT LOCATION: 0/6000108
BACKUP METHOD: pg_start_backup
BACKUP FROM: master
START TIME: 2016-10-01 15:10:52 IST
LABEL: myBaseBackupByPgStartBackup
STOP TIME: 2016-10-01 15:15:42 IST
我想知道它的功能以及我们在执行pg_basebackup
时内部执行的操作?
答案 0 :(得分:2)
<小时/> 的 TL; DR; 强> PostgreSQL 是一个以标准方式保存信息的数据库。
pg_basebackup 以二进制格式备份数据(数据集群),以便您可以在以后需要时还原数据库。这与备份单个数据库的pg_dump形成对比,pg_basebackup复制整个PostgreSQL数据集群(所有数据库/表/字段/行/等)。
完整记谱法
<小时/> 那么,Postgres就是一个对象关系数据库管理系统(ORDBMS),它强调可扩展性和标准兼容性。作为数据库服务器,其主要功能是安全地存储数据,并允许在其他软件应用程序的请求下进行检索。它可以处理从小型单机应用程序到具有许多并发用户的大型面向Internet的应用程序的工作负载。&#34; -
备份&#34; pg_basebackup用于对正在运行的PostgreSQL数据库集群进行基本备份。这些都是在不影响数据库的其他客户端的情况下进行的,并且可以用于点 - 及时恢复(参见第24.3节)以及日志传送或流复制备用服务器的起点(参见第25.2节)。
pg_basebackup制作数据库群集文件的二进制副本,同时确保系统自动进入和退出备份模式。始终备份整个数据库集群;无法备份单个数据库或数据库对象。对于单个数据库备份,必须使用诸如pg_dump之类的工具。
请注意,备用数据库的在线备份存在一些限制: