PostgreSQL рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреА рд╡рд┐рдлрд▓рддрд╛: рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ?

рдирдорд╕реНрддреЗред рдЖрдЬ рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреА рдЕрдкреНрд░рд┐рдп рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдкреЛрд╕реНрдЯрдЧреНрд░реИрдЬрд┐рдпрдо 9.20 рдореЗрдВ рдореВрд▓ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреА рд╡рд┐рдлрд▓рддрд╛ред рддреЛ, рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рджреЛ рдпрд╛ рдЕрдзрд┐рдХ PostgreSQL рд╕рд░реНрд╡рд░реЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИ рдФрд░ рдПрдХ рдЙрд▓реНрдХрд╛ рдЕрдЪрд╛рдирдХ рдорд╛рд╕реНрдЯрд░ рдкрд░ рдЧрд┐рд░ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдорд╛рди рд▓реЗрдирд╛ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдорд╛рд╕реНрдЯрд░ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВред

1. рдПрдХ рдЯреНрд░рд┐рдЧрд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред


рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдиреБрдЕрд▓ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ Recovery.conf рдореЗрдВ, рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЯреНрд░рд┐рдЧрд░_рдлрд╛рдЗрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ (рдФрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ) рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ - рдЬреИрд╕реЗ рд╣реА рдЖрдк рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рдЗрд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ, PostgreSQL рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░реЗрдЧрд╛ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рддрд┐рдХреГрддрд┐) рдФрд░ рдПрдХ рдирдИ рд╕рдордпрд░реЗрдЦрд╛ рдЦреЛрд▓реЗрдВред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЯреНрд░рд┐рдЧрд░ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рдХрд╛рдЙрдВрдЯрд░ рдХреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓ рдЬрд╛рдПрдЧреА, рдФрд░ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдирд╣реАрдВ (рдХрд╣реЗрдВ - 000000010000000000000043 рд╕реЗ 000000010000000000000044 рдкрд░), рд▓реЗрдХрд┐рди рдПрдХ рдирдП рдпреБрдЧ рдХреЗ рд╕рд╛рде - (0000000 2,0000000000043 рддрдХ)ред

рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рд╕рдм рдХреБрдЫ рдордХреНрдЦреА рдкрд░ рд╣реЛрдЧрд╛ред рдХреЛрдИ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдирд╣реАрдВ рд╣реЛрдЧрд╛ (рд╣рдо рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдкрд░ рдХреЙрдиреНрдлрд┐рдЧреНрд░реЗрд╢рди рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдХрд╛ рдзреНрдпрд╛рди рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ), рд╕рднреА рдХрдиреЗрдХреНрд╢рди рд╕рд╣реЗрдЬреЗ рдЬрд╛рдПрдВрдЧреЗ - рдкреЛрд╕реНрдЯрдЧреНрд░реИрд╕реАрдХреНрдпреВрдПрд▓ рд╕рд┐рд░реНрдл рд╡рд╛рд▓рд░реЗрд╕реАрд╡реЗрдпрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╣рд░рд╛ рджреЗрдЧрд╛ рдФрд░ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рджреЗрдЧрд╛ред

рдмреБрд░реА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рдзрд┐ рдЕрдЪреНрдЫреА рд╣реИ рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рджреЛ рд╕рд░реНрд╡рд░ рд╣реИрдВ - рдПрдХ рдорд╛рд╕реНрдЯрд░ рдФрд░ рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ - рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ 3 рдпрд╛ рдЕрдзрд┐рдХ рдорд╢реАрдиреЗрдВ рд╣реИрдВ - рддреЛ рдЖрдк рдЗрд╕ рдиреЛрдб рдХреЛ рдЕрдиреНрдп рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдирдпрд╛ рдорд╛рд╕реНрдЯрд░ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдЬрдм рдЖрдк рдирдП рдорд╛рд╕реНрдЯрд░ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рдмрд╛рдВрдзрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ PostgreSQL рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╣рддрд╛ рд╣реИ:

FATAL: timeline 2 of the primary does not match recovery target timeline 1

рдЗрддрд┐рд╣рд╛рд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЦрд┐рд╕рдХрд╛рдиреЗ рдХреЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреНрд░рдпрд╛рд╕ (рдЬреЛ рдирдП рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд░рдордг рдмрд┐рдВрджреБ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ - рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реА рд╣реЛрдиреЗ рдкрд░ рд╣рд░ рдмрд╛рд░ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ) рднреА рд╡рд┐рдлрд▓ рд░рд╣реАред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдореЗрд▓рд▓рд┐рд╕реНрдЯ рдореЗрдВ рдкреНрд░рддрд┐рднрд╛рдЧреА рдПрдХ рд╣реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ - рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде, рдЕрдиреНрдп рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рддреИрдпрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (9.0 рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ - pg_start_backup / pg_stop_nup рдФрд░ rsync рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдФрд░ 9.1 рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ - pg_basebackup рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред

2. рд╡рд╕реВрд▓реА рдХреЛ рджреВрд░ рдХрд░рдирд╛


рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ, рдореИрдиреБрдЕрд▓ рдореЗрдВ рджреВрд╕рд░реА рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдорд┐рд▓рд╛ (рд╢рд╛рдпрдж рдпрд╣ рд╡рд╣рд╛рдВ рд╣реИ рдФрд░ рдореИрдВ рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╛рд╡рдзрд╛рди рдирд╣реАрдВ рдерд╛ - рдореИрдВ рдмрд╣рд╕ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕рд╣рдордд рд╣реЛрдВрдЧреЗ рдХрд┐ рдпрд╣ рд╕рд░рд▓, рддрд╛рд░реНрдХрд┐рдХ рд╣реИ рдФрд░, рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░, рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп (рдХрдо рд╕реЗ рдХрдо - рдореИрдВ рджреЛрд╣рд░рд╛рдпрд╛ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рднреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреЛрдбрд╝рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рдирд╣реАрдВ рд╣реБрдЖ):

1. рдкреВрд░реЗ рдХреНрд▓рд╕реНрдЯрд░ рд╕реЗ, рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рдкреНрд░рддрд┐рдХреГрддрд┐ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рд╣реЛрд╕реНрдЯ рдкрд░ рдХреБрдЫ рдХрд░рдХреЗ рдХрдВрд╕реЛрд▓ рд╕реЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

# ps aux|grep postg|grep rec
postgres 143 0.0 13.2 8692004 6533448 ? Ss Feb06 3:58 postgres: startup process recovering 00000001000001E500000054
postgres 2683 0.0 0.0 8699452 4044 ? Ss Feb09 0:33 postgres: wal receiver process streaming 1E5/542F9970


рдпрджрд┐ рдЖрдкрдХреЗ рдорд╛рд╕реНрдЯрд░ рдкрд░ рдЙрд▓реНрдХрд╛рдкрд┐рдВрдб рдЕрднреА рддрдХ рдирд╣реАрдВ рдЧрд┐рд░рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕реЗ рдорд┐рдирдЯ-рджрд░-рдорд┐рдирдЯ рдХреА рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдЖрдкрдХреЗ рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЗ рджреМрд░рд╛рди рдмрджрд▓ рди рдЬрд╛рдПред

2. рдЪрдпрдирд┐рдд рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░, postgresql.conf рдХреЛ рдмрджрд▓ рджреЗрдВ рддрд╛рдХрд┐ рдиреЛрдб рдПрдХ рдорд╛рд╕реНрдЯрд░ рд╣реЛ рд╕рдХреЗ (рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореИрдиреБрдЕрд▓ рд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрд░рд╛рдореАрдЯрд░ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдорд╛рди рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ):
wal_level = hot_standby
max_wal_senders = 5
wal_keep_segments = 32
archive_mode = on
archive_command = 'cp %p /path_to/archive/%f'


3. рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ pg_hba.conf:
host replication postgres 192.168.100.3/32 trust

4. рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рд╣рдЯрд╛рдПрдВред рдирдП рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ
5. рд╣рдо рдирдП рдорд╛рд╕реНрдЯрд░ рдкрд░ PostgreSQL рдХрд╛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рддреЗ рд╣реИрдВред
6. рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рджреВрд╕рд░реЗ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдкрд░ (рдПрдХ рдирдпрд╛ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ) рдФрд░ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВред

рдРрд╕реЗ рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ, рдЖрдк рджреНрд╡рд┐рдЖрдзрд╛рд░реА рд▓реЙрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЦреЛрдП рдмрд┐рдирд╛ рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрдкрд╖реНрдЯ рдХрдорд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ - рдЖрдкрдХреЛ рдкреВрд░реЗ рдХреНрд▓рд╕реНрдЯрд░ рдХреЛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреБрд░рд╛рдиреЗ рдорд╛рд╕реНрдЯрд░ рд╕реЗ рдЖрдИрдкреА рдкрддреЗ рдХреЛ рдирдП рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИ - рддреЛ рдЖрдкрдХреЛ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ)ред

рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЖрдк рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рдПрдХ рдирдпрд╛ рдорд╛рд╕реНрдЯрд░ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдмрд┐рди-рд▓реЙрдЧ рдкреЛрдЬрд┐рд╢рди, рдЬреЛ рд╕рдмрд╕реЗ рдирдИ рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдирд╡реАрдирддрдо рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЛ рдПрдХ рдорд╛рд╕реНрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рдпреБрдХреНрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рдЗрд╕реЗ рд░рд┐рдХреЙрд░реНрдб рд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдХрдиреЗрдХреНрд╢рди рд╕реЗ рдмрдВрдж рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИ), рдЗрд╕реЗ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░реЗрдВ рдЖрдк рдЕрдВрдд рдореЗрдВ рдПрдХ рдорд╛рд╕реНрдЯрд░ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдСрдкрд░реЗрд╢рди рдХрд░рддреЗ рд╣реИрдВ (рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИ - рдЖрдк рдорд╛рд╕реНрдЯрд░ рдХреЛ рджреЛ рдмрд╛рд░ рдЕрд╕рд╛рдЗрди рдХрд░рддреЗ рд╣реИрдВ - рдкрд╣рд▓реЗ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЗ рд▓рд┐рдП, рдФрд░ рдлрд┐рд░ рдмрд╛рдХреА рд╕рднреА рдХреЗ рд▓рд┐рдП)ред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рджреМрд░рд╛рди, рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╕реНрдерд╛рди рдЬрд┐рд╕реЗ рд╣рдо рдЦреЛрдЬрдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗ рдереЗ рдЬрдм рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХреБрдЫ рдЕрдм рддрдХ рдкрд┐рдЫрдбрд╝ рдЧрдП рдереЗ рдХрд┐ рдирдП рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреЛ рдЕрдм XLOG рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдиреА рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдореЗрдВ рдЗрд╕рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯрд╛ рдЬрд╛рдП, рдпрд╣ рдмрддрд╛рдпрд╛ - рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рдЖрдк рд╕рдВрдЧреНрд░рд╣ рдХреЗ рджреМрд░рд╛рди рдХрд┐рд╕реА рдмреИрдХрдЕрдк рд╕рд░реНрд╡рд░ рдкрд░ рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рднреЗрдЬрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╢рд╛рдпрдж рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╣реА рдЬрд╛ рд╕рдХрддреА рд╣реИред

Source: https://habr.com/ru/post/In137932/


All Articles