PostgreSQL рдбреЗрдЯрд╛ рдмреИрдХрдЕрдк рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЙрди рд╕рднреА рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдмрд░ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рд▓реЗрдХрд┐рди рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рддрдХрдиреАрдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдмреИрдХрдЕрдк рд░рдгрдиреАрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдПрдХ рдкреНрд░рднрд╛рд╡реА рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╕рднреА рддрд░реАрдХреЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рдЬреЛ рдЖрдкрдХреЛ рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рдмрдЪрд╛рдиреЗ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдореГрдд рддрдВрддреНрд░рд┐рдХрд╛ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред
рдЗрдирдкреБрдЯ: PostgreSQL 9.2 рд╕рд░реНрд╡рд░, рдЖрдзрд╛рд░ рдЖрдХрд╛рд░> 100Gbред
рдмреИрдХрдЕрдк рд╡рд┐рдХрд▓реНрдк
рдореИрдиреБрдЕрд▓ рд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░, рдбреЗрдЯрд╛ рдмреИрдХрдЕрдк рдХреЗ 3 рддрд░реАрдХреЗ рд╣реИрдВ:
- рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреГрддрд┐
- рдбреЗрдЯрд╛рдмреЗрд╕ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ
- SQL рдбрдВрдк
рдЙрди рд╕рднреА рдХреА рдЕрдкрдиреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрди рд╕рднреА рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреГрддрд┐
рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ
рдпрд╣рд╛рдВ рдФрд░
рдпрд╣рд╛рдВ рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╡рд░реНрдгрд┐рдд
рд╣реИ ред рдЗрд╕ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛ рдЕрд░реНрде рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рдПрдХ рджрд╛рд╕ рдХреЛ рдПрдХ рдЬрд╛рджреВрдЧрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдкреВрд░реА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рджрд╛рд╕ рдкрд░ рд╣реИред
рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреГрддрд┐ рдореЗрдВ, рд╡рд╛рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдмрд╣реБрдд рдорд╣рддреНрд╡ рд╣реИред рдпреЗ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬрд╣рд╛рдВ рд╕реЗ рджрд╛рд╕ рд▓рд╛рдкрддрд╛ рдбреЗрдЯрд╛ рдХреЛ рдЦреАрдВрдЪрддрд╛ рд╣реИ, рдЕрдЧрд░ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдкрд░ рдХреЛрдИ рдЕрдзрд┐рдХ рдирд╣реАрдВ рдмрдЪрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЗрди рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ 8 рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред
рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╡рд╛рд▓реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдорд╛рд╕реНрдЯрд░ (рд▓реЗрдЦрди рдХреЗ рд▓рд┐рдП) рдФрд░ рджрд╛рд╕ (рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП) рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ glusterFS рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЖрдо рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдИ, рдЬреЛ рджреЛрдиреЛрдВ рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдореБрд╣рд┐рдо рдХреА рдЧрдИ рдереАред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╣рд╛рд╕рд┐рд▓ рдХреА рдЬрд╛рддреА рд╣реИ (рдпрджрд┐ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рджрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╡рд╛рд▓-рдлрд╛рдЗрд▓реЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреА) рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдЕрддрд┐рд░рд┐рдХреНрдд рджрд╛рд╕реЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рдЗрди рдЪрд▓рдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдиреАрдЪреЗ рдкрдВрдХреНрддрд┐: рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреГрддрд┐ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреА рд╡рд┐рдлрд▓рддрд╛рдУрдВ рд╕реЗ рд░рдХреНрд╖рд╛ рдХрд░реЗрдЧреА, рдЬрдмрдХрд┐ рд▓рдЧрднрдЧ рдХреЛрдИ рдбреЗрдЯрд╛ рдЦреЛ рдирд╣реАрдВ рдЬрд╛рдПрдЧрд╛ред
рдбреЗрдЯрд╛рдмреЗрд╕ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ
рд╣рдордиреЗ рд╕рд░реНрд╡рд░ рдХреНрд░реИрд╢ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд▓рд┐рдпрд╛ рд╣реИ, рдЕрдм рд╣рдо рдорд╛рдирд╡ рдХрд╛рд░рдХ рд╕реЗ рдирд┐рдкрдЯреЗрдВрдЧреЗ, рдЬрдм рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдбреЗрдЯрд╛, рдпрд╛ рдЯреЗрдмрд▓ рд╕реНрд╡рдпрдВ рдпрд╛ рд╕реНрдирд╛рдирд╛рдЧрд╛рд░ рдХрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдмреИрдХрдЕрдк рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдПрдХ рдФрд░ рдкреНрд░рддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдРрд╕реА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдмрдирд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ - рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдбрдВрдк рдХрд░реЗрдВ рдпрд╛ рд╕рдВрдкреВрд░реНрдг рдбреЗрдЯрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдХреЙрдкреА рдХрд░реЗрдВред рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╣рдордиреЗ рдкрд╣рд▓рд╛ рд╡рд┐рдХрд▓реНрдк рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ - рдбреЗрдЯрд╛рдмреЗрд╕ рдбрдВрдк рдПрдХ рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдПред рд▓реЗрдХрд┐рди рдбрдВрдк рдореЗрдВ рдПрдХ рдмрдбрд╝рд╛ рдорд╛рдЗрдирд╕ рд╣реИ -
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рддреА рд╣реИ, рдФрд░ рдЕрдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рдЕрдм рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИрдВ (
UPD : pg_dump рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдмреНрд▓реЙрдХ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдПрдХ рдмрдбрд╝рд╛ рднрд╛рд░ рдмрдирд╛рддрд╛ рд╣реИ)ред рдмрдбрд╝реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рдЕрдм, рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдмреИрдХрдЕрдк рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо pg_basebackup рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╕рднреА рдбреЗрдЯрд╛рдмреЗрд╕ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдмрдбрд╝реЗ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИред
рд╣рдо 4 рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдкреНрд░рддрд┐рдпрд╛рдВ рдФрд░ 6 рдорд╛рд╕рд┐рдХ рд░рдЦрддреЗ рд╣реИрдВред рдкреНрд░рддрд┐рдпрд╛рдВ рд╕рдорд╛рди GlusterFS рднрдВрдбрд╛рд░рдг рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИрдВред рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкреНрд░рддрд┐рдпрд╛рдВ рдмрдирд╛рддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдЖрддреНрдордирд┐рд░реНрднрд░ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН, рд╡реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд╛рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛, рддреИрдирд╛рддреА рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рдЖрдзрд╛рд░ рддреИрдирд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддреАрди рдорд╣реАрдиреЗ рдкрд╣рд▓реЗред
рдпрд╣ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдХрд┐ pg_basebackup рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рдЧреБрд▓рд╛рдо рд╕рд░реНрд╡рд░ рдкрд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд), рдЗрд╕рд▓рд┐рдП рдмреИрдХрдЕрдк рдмрдирд╛рдиреЗ рд╕реЗ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреЛ рд▓реЛрдб рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдЧреБрд▓рд╛рдо рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП pg_basebackup рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ WAL рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, postgresql.conf рдореЗрдВ рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рдХрд░реЗрдВ:
wal_level = hot_standby wal_keep_segments = 1000
1000 рд╡рд╛рд▓ рдлрд╛рдЗрд▓реНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬреЛ рдбрд┐рд╕реНрдХ рдкрд░ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдПрд╕рдХреНрдпреВрдПрд▓ рд╕реНрдЯреЛрд░ рдХрд░рддреА рд╣реИред рдЖрдкрдХреЛ рдЗрд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдШрдЯрд╛рдирд╛ рдпрд╛ рдмрдврд╝рд╛рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ pg_basebackup рдмрд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдВрдЧреНрд░рд╣ рдХреЗ рджреМрд░рд╛рди, рдХреБрдЫ рдбреЗрдЯрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрджрд▓ рдЬрд╛рдПрдЧрд╛, рдФрд░ PostgreSQL рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдХреЗ рджреМрд░рд╛рди рдЗрд╕реЗ рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдЦреАрдВрдЪ рд▓реЗрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, pg_basebackup рд╕рднреА рдореМрдЬреВрджрд╛ рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рдм рдХреБрдЫ рд╕рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рд╕рднреА рд╡рд╛рд▓ рдлрд╛рдЗрд▓реЗрдВ рдкрд▓ рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВ pg_basebackup рдкреВрд░рд╛ рд╣реЛрдиреЗ рддрдХ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдВред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣рдЯрд╛ рджреА рдЬрд╛рддреА рд╣реИрдВ, рддреЛ pg_basebackup рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред Wal_keep_seolutions рдХреА рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЖрдиреБрднрд╡рд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдПрдХ рдмреИрдХрдЕрдк рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде pg_basebackup рдЪрд▓рд╛рддреЗ рд╣реИрдВ:
/usr/bin/pg_basebackup -U postgres -D /tmp/pg_backup -Ft -z -Xf
-F рд╣рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдПрдХ рдлрд╛рдЗрд▓ рдореЗрдВ рд╕рдм рдХреБрдЫ рдмрдЪрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, -z - рдЬрд┐рд╕реЗ рд╣рдореЗрдВ рдЖрд░реНрдХрд╛рдЗрд╡ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, -Xf - рдЖрд░реНрдХ рдореЗрдВ рд╡рд╛рд▓ рдлрд╛рдЗрд▓реНрд╕ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдП рдмрд┐рдирд╛, рдмреИрдХрдЕрдк рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдЬ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЗрд╕реЗ рд▓рд╛рдкрддрд╛ рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рд╣рдо рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рд╢рдирд┐рд╡рд╛рд░ рдХреЛ рдореБрдХреБрдЯ рдкрд░ рдмреИрдХрдЕрдк рдХрд░рддреЗ рд╣реИрдВ:
рдЗрд╕ рдкреНрд░рдХрд╛рд░, 3 рдкреНрд░рддреНрдпрдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ: рд╕рдкреНрддрд╛рд╣ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде, рдорд╣реАрдиреЗ рдХрд╛ рдирд╛рдо рдФрд░ рдЕрдВрддрд┐рдо рд╕реЗрд╡рд╛ рдХреЗ рд╕рд╛рдеред
рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╕реЗ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ PostgreSQL рдХреЛ рд░реЛрдХрдиреЗ, рдкреБрд░рд╛рдиреЗ рдбреЗрдЯрд╛ рдХреЛ рд╣рдЯрд╛рдиреЗ (рдпрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд) рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╡рд╣рд╛рдВ рд╕рдВрдЧреНрд░рд╣ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рдХрд░реЗрдВред рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рд╣реИред рдЪреВрдБрдХрд┐ рд╣рдордиреЗ рджрд╛рд╕ рдкрд░ pg_basebackup рдХрд┐рдпрд╛ рдерд╛, рд░рд┐рдХрд╡рд░реА.рдХреЙрдиреНрдлрд╝ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдЕрдирдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рд╣рдо рдбреЗрдЯрд╛ рдХреЛ рдЕрдВрддрд┐рдо рд╕рдВрднрд╡ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, Postgres рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реНрдерд╛рди рд╕реЗ рд╡рд╛рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЦреАрдВрдЪрдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдЧрд╛ редconfред рдпрджрд┐ рд╣рдо рдЕрдВрддрд┐рдо рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдмреИрдХрдЕрдк рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╡рд╛рд▓ рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрдВрдЧреА (рдЪреВрдВрдХрд┐ рд╣рдо рдЙрдиреНрд╣реЗрдВ 8 рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ), рдФрд░ рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЕрдВрддрд┐рдо рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рд╣рдореЗрдВ рдмреИрдХрдЕрдк рдмрдирд╛рддреЗ рд╕рдордп рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдореЗрдВ Recovery.conf рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛ред
рд╣рдо рдкрд░реАрдХреНрд╖рдг рдкреНрд░рдпреЛрдЬрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдмреИрдХрдЕрдк рдкреНрд░рддрд┐рдпреЛрдВ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдПрдХ рдХреЗ рд▓рд┐рдП, рдПрдХ рдмреИрдХрдЕрдк рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рднреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИред
Base.last.tar.gz рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдВрддрд┐рдо рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рд╣рд░ рд░рд╛рдд рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдмрд╣рд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
рдирд┐рдЪрд▓рд╛ рд░реЗрдЦрд╛: рдлрд╝рд╛рдЗрд▓ рд╕реНрддрд░ рдкрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдирд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреНрд░реИрд╢ рдФрд░ рдорд╛рдирд╡реАрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рд░рдХреНрд╖рд╛ рдХрд░реЗрдЧрд╛ред рдХрд┐рд╕реА рдмреИрдХрдЕрдк рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп, рдирд╡реАрдирддрдо рдбреЗрдЯрд╛ рдЦреЛ рдЬрд╛рдПрдЧрд╛ред
SQL рдбрдВрдк
рд╣рдо рдПрдХ рдмрдбрд╝реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдПрдХ рдкреВрд░реНрдг SQL рдбрдВрдк рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдЙрди рдЯреЗрдмрд▓ рдХреЛ рдбрдВрдк рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдмрджрд▓ рдЧрдП рд╣реИрдВ, 1 рдЯреЗрдмрд▓ - 1 рдлрд╝рд╛рдЗрд▓ред рдпрд╣ рдЖрдкрдХреЛ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдмрд╣реБрдд рдЬрд▓реНрджреА рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдХреЗрд╡рд▓ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рджреВрд╖рд┐рдд рд╣реИ - рдмреИрдХрдЕрдк рд╕реЗ рдкреВрд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
PostgreSQL рд╣рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдБрдХрдбрд╝реЗ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рд░ рд░рд╛рдд рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реА рддрд╛рд▓рд┐рдХрд╛рдПрдБ рдмрджрд▓реА рдЧрдИ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдбрдВрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рдо рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ:
select schemaname,relname,n_tup_ins+n_tup_upd+n_tup_del from pg_stat_user_tables ;
рдирд┐рдЪрд▓рд╛ рд░реЗрдЦрд╛: рдПрд╕рдХреНрдпреВрдПрд▓ рдбрдВрдк рдЫреЛрдЯреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдбрдВрдк рдХреЗ рд╕рдордп рдбреЗрдЯрд╛ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реЛрдЧрд╛ред
рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдбреЗрдЯрд╛ рд╣рд╛рдирд┐ рд╕реЗ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ PostgreSQL рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЪреВрдВрдХрд┐ рдпрд╣ рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред