
рдЖрдЬ, рд╕реЗрд╡рд╛рдУрдВ рдХреА рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣рдореЗрд╢рд╛ рдФрд░ рд╣рд░ рдЬрдЧрд╣ рд╣реЛрддреА рд╣реИ, рди рдХреЗрд╡рд▓ рдмрдбрд╝реА рдорд╣рдВрдЧреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВред рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЕрдиреБрдкрд▓рдмреНрдз рд╕рд╛рдЗрдЯреЗрдВ рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде "рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд░рдЦрд░рдЦрд╛рд╡ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ" рдЕрднреА рднреА рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдорддреМрд░ рдкрд░ рдПрдХ рдХреГрдкрд╛рд▓реБ рдореБрд╕реНрдХрд╛рди рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдмрд╛рджрд▓реЛрдВ рдореЗрдВ рдЗрд╕ рдЬреАрд╡рди рдХреЛ рдЬреЛрдбрд╝реЗрдВ, рдЬрдм рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рдХреЙрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдЖрдкрдХреЛ "рд▓реЛрд╣рд╛" рдСрдкрд░реЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рдФрд░ рдЕрдм рдХреЛрдИ рдмрд╣рд╛рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрд▓рд╕реНрдЯрд░ рддрдХрдиреАрдХреЛрдВ рдФрд░ рдЕрддрд┐рд░реЗрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдордЬрд╝рдмреВрддреА рд╕реЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ред
рд╣рдо рдЖрдкрдХреЛ рдмрддрд╛рдПрдВрдЧреЗ рдХрд┐ рд╣рдордиреЗ рдЕрдкрдиреА рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рди рдЙрдкрд╛рдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдФрд░ рд╣рдо рдХреНрдпрд╛ рдХрд░рдиреЗ рдЖрдПред рдкреНрд▓рд╕ рджреВрд░рдЧрд╛рдореА рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рд╕рд╛рде рдПрдХ рдбреЗрдореЛред
рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдореЗрдВ рд╡рд┐рд░рд╛рд╕рдд
рд╡рд┐рднрд┐рдиреНрди рдУрдкрдирд╕реЛрд░реНрд╕-рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдпрд╣ рдФрд░ рднреА рдмреЗрд╣рддрд░ рд░реВрдк рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдорд╛рдВрдЧ рдмрдврд╝рдиреЗ рдкрд░ рдкреБрд░рд╛рдиреЗ рд╕рдорд╛рдзрд╛рди рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╡рд╛рд▓реА рддрдХрдиреАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рд╣реБрдПред рдФрд░ рдЙрдирдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдЕрд▓рдЧ рдереАред рдЕрдЧрд▓реА рдкреАрдврд╝реА рдХреЗ рд╕рдорд╛рдзрд╛рди рдЙрдирдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдореВрд▓ рдореЗрдВ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд░рдЦрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, MongoDB рдореБрдЦреНрдп рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрд▓рд╕реНрдЯрд░ рдХреЛ рддреИрдирд╛рдд рдХрд░рддрд╛ рд╣реИред рдХреНрд▓рд╕реНрдЯрд░ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рддрд░рд╛рдЬреВ рд╣реИ, рдЬреЛ рдЗрд╕ DBMS рдХрд╛ рдПрдХ рдордЬрдмреВрдд рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рд▓рд╛рдн рд╣реИред
рд╡рд╛рдкрд╕ PostgreSQL рдХреЗ рд▓рд┐рдПред рдпрд╣ рд╕рдмрд╕реЗ рдкреБрд░рд╛рдиреА рд▓реЛрдХрдкреНрд░рд┐рдп рдУрдкрдирд╕реЛрд░реНрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЬрд┐рд╕рдХреА рдкрд╣рд▓реА рд░рд┐рд▓реАрдЬ рдкрд┐рдЫрд▓реА рд╢рддрд╛рдмреНрджреА рдХреЗ 95 рд╡реЗрдВ рд╡рд░реНрд╖ рдореЗрдВ рд╣реБрдИ рдереАред рд▓рдВрдмреЗ рд╕рдордп рддрдХ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЯреАрдо рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреЛ рдПрдХ рдХрд╛рд░реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдорд╛рдирддреА рдереА рдЬрд┐рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдбреЗрдЯрд╛ рдкреНрд░рддрд┐рдпрд╛рдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдХреГрддрд┐ рддрдХрдиреАрдХ 2006 рдореЗрдВ рдХреЗрд╡рд▓ 8.2 рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реЛ рдЧрдИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рджрд╛рдпрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ (рд▓реЙрдЧ рд╢рд┐рдкрд┐рдВрдЧ)ред 2010 рдореЗрдВ, рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕рдВрд╕реНрдХрд░рдг 9.0 рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреА, рдФрд░ рдпрд╣ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдиреЗ рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред рдпрд╣, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рд╣реИ рдЬреЛ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ SQL рдпрд╛ рдЖрдзреБрдирд┐рдХ NoSQL рдХреЗ рдмрд╛рдж PostgreSQL рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ - рд╕рдореБрджрд╛рдп рд╕реЗ рдорд╛рдирдХ рд╕рдорд╛рдзрд╛рди рдХреЗрд╡рд▓ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдпрд╛ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЗ рд╕рд╛рде рдорд╛рд╕реНрдЯрд░-рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛ рдПрдХ рдЬреЛрдбрд╝рд╛ рд╣реИред рдЙрд╕реА рд╕рдордп, рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдирд╛рд▓реА рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдореБрджреНрджрд╛ рднреА рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИред
рд╣рдордиреЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп PostgreSQL рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдордиреЗ рдХреНрдпрд╛ рдЪреБрдирд╛
рд╣рд╛рд▓рд╛рдБрдХрд┐, PostgreSQL рдЗрддрдиреА рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛрддреА рдЕрдЧрд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдРрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рдФрд░ рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реЛрддреЗ рдЬреЛ рдПрдХ рджреЛрд╖-рд╕рд╣рд┐рд╖реНрдгреБ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рдЬрд┐рдиреНрд╣реЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреАред DBaaS рдХреЗ рд▓реЙрдиреНрдЪ рдХреЗ рдмрд╛рдж рд╕реЗ, рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреЗ рд╕рд╛рде рдПрдХрд▓ PostgreSQL рд╕рд░реНрд╡рд░ рдФрд░ рдорд╛рд╕реНрдЯрд░ рдкреНрд░рддрд┐рдХреГрддрд┐ рдЬреЛрдбрд╝реЗ
Mail.ru Cloud Solutions (MCS) рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред
рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдо рд╣рд░ рдХрд┐рд╕реА рдХреЗ рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ рдФрд░ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдХреНрдпреВрдПрд▓ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ, рдЬреЛ рдХрд┐ рдЕрддреНрдпрдзрд┐рдХ рд╕реБрд▓рдн рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХреЗ, рдЬрд┐рдиреНрд╣реЗрдВ рд╕реНрд╡рд┐рдЪ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд░рд╛рдд рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдЬрд╛рдЧрд░рдг рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдЦрдВрдб рдореЗрдВ рдкреБрд░рд╛рдиреЗ рд╕рд┐рджреНрдз рд╕рдорд╛рдзрд╛рди рдФрд░ рдирдИ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреА рдПрдХ рдкреАрдврд╝реА рд╣реИ рдЬреЛ рдирд╡реАрдирддрдо рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЖрдЬ, рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рд╕рдорд╕реНрдпрд╛ рдЕрддрд┐рд░реЗрдХ рдкрд░ рдЖрд░рд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ (рдпрд╣ рдмрд┐рдирд╛ рдХрд╣реЗ рдЪрд▓реА рдЬрд╛рддреА рд╣реИ), рд▓реЗрдХрд┐рди рдЖрдо рд╕рд╣рдорддрд┐ рдкрд░ - рдПрдХ рдиреЗрддрд╛ (рдиреЗрддрд╛ рдЪреБрдирд╛рд╡) рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдоред рдЬреНрдпрд╛рджрд╛рддрд░ рдЕрдХреНрд╕рд░, рдмрдбрд╝реА рджреБрд░реНрдШрдЯрдирд╛рдПрдВ рд╕рд░реНрд╡рд░ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдо рд╕рд╣рдорддрд┐ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг: рдПрдХ рдирдпрд╛ рдиреЗрддрд╛ рдирд╣реАрдВ рдирд┐рдХрд▓рд╛, рджреЛ рдиреЗрддрд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдП, рдЖрджрд┐ред рдЬреАрдердм MySQL рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдПрдХ рджреБрд░реНрдШрдЯрдирд╛ рд╣реИ - рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ
рд╡рд┐рд╕реНрддреГрдд рдкреЛрд╕реНрдЯрдорд╛рд░реНрдЯрдо рд▓рд┐рдЦрд╛ред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЧрдгрд┐рддреАрдп рдЖрдзрд╛рд░ рдмрд╣реБрдд рдЧрдВрднреАрд░ рд╣реИред рдПрдХ рдУрд░, рдПрдХ
рдХреИрдк рдкреНрд░рдореЗрдп рд╣реИ , рдЬреЛ рд╣рд╛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░реА рддрд░рдл, рдЧрдгрд┐рддреАрдп рд░реВрдк рд╕реЗ
рдкреИрдХреНрд╕реЛрд╕ рдФрд░
рд░рдл рдЬреИрд╕реЗ рдЧрдгрд┐рддреАрдп рд░реВрдк рд╕реЗ рд╕рд░реНрд╡рд╕рдореНрдорддрд┐ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд┐рд░реНрдзрд╛рд░рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╣реИред рдЗрд╕ рдЖрдзрд╛рд░ рдкрд░, рдХрд╛рдлреА рд▓реЛрдХрдкреНрд░рд┐рдп рдбреАрд╕реАрдПрд╕ (рд╡рд┐рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рд░реНрд╡рд╕рдореНрдорддрд┐ рдкреНрд░рдгрд╛рд▓реА) рд╣реИрдВ - рдЬрд╝реБрдХреАрдкрд░, рдХреЙрд░реНрдб, рдХрдВрд╕реБрд▓ред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреА рдкреНрд░рдгрд╛рд▓реА рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд▓рд┐рдЦреЗ рдЧрдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреБрдЫ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкрд░ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЗрд╣рдж рд╕рд╛рд╡рдзрд╛рдиреА рдмрд░рддрдиреА рдЪрд╛рд╣рд┐рдПред рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдкреЗрддреНрд░реЛрдиреА рдкрд░ рдмрд╕реЗ - рдПрдХ рдУрдкрдирд╕реЛрд░реНрд╕ рд╕рд┐рд╕реНрдЯрдо, рдЬреЛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЬрд╝рд╛рд▓реИрдВрдбреЛ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдПрдХ рдЧреАрддрд╛рддреНрдордХ рд╡рд┐рд╖рдпрд╛рдВрддрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдордиреЗ рдорд▓реНрдЯреА-рдорд╛рд╕реНрдЯрд░ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛, рдЕрд░реНрдерд╛рддреН, рдРрд╕реЗ рдХреНрд▓рд╕реНрдЯрд░ рдЬрд┐рдиреНрд╣реЗрдВ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдореЗрдВ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рджреЛ рдореБрдЦреНрдп рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдРрд╕рд╛ рдХреЛрдИ рдХреНрд▓рд╕реНрдЯрд░ рдирд╣реАрдВ рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдРрд╕реЗ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рдЙрдЪреНрдЪ рдЬрдЯрд┐рд▓рддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░, рддрджрдиреБрд╕рд╛рд░, рдЕрдзрд┐рдХ рдХрдордЬреЛрд░рд┐рдпрд╛рдВред рд╕рднреА рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд┐рд░ рдирд┐рд░реНрдгрдп рд▓реЗрдирд╛ рдХрдард┐рди рд╣реЛрдЧрд╛ред рджреВрд╕рд░реЗ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, PostgreSQL рд╢реБрджреНрдз (рджреЗрд╢реА) рд╣реЛрдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ, рдХреБрдЫ рдлрд╝рдВрдХреНрд╢рди рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рдХреБрдЫ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдЫрд┐рдкреЗ рд╣реБрдП рдХреАрдбрд╝реЗ рдХрд╛ рдЕрдиреБрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
Patroni
рддреЛ рдкреЗрдЯреНрд░реЛрдиреА рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ? рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдкрд╣рд┐рдпрд╛ рдХреЛ рд╕реБрджреГрдврд╝ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд┐рджреНрдз рдбреАрд╕реАрдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди, рдПрдХ рдиреЗрддрд╛ рдФрд░ рдХреЛрд░рдо рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рд╕рднреА рдореБрджреНрджреЗ рдЙрд╕реЗ рджрд┐рдП рдЧрдП рд╣реИрдВред рд╣рдордиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП etcd рдХреЛ рдЪреБрдирд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреЗрдЯреНрд░реЛрдиреА PostgreSQL рдФрд░ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рд╕рд╛рде рд╣реА рд╕реНрд╡рд┐рдЪрдУрд╡рд░ рдФрд░ рдлреЗрд▓рдУрд╡рд░ (рдпрд╛рдиреА, рдирд┐рдпрдорд┐рдд рдФрд░ рдЧреИрд░-рдорд╛рдирдХ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рд╡рд┐рдЬрд╝рд╛рд░реНрдб) рдкрд░ рдЖрджреЗрд╢реЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рднреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╣реА рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рде рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, MCS рдХреНрд▓рд╛рдЙрдб рдореЗрдВ, рдЖрдк рд╡рд┐рдЬрд╝рд╛рд░реНрдб, рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдкреНрд░рддрд┐рдХреГрддрд┐ рдФрд░ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рд╕реЗ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрдо рд╕реЗ рдХрдо 2 рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдбреЗрдЯрд╛ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреА рд╣реИ, рдФрд░ рдпрд╣ рдкреНрд░рддрд┐рдХреГрддрд┐ рдореБрдЦреНрдп "рдорд╛рд╕реНрдЯрд░ рдХреЗ рд▓рд┐рдП" рд╣реЛрдЧреАред
рдЪреВрдВрдХрд┐ etcd рдХреЛ рдПрдХ рд╣реА рд╕рд░реНрд╡рд░ рдкрд░ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЗрд╖реНрдЯрддрдо рдХреЛрд░рдо рдорд╛рди рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХреА рд╕рдВрдЦреНрдпрд╛ 3 рдпрд╛ 5 рд╣реЛред рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛)ред рдлрд┐рд░ рднреА, рдпрд╣ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐рдпрд╛рдВ рдкрд┐рдЫрдбрд╝ рд░рд╣реА рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЙрдЪреНрдЪ рднрд╛рд░ рдкрд░ред
рдРрд╕реЗ рд░реАрдб рд╕реНрдЯреИрдВрдбрдмрд╛рдп рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рдпрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдЪрд┐рдд рд╣реИред
рдпрджрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рдРрд╕рд╛ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА:
- 3 рдпрд╛ рдЕрдзрд┐рдХ рд╕рд░реНрд╡рд░ рддреИрдпрд╛рд░ рдХрд░реЗрдВ, рдЙрдирдХреЗ рдмреАрдЪ рдЖрдИрдкреА рдПрдбреНрд░реЗрд╕рд┐рдВрдЧ рдФрд░ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдирд┐рдпрдореЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ;
- рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ etcd, Patroni, PostgreSQL;
- рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреНрд▓рд╕реНрдЯрд░ рдЖрджрд┐;
- PostgreSQL рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд░рдХреНрд╖рдХ рд╕реЗрд╡рд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
рдпрд╣реА рд╣реИ, рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдЖрдкрдХреЛ рдПрдХ рджрд░реНрдЬрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдмрдирд╛рдиреЗ рдФрд░ рдХрд╣реАрдВ рднреА рдЧрд▓рддреА рдирд╣реАрдВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдЙрдкрдХрд░рдг рдЬреИрд╕реЗ рдХрд┐ Ansible рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрднреА рднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрд▓рдмреНрдз рдЯреАрд╕реАрдкреА рдмреИрд▓реЗрдВрд╕рд░ рдирд╣реАрдВ рд╣реИред рдЗрд╕реЗ рдХрд░рдирд╛ рдПрдХ рдЕрд▓рдЧ рдХрд╛рдо рд╣реИред
рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдХреНрд▓рд╕реНрдЯрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрди рд╕рдм рдХреЗ рд╕рд╛рде рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рдордиреЗ рдЕрдкрдиреЗ рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рд╣рдорд╛рд░реЗ рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдкреЗрдЯреНрд░реЛрдиреА рдкрд░ рддреИрдпрд╛рд░ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдпрд╛, рдЗрд╕реЗ рдореБрдлреНрдд рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдордиреЗ рдХрд┐рдпрд╛:
- рдЯреАрд╕реАрдкреА рдмреИрд▓реЗрдВрд╕рд░ рд╡рд┐рднрд┐рдиреНрди рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдкрд░, рдпрд╣ рд╣рдореЗрд╢рд╛ рд╡рд░реНрддрдорд╛рди рдорд╛рд╕реНрдЯрд░, рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдпрд╛ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ;
- рд╕рдХреНрд░рд┐рдп Patroni рд╡рд┐рдЬрд╝рд╛рд░реНрдб рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП APIред
рдЙрдиреНрд╣реЗрдВ MCS рдХреНрд▓рд╛рдЙрдб рдПрдкреАрдЖрдИ рдФрд░ рд╡реЗрдм рдХрдВрд╕реЛрд▓ рджреЛрдиреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдбреЗрдореЛ
MCS рдХреНрд▓рд╛рдЙрдб рдореЗрдВ PostgreSQL рдХреНрд▓рд╕реНрдЯрд░ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ DBMS рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рд▓рд╛рдЗрд╡ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╣реИ рдЬреЛ рдХреГрддреНрд░рд┐рдо рдШрдЯрдирд╛рдУрдВ рдХреЛ рд▓реЙрдЧ рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдЧрд╛ред рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЗрд╕реЗ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдЧрд╛ рдФрд░ рдПрдХ рдЪрдХреНрд░ рдореЗрдВ рдЕрдкрдирд╛ рдХрд╛рдо рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рд╣рдо рдЗрд╕реЗ Ctrl + C рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде рд░реЛрдХ рдирд╣реАрдВ рджреЗрддреЗред
from __future__ import print_function from datetime import datetime from random import randint from time import sleep import psycopg2 def main(): try: connection = psycopg2.connect(user = "admin", password = "P@ssw0rd", host = "89.208.87.38", port = "5432", database = "myproddb") cursor = connection.cursor() cursor.execute("SELECT version();") record = cursor.fetchone() print("Connection opened to", record[0]) cursor.execute( "INSERT INTO log VALUES ({});".format(randint(1, 10000))) connection.commit() cursor.execute("SELECT COUNT(event_id) from log;") record = cursor.fetchone() print("Logged a value, overall count: {}".format(record[0])) except Exception as error: print ("Error while connecting to PostgreSQL", error) finally: if connection: cursor.close() connection.close() print("Connection closed") if __name__ == '__main__': try: while True: try: print(datetime.now()) main() sleep(3) except Exception as e: print("Caught error:\n", e) sleep(1) except KeyboardInterrupt: print("exit")
рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП PostgreSQL рдХреА рдЬрд░реВрд░рдд рд╣реИред API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ MCS рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдПрдВред рдПрдХ рдирд┐рдпрдорд┐рдд рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ, рдЬрд╣рд╛рдВ OS_TOKEN рдЪрд░ рдореЗрдВ рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреЛрдХрди рд╣реЛрддрд╛ рд╣реИ (рдЖрдк рдЗрд╕реЗ рдУрдкрдирд╕реНрдЯреИрдХ рдЯреЛрдХрди рдЗрд╢реНрдпреВ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ), рд╣рдо рдХрдорд╛рдВрдб рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ:
рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдПрдБ:
cat <<EF > pgc10.json {"cluster":{"name":"postgres10","allow_remote_access":true,"datastore":{"type":"postgresql","version":"10"},"databases":[{"name":"myproddb"}],"users":[{"databases":[{"name":"myproddb"}],"name":"admin","password":"P@ssw0rd"}],"instances":[{"key_name":"shared","availability_zone":"DP1","flavorRef":"d659fa16-c7fb-42cf-8a5e-9bcbe80a7538","nics":[{"net-id":"b91eafed-12b1-4a46-b000-3984c7e01599"}],"volume":{"size":50,"type":"DP1"}},{"key_name":"shared","availability_zone":"DP1","flavorRef":"d659fa16-c7fb-42cf-8a5e-9bcbe80a7538","nics":[{"net-id":"b91eafed-12b1-4a46-b000-3984c7e01599"}],"volume":{"size":50,"type":"DP1"}},{"key_name":"shared","availability_zone":"DP1","flavorRef":"d659fa16-c7fb-42cf-8a5e-9bcbe80a7538","nics":[{"net-id":"b91eafed-12b1-4a46-b000-3984c7e01599"}],"volume":{"size":50,"type":"DP1"}}]}} EOF curl -s -H "X-Auth-Token: $OS_TOKEN" \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d @pgc10.json https://infra.mail.ru:8779/v1.0/ce2a41bbd1434013b85bdf0ba07c770f/clusters

рдЬрдм рдХреНрд▓рд╕реНрдЯрд░ рд╕рдХреНрд░рд┐рдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдлрд╝реАрд▓реНрдб рд╡рд░реНрддрдорд╛рди рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ - рдХреНрд▓рд╕реНрдЯрд░ рддреИрдпрд╛рд░ рд╣реИред
GUI рдореЗрдВ:

рдЖрдЗрдП рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:
psql -h 89.208.87.38 -U admin -d myproddb Password for user admin: psql (11.1, server 10.7) Type "help" for help. myproddb=> CREATE TABLE log (event_id integer NOT NULL); CREATE TABLE myproddb=> INSERT INTO log VALUES (1),(2),(3); INSERT 0 3 myproddb=> SELECT * FROM log; event_id ---------- 1 2 3 (3 rows) myproddb=>

рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рд╣рдо PostgreSQL рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВред рд╣рдо рдЯреАрд╕реАрдкреА-рдмреИрд▓реЗрдВрд╕рд░ рдХреЗ рдкрддреЗ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреЗ рдкрддреЗ рдкрд░ рдореИрдиреНрдпреБрдЕрд▓ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧреАред рдЗрд╕реЗ рдЪрд▓рд╛рдПрдВред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдШрдЯрдирд╛рдУрдВ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓реЙрдЧ рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЕрдиреБрд╕реВрдЪрд┐рдд рдорд╛рд╕реНрдЯрд░ рд╕реНрд╡рд┐рдЪ
рдЕрдм рд╣рдо рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреЗ рдирд┐рдпреЛрдЬрд┐рдд рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВрдЧреЗ:

рд╣рдо рдЖрд╡реЗрджрди рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╛рдзрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрдзрд┐рдХрддрдо 9ред

рдХрд╛рд░ рдЧрд┐рд░ рдЧрдИ
рдЕрдм рдПрдХ рдЖрднрд╛рд╕реА рдорд╢реАрди, рд╡рд░реНрддрдорд╛рди рдорд╛рд╕реНрдЯрд░ рдХреЗ рдкрддрди рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред рд╣реЛрд░рд╛рдЗрдЬрди рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЗрд╡рд▓ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреЛ рдмрдВрдж рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рдХреЗрд╡рд▓ рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд рд╢рдЯрдбрд╛рдЙрди рд╣реЛрдЧрд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕реНрд╡рд┐рдЪ рдХреЛ рдкреЗрдЯреНрд░реЛрдиреА рд╕рд╣рд┐рдд рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рд╣рдореЗрдВ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдмрдВрдж рдХреА рдЬрд░реВрд░рдд рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЛ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди - рд╡рд░реНрддрдорд╛рди рдорд╛рд╕реНрдЯрд░ - рдХреЛ рдЕрд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ред

рдЙрд╕реА рд╕рдордп, рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдиреЗ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрд╛ред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдорд╛рд╕реНрдЯрд░ рдХрд╛ рдРрд╕рд╛ рдЖрдкрд╛рддрдХрд╛рд▓реАрди рд╕реНрд╡рд┐рдЪ рдХрд┐рд╕реА рдХрд╛ рдзреНрдпрд╛рди рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ред
2019-03-29 10:45:56.071234 Connection opened to PostgreSQL 10.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36), 64-bit Logged a value, overall count: 453 Connection closed 2019-03-29 10:45:59.205463 Connection opened to PostgreSQL 10.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36), 64-bit Logged a value, overall count: 454 Connection closed 2019-03-29 10:46:02.661440 Error while connecting to PostgreSQL server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. Caught error: local variable 'connection' referenced before assignment тАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАжтАж.. - - 2019-03-29 10:46:30.930445 Error while connecting to PostgreSQL server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. Caught error: local variable 'connection' referenced before assignment 2019-03-29 10:46:31.954399 Connection opened to PostgreSQL 10.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36), 64-bit Logged a value, overall count: 455 Connection closed 2019-03-29 10:46:35.409800 Connection opened to PostgreSQL 10.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36), 64-bit Logged a value, overall count: 456 Connection closed ^Cexit
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди 30 рд╕реЗрдХрдВрдб рд╕реЗ рдХрдо рд╕рдордп рдореЗрдВ рдЕрдкрдирд╛ рдХрд╛рдо рдЬрд╛рд░реА рд░рдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рд╣рд╛рдВ, рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рд╕реЗрд╡рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рдПрдХ рдЧрдВрднреАрд░ рд╕рд░реНрд╡рд░ рд╡рд┐рдлрд▓рддрд╛ рд╣реИ, рдРрд╕рд╛ рдЕрдХреНрд╕рд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЙрд╕реА рд╕рдордп, рд╡реНрдпрдХреНрддрд┐ (рдкреНрд░рд╢рд╛рд╕рдХ) рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЬрд▓реНрджреА рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рд╣реЛрдЧрд╛, рдЬрдм рддрдХ рдХрд┐ рд╡рд╣ рдПрдХ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рддреИрдпрд╛рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдирд╣реАрдВ рдмреИрдард╛ рдерд╛ред
рдирд┐рд╖реНрдХрд░реНрд╖
рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдмрд░рджрд╕реНрдд рд▓рд╛рдн рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд░реНрд╡рд░ рдХреЗ рдЧрдВрднреАрд░ рдмреНрд░реЗрдХрдбрд╛рдЙрди рдФрд░ рд╡рд┐рдлрд▓рддрд╛рдПрдВ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реЛрдВрдЧреА рдФрд░, рддрджрдиреБрд╕рд╛рд░, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдПред рдЖрдкрдХреЛ рдЬрд▓реНрджрдмрд╛рдЬрд╝реА рдореЗрдВ рдХреБрдЫ рд╕реБрдзрд╛рд░рдирд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдФрд░ рдЕрд╕реНрдерд╛рдпреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди, рд╕рд░реНрд╡рд░ рдЖрджрд┐ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдФрд░ рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рддреИрдпрд╛рд░ рд╕реЗрд╡рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдХреБрдЫ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред