MySQL 8.2.0 DBMS เช‰เชชเชฒเชฌเซเชง เช›เซ‡

เช“เชฐเซ‡เช•เชฒเซ‡ 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 เชถเชพเช–เชพ เชฎเชพเชŸเซ‡เชจเซเช‚ เชธเชฎเชฐเซเชฅเชจ เชฌเช‚เชง เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚). LTS เชถเชพเช–เชพเช“เชจเซ€ เชญเชฒเชพเชฎเชฃ เชเชตเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃเซ‹ เชฎเชพเชŸเซ‡ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช•เซ‡ เชœเซ‡เชจเซ‡ เช…เชจเซเชฎเชพเชจเชฟเชคเชคเชพ เช…เชจเซ‡ เช…เชชเชฐเชฟเชตเชฐเซเชคเชฟเชค เชตเชฐเซเชคเชจเชจเซ€ เชฒเชพเช‚เชฌเชพ เช—เชพเชณเชพเชจเซ€ เชœเชพเชณเชตเชฃเซ€เชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ. LTS เชถเชพเช–เชพเช“ เชฆเชฐ เชฌเซ‡ เชตเชฐเซเชทเซ‡ เชฌเชนเชพเชฐ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡ เช…เชจเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ 5 เชตเชฐเซเชท เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡, เชคเซ‡ เช‰เชชเชฐเชพเช‚เชค เชคเชฎเซ‡ เชฌเซ€เชœเชพ 3 เชตเชฐเซเชท เชธเซเชงเซ€ เชตเชฟเชธเซเชคเซƒเชค เชธเชชเซ‹เชฐเซเชŸ เชฎเซ‡เชณเชตเซ€ เชถเช•เซ‹ เช›เซ‹. 2024 เชจเซ€ เชตเชธเช‚เชคเช‹เชคเซเชฎเชพเช‚ MySQL 8.4 เชจเซเช‚ LTS เชฐเซ€เชฒเซ€เช เช…เชชเซ‡เช•เซเชทเชฟเชค เช›เซ‡, เชคเซเชฏเชพเชฐเชฌเชพเชฆ เชจเชตเซ€ เช‡เชจเซ‹เชตเซ‡เชถเชจ เชถเชพเช–เชพ 9.0 เชจเซ€ เชฐเชšเชจเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

MySQL 8.2 เชฎเชพเช‚ เชฎเซเช–เซเชฏ เชซเซ‡เชฐเชซเชพเชฐเซ‹:

  • Webauthn เชธเซเชชเซ‡เชธเชฟเชซเชฟเช•เซ‡เชถเชจ (FIDO2) เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชชเซเชฐเชฎเชพเชฃเซ€เช•เชฐเชฃ เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเชพเชฏเซ‡เชฒ เชธเชฎเชฐเซเชฅเชจ, เชคเชฎเชจเซ‡ เชฎเชฒเซเชŸเซ€-เชซเซ‡เช•เซเชŸเชฐ เช“เชฅเซ‡เชจเซเชŸเชฟเช•เซ‡เชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เช…เชจเซ‡ FIDO2-เชธเช•เซเชทเชฎ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชŸเซ‹เช•เชจเซเชธ เช…เชฅเชตเชพ เชฌเชพเชฏเซ‹เชฎเซ‡เชŸเซเชฐเชฟเช• เชชเซเชฐเชฎเชพเชฃเซ€เช•เชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเชพเชธเชตเชฐเซเชกเซเชธ เชตเชฟเชจเชพ MySQL เชธเชฐเซเชตเชฐ เชธเชพเชฅเซ‡ เช•เชจเซ‡เช•เซเชถเชจเชจเซ€ เชชเซเชทเซเชŸเชฟ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชตเซ‡เชฌเชฅเชจ เชชเซเชฒเช—เช‡เชจ เชนเชพเชฒเชฎเชพเช‚ เชซเช•เซเชค MySQL เชเชจเซเชŸเชฐเชชเซเชฐเชพเช‡เช เชฎเชพเชŸเซ‡ เชœ เช‰เชชเชฒเชฌเซเชง เช›เซ‡.
  • mysql_native_password เชธเชฐเซเชตเชฐ เชชเซเชฒเช—เช‡เชจ, เชœเซ‡ เชชเชพเชธเชตเชฐเซเชกเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเซ€เช•เชฐเชฃ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡เชจเซ‡ เชตเซˆเช•เชฒเซเชชเชฟเช• เชถเซเชฐเซ‡เชฃเซ€เชฎเชพเช‚ เช–เชธเซ‡เชกเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช…เช•เซเชทเชฎ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. mysql_native_password เชจเซ‡ เชฌเชฆเชฒเซ‡, caching_sha2_password เชชเซเชฒเช—เช‡เชจ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพเชจเซ€ เชญเชฒเชพเชฎเชฃ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡ เชนเซ‡เชถเชฟเช‚เช— เชฎเชพเชŸเซ‡ SHA2 เชจเซ‡ เชฌเชฆเชฒเซ‡ SHA1 เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“เชจเซ‡ caching_sha2_password เชชเซเชฒเช—เช‡เชจ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพ เช…เชจเซ‡ เชชเชพเชธเชตเชฐเซเชกเชจเซ‡ เชฐเซ‡เชจเซเชกเชฎ เชธเชพเชฅเซ‡ เชฌเชฆเชฒเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เช† เช†เชฆเซ‡เชถเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹: ALTER USER 'username'@'localhost' เช“เชณเช–เชพเชฏเซ‡เชฒ เช•เซ‡เชถเชฟเช‚เช—_sha2_เชชเชพเชธเชตเชฐเซเชก เชฆเซเชตเชพเชฐเชพ เชฐเซ‡เชจเซเชกเชฎ เชชเชพเชธเชตเชฐเซเชก เชชเชพเชธเชตเชฐเซเชกเชจเซ€ เชธเชฎเชฏเชธเซ€เชฎเชพ เชธเชฎเชพเชชเซเชคเชฟ_เชธเชฎเชฏ_เชจเชซเชค 3;
  • EXCEPT เช…เชจเซ‡ INTERSECT เช‘เชชเชฐเซ‡เชถเชจเชจเชพ เช…เชฎเชฒเชจเซ‡ เชเชกเชชเซ€ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชนเซ‡เชถ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡.
  • เชกเซ€เชฌเช—เซ€เช‚เช— เช•เซเชทเชฎเชคเชพเช“ เชตเชฟเชธเซเชคเซƒเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡. SELECT, INSERT, REPLACE, UPDATE เช…เชจเซ‡ DELETE เช‘เชชเชฐเซ‡เชถเชจเซเชธ เชนเชตเซ‡ JSON เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เชกเชพเชฏเช—เซเชจเซ‹เชธเซเชŸเชฟเช• เช†เช‰เชŸเชชเซเชŸ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ "EXPLAIN FORMAT=JSON" เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเซ‡ เช›เซ‡ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, "EXPLAIN FORMAT=JSON INTO @var select_stmt;").
  • เชฎเชพเชคเซเชฐ เชšเซ‹เช•เซเช•เชธ เชกเซ‡เชŸเชพ เชธเซเช•เซ€เชฎเชพ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒ เชกเชพเชฏเช—เซเชจเซ‹เชธเซเชŸเชฟเช•เซเชธ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ "เชเช•เซเชธเชชเซเชฒเซ‡เชจ เชซเซ‹เชฐ เชธเซเช•เซ€เชฎเชพ" เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€.
  • MySQL เชจเชพ เชšเซ‹เช•เซเช•เชธ เชœเซ‚เชจเชพ เชธเช‚เชธเซเช•เชฐเชฃ เชธเชพเชฅเซ‡ เชธเซเชธเช‚เช—เชค เชกเชฎเซเชช เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ mysqldump เช‰เชชเชฏเซ‹เช—เชฟเชคเชพเชฎเชพเช‚ "--output-as-version" เชตเชฟเช•เชฒเซเชช เช‰เชฎเซ‡เชฐเซเชฏเซ‹ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชฎเซ‡ BEFORE_8_2_0 เช…เชฅเชตเชพ BEFORE_8_0_23 เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. 8.2.0 เช…เชจเซ‡ 8.0.23).
  • เชจเชตเชพ mysql_stmt_bind_named_param() เชซเช‚เช•เซเชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซเช•เชพเชฏเซ‡เชฒ เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐเชพเช‡เชเซเชก เช•เซเชตเซ‡เชฐเซ€เช (เชคเซˆเชฏเชพเชฐ เชธเซเชŸเซ‡เชŸเชฎเซ‡เชจเซเชŸ)เชฎเชพเช‚ เชจเชพเชฎเชจเชพ เชฒเช•เซเชทเชฃเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ, เชœเซ‡ mysql_stmt_bind_param() เชซเช‚เช•เซเชถเชจเชจเซ‡ เชฌเชฆเชฒเซ‡ เช›เซ‡, เช•เซเชฒเชพเชฏเช‚เชŸ C เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชฎเชพเช‚ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡.
  • MySQL เชธเชฐเซเชตเชฐเซเชธเชจเชพ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ SQL เชŸเซเชฐเชพเชซเชฟเช•เชจเซเช‚ เชธเชฐเชณ เชตเชฟเชคเชฐเชฃ. เชฎเชพเชงเซเชฏเชฎเชฟเช• เช…เชฅเชตเชพ เชชเซเชฐเชพเชฅเชฎเชฟเช• เชธเชฐเซเชตเชฐเซเชธ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฃเซ‹ เช—เซ‹เช เชตเชตเชพ เชฎเชพเชŸเซ‡ เชถเช•เซเชฏเชคเชพเช“ เชชเซ‚เชฐเซ€ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เชœเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชชเชพเชฐเชฆเชฐเซเชถเช• เชนเซ‹เชฏ เช›เซ‡.
  • เชเช• เชจเชตเซ‹ SET_ANY_DEFINER เชตเชฟเชถเซ‡เชทเชพเชงเชฟเช•เชพเชฐ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡, เชœเซ‡ DEFINER เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟ เชธเชพเชฅเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชฌเชจเชพเชตเชตเชพเชจเซ‹ เช…เชงเชฟเช•เชพเชฐ เช†เชชเซ‡ เช›เซ‡, เชคเซ‡เชฎเชœ เช—เซ‡เชฐเชนเชพเชœเชฐ เชฎเชพเชฒเชฟเช• เชธเชพเชฅเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‡ เชธเซเชฐเช•เซเชทเชฟเชค เชฐเชพเช–เชตเชพ เชฎเชพเชŸเซ‡ ALLOW_NONEXISTENT_DEFINER เชตเชฟเชถเซ‡เชทเชพเชงเชฟเช•เชพเชฐ เช†เชชเซ‡ เช›เซ‡.
  • เชจเชพเชชเชธเช‚เชฆ: เชœเซ‚เชจเชพ เช…เชจเซ‡ เชจเชตเชพ เชšเชฒเซ‹, เชกเซ‡เชŸเชพเชฌเซ‡เชเชจเซ€ เชเช•เซเชธเซ‡เชธ เช†เชชเชตเชพ เชฎเชพเชŸเซ‡ เช•เชพเชฎเช—เซ€เชฐเซ€เชฎเชพเช‚ "%" เช…เชจเซ‡ "_" เชฎเชพเชธเซเช•, "-character-set-client-handshake" เชตเชฟเช•เชฒเซเชช, binlog_transaction_dependency_tracking เชšเชฒ เช…เชจเซ‡ SET_USER_ID เชตเชฟเชถเซ‡เชทเชพเชงเชฟเช•เชพเชฐ.
  • เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒ เชฐเชพเชœเช•เซ€เชฏ เชฐเซ€เชคเซ‡ เช–เซ‹เชŸเซ€ เชชเชฐเชฟเชญเชพเชทเชพ เชธเซเชงเชพเชฐเชตเชพเชจเชพ เชญเชพเช— เชฐเซ‚เชชเซ‡, "เชฐเซ€เชธเซ‡เชŸ เชฎเชพเชธเซเชŸเชฐ", "เชฎเชพเชธเซเชŸเชฐ เชธเซเชŸเซ‡เชŸเชธ เชฌเชคเชพเชตเซ‹", "เชฎเชพเชธเซเชŸเชฐ เชฒเซ‹เช—เซเชธ เชฌเชคเชพเชตเซ‹" เช…เชจเซ‡ "เชชเชฐเซเชœ เชฎเชพเชธเซเชŸเชฐ เชฒเซ‹เช—เซเชธ" เชจเชพ เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเชจเซ‡ เชจเชพเชชเชธเช‚เชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡, เช…เชจเซ‡ เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเช“ "เชฐเซ€เชธเซ‡เชŸ เชฌเชพเชฏเชจเชฐเซ€ เชฒเซ‹เช—เซเชธ เช…เชจเซ‡ เชœเซ€เชŸเซ€เช†เชˆเชกเซ€เชเชธ" เชนเซ‹เชตเซ€ เชœเซ‹เชˆเช. เชคเซ‡เชจเชพ เชฌเชฆเชฒเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹. เชฌเชพเชˆเชจเชฐเซ€ เชฒเซ‹เช— เชธเซเชŸเซ‡เชŸเชธ เชฌเชคเชพเชตเซ‹, "เชฌเชพเชˆเชจเชฐเซ€ เชฒเซ‹เช—เซเชธ เชฌเชคเชพเชตเซ‹" เช…เชจเซ‡ "เชฌเชพเชˆเชจเชฐเซ€ เชฒเซ‹เช—เซเชธ เชธเชพเชซ เช•เชฐเซ‹".
  • เช…เช—เชพเช‰ เชจเชพเชชเชธเช‚เชฆ เช•เชฐเซ‡เชฒเซ€ เชธเซเชตเชฟเชงเชพเช“ เชฆเซ‚เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡: WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() เชซเช‚เช•เซเชถเชจ, expire_logs_days เชšเชฒ, "--abort-slave-event-count" เช…เชจเซ‡ "--disconnect-slave-event-count" เชตเชฟเช•เชฒเซเชชเซ‹.
  • 26 เชจเชฌเชณเชพเชˆเช“ เชจเชฟเชถเซเชšเชฟเชค. Curl เชชเซ‡เช•เซ‡เชœ เช…เชจเซ‡ OpenSSL เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชจเชพ เช‰เชชเชฏเซ‹เช—เชฅเซ€ เชธเช‚เชฌเช‚เชงเชฟเชค เชฌเซ‡ เชจเชฌเชณเชพเชˆเช“เชจเซ‹ เชฆเซ‚เชฐเชธเซเชฅ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹