MySQL 8.2.0 DBMS рдЙрдкрд▓рдмреНрдз рд╣реИ

Oracle рдиреЗ MySQL 8.2 DBMS рдХреА рдПрдХ рдирдИ рд╢рд╛рдЦрд╛ рдмрдирд╛рдИ рд╣реИ рдФрд░ MySQL 8.0.35 рдФрд░ 5.7.44 рдореЗрдВ рд╕реБрдзрд╛рд░рд╛рддреНрдордХ рдЕрджреНрдпрддрди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдП рд╣реИрдВред MySQL рдХрдореНрдпреБрдирд┐рдЯреА рд╕рд░реНрд╡рд░ 8.2.0 рдмрд┐рд▓реНрдб рд╕рднреА рдкреНрд░рдореБрдЦ Linux, FreeBSD, macOS рдФрд░ Windows рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

MySQL 8.2.0 рдирдП рд░рд┐рд▓реАрдЬрд╝ рдореЙрдбрд▓ рдХреЗ рддрд╣рдд рдмрдирд╛рдИ рдЧрдИ рджреВрд╕рд░реА рд░рд┐рд▓реАрдЬрд╝ рд╣реИ, рдЬреЛ рджреЛ рдкреНрд░рдХрд╛рд░ рдХреА MySQL рд╢рд╛рдЦрд╛рдУрдВ - "рдЗрдиреЛрд╡реЗрд╢рди" рдФрд░ "LTS" рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рдЗрдиреЛрд╡реЗрд╢рди рд╢рд╛рдЦрд╛рдПрдБ, рдЬрд┐рдирдореЗрдВ MySQL 8.1 рдФрд░ 8.2 рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рдирдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпреЗ рд╢рд╛рдЦрд╛рдПрдБ рд╣рд░ 3 рдорд╣реАрдиреЗ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрддреА рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд▓реА рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬрд╝ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрдиреЗ рддрдХ рд╕рдорд░реНрдерд┐рдд рд╣реЛрддреА рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 8.2 рд╢рд╛рдЦрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рдж, 8.1 рд╢рд╛рдЦрд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред рдПрд▓рдЯреАрдПрд╕ рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдЙрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рдиреБрдореЗрдпрддрд╛ рдФрд░ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рджреГрдврд╝рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдПрд▓рдЯреАрдПрд╕ рд╢рд╛рдЦрд╛рдПрдВ рд╣рд░ рджреЛ рд╕рд╛рд▓ рдореЗрдВ рдЬрд╛рд░реА рдХреА рдЬрд╛рдПрдВрдЧреА рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ 5 рд╕рд╛рд▓ рддрдХ рд╕рдорд░реНрдерд┐рдд рд░рд╣реЗрдВрдЧреА, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрдк 3 рд╕рд╛рд▓ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕рдорд░реНрдерди рднреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред 2024 рдХреЗ рд╡рд╕рдВрдд рдореЗрдВ MySQL 8.4 рдХреА рдПрд▓рдЯреАрдПрд╕ рд░рд┐рд▓реАрдЬ рдХреА рдЙрдореНрдореАрдж рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдПрдХ рдирдИ рдЗрдиреЛрд╡реЗрд╢рди рд╢рд╛рдЦрд╛ 9.0 рдХрд╛ рдЧрдарди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

MySQL 8.2 рдореЗрдВ рдкреНрд░рдореБрдЦ рдкрд░рд┐рд╡рд░реНрддрди:

  • Webauthn рд╡рд┐рдирд┐рд░реНрджреЗрд╢ (FIDO2) рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рддрдВрддреНрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛, рдЬреЛ рдЖрдкрдХреЛ рдмрд╣реБ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ FIDO2-рд╕рдХреНрд╖рдо рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЯреЛрдХрди рдпрд╛ рдмрд╛рдпреЛрдореЗрдЯреНрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛ MySQL рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред Webauthn рдкреНрд▓рдЧрдЗрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ MySQL Enterprise рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред
  • Mysql_native_password рд╕рд░реНрд╡рд░ рдкреНрд▓рдЧрдЗрди, рдЬреЛ рдкрд╛рд╕рд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдХреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╢реНрд░реЗрдгреА рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Mysql_native_password рдХреЗ рдмрдЬрд╛рдп, caching_sha2_password рдкреНрд▓рдЧрдЗрди рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рд╣реИрд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП SHA2 рдХреЗ рдмрдЬрд╛рдп SHA1 рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХреИрд╢рд┐рдВрдЧ_рд╢рд╛2_рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд▓рдЧрдЗрди рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рд░реИрдВрдбрдо рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: ALTER USER 'username'@'localhost' RANDOM PASSWORD рджреНрд╡рд╛рд░рд╛ caching_sha2_password рд╕реЗ рдкрд╣рдЪрд╛рдирд╛ рдЧрдпрд╛, рдкрд╛рд╕рд╡рд░реНрдб рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓_рд▓реЙрдЧрд┐рди_ATTEMPTS 3 PASSWORD_LOCK_TIME 2;
  • EXCEPT рдФрд░ INTERSECT рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдореЗрдВ рддреЗрдЬреА рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  • рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред SELECT, INSERT, REPLACE, UPDATE рдФрд░ DELETE рдСрдкрд░реЗрд╢рдВрд╕ рдЕрдм JSON рдлреЙрд░реНрдореЗрдЯ рдореЗрдВ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рдЖрдЙрдЯрдкреБрдЯ рдЬреЗрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "EXPLAIN FORMAT=JSON" рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "EXPLAIN FORMAT=JSON INTO @varselect_stmt;")ред
  • рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рд╕реНрдХреАрдорд╛ рд╕реЗ рдЬреБрдбрд╝реЗ рдирд┐рджрд╛рди рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рд╕реНрдХреАрдорд╛ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░реЗрдВ" рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЬреЛрдбрд╝реА рдЧрдИред
  • MySQL рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдбрдВрдк рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП mysqldump рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдореЗрдВ "--рдЖрдЙрдЯрдкреБрдЯ-рдПрдЬрд╝-рд╡рд░реНрдЬрди" рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рд░рд┐рд▓реАрдЬрд╝ 8 рдореЗрдВ рдЕрдкреНрд░рдЪрд▓рд┐рдд рд░рд╛рдЬрдиреАрддрд┐рдХ рд░реВрдк рд╕реЗ рдЧрд▓рдд рдорд╛рд╕реНрдЯрд░/рд╕реНрд▓реЗрд╡ рд╢рдмреНрджрд╛рд╡рд▓реА рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП BEFORE_2_0_8 рдпрд╛ BEFORE_0_23_8.2.0 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред 8.0.23 рдФрд░ XNUMX ).
  • рдирдП mysql_stmt_bind_named_param() рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдкреИрд░рд╛рдореАрдЯрд░рдпреБрдХреНрдд рдХреНрд╡реЗрд░реАрдЬрд╝ (рддреИрдпрд╛рд░ рдХрдерди) рдореЗрдВ рдирд╛рдорд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдЬрд┐рд╕рдиреЗ mysql_stmt_bind_param() рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдХреЛ рдХреНрд▓рд╛рдЗрдВрдЯ C рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред
  • MySQL рд╕рд░реНрд╡рд░ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ SQL рдЯреНрд░реИрдлрд╝рд┐рдХ рдХрд╛ рд╕рд░рд▓реАрдХреГрдд рд╡рд┐рддрд░рдгред рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рд░рджрд░реНрд╢реА рдорд╛рдзреНрдпрдорд┐рдХ рдпрд╛ рдкреНрд░рд╛рдердорд┐рдХ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИрдВред
  • рдПрдХ рдирдпрд╛ SET_ANY_DEFINER рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ DEFINER рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╕рд╛рде рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рджреЗрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╕реНрд╡рд╛рдореА рдХреЗ рд╕рд╛рде рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП ALLOW_NONEXISTENT_DEFINER рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рджреЗрддрд╛ рд╣реИред
  • рдмрд╣рд┐рд╖реНрдХреГрдд: рдкреБрд░рд╛рдиреЗ рдФрд░ рдирдП рд╡реЗрд░рд┐рдПрдмрд▓, рдбреЗрдЯрд╛рдмреЗрд╕ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ "%" рдФрд░ "_" рдорд╛рд╕реНрдХ, "-рдХреИрд░реЗрдХреНрдЯрд░-рд╕реЗрдЯ-рдХреНрд▓рд╛рдЗрдВрдЯ-рд╣реИрдВрдбрд╢реЗрдХ" рд╡рд┐рдХрд▓реНрдк, рдмрд┐рдирд▓реЙрдЧ_рдЯреНрд░рд╛рдВрд╕рдПрдХреНрд╢рди_рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА_рдЯреНрд░реИрдХрд┐рдВрдЧ рд╡реЗрд░рд┐рдПрдмрд▓ рдФрд░ SET_USER_ID рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ред
  • рдкреНрд░рддрд┐рдХреГрддрд┐ рд╕реЗ рдЬреБрдбрд╝реА рд░рд╛рдЬрдиреАрддрд┐рдХ рд░реВрдк рд╕реЗ рдЧрд▓рдд рд╢рдмреНрджрд╛рд╡рд▓реА рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ "рд░реАрд╕реЗрдЯ рдорд╛рд╕реНрдЯрд░", "рдорд╛рд╕реНрдЯрд░ рд╕реНрдерд┐рддрд┐ рджрд┐рдЦрд╛рдПрдВ", "рдорд╛рд╕реНрдЯрд░ рд▓реЙрдЧ рджрд┐рдЦрд╛рдПрдВ" рдФрд░ "рдкрд░реНрдЬ рдорд╛рд╕реНрдЯрд░ рд▓реЙрдЧ" рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ "рд░реАрд╕реЗрдЯ рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рдФрд░ рдЬреАрдЯреАрдЖрдИрдбреАрдПрд╕" рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рд╕реНрдерд┐рддрд┐ рджрд┐рдЦрд╛рдПрдВ", "рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рджрд┐рдЦрд╛рдПрдВ" рдФрд░ "рдмрд╛рдЗрдирд░реА рд▓реЙрдЧ рдХреЛ рд╢реБрджреНрдз рдХрд░реЗрдВ"ред
  • рдкрд╣рд▓реЗ рд╕реЗ рдЕрдкреНрд░рдЪрд▓рд┐рдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() рдлрд╝рдВрдХреНрд╢рди, рдПрдХреНрд╕рдкрд╛рдпрд░_рд▓реЙрдЧреНрд╕_рдбреЗрдЬрд╝ рд╡реЗрд░рд┐рдПрдмрд▓, "--рдПрдмреЙрд░реНрдЯ-рд╕реНрд▓реЗрд╡-рдЗрд╡реЗрдВрдЯ-рдХрд╛рдЙрдВрдЯ" рдФрд░ "--рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ-рд╕реНрд▓реЗрд╡-рдЗрд╡реЗрдВрдЯ-рдХрд╛рдЙрдВрдЯ" рд╡рд┐рдХрд▓реНрдкред
  • 26 рдХрдордЬреЛрд░рд┐рдпрд╛рдБ рдареАрдХ рдХреА рдЧрдИрдВред рдХрд░реНрд▓ рдкреИрдХреЗрдЬ рдФрд░ рдУрдкрдирдПрд╕рдПрд╕рдПрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рджреЛ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХрд╛ рджреВрд░ рд╕реЗ рдлрд╛рдпрджрд╛ рдЙрдард╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ