MySQL 8.3.0 DBMS พร้อมใช้งาน

Oracle ได้สร้างสาขาใหม่ของ MySQL 8.3 DBMS และเผยแพร่การอัปเดตแก้ไขสำหรับ MySQL 8.0.36 บิลด์ MySQL Community Server 8.3.0 เตรียมไว้สำหรับ Linux, FreeBSD, macOS และ Windows รายใหญ่ทั้งหมด

MySQL 8.3.0 เป็นรีลีสที่สามที่เกิดขึ้นภายใต้โมเดลรีลีสใหม่ ซึ่งจัดให้มีสาขา MySQL สองประเภท - “นวัตกรรม” และ “LTS” สาขานวัตกรรมซึ่งรวมถึง MySQL 8.1, 8.2 และ 8.3 ได้รับการแนะนำสำหรับผู้ที่ต้องการเข้าถึงฟังก์ชันใหม่ก่อนหน้านี้ แบรนช์เหล่านี้ได้รับการเผยแพร่ทุกๆ 3 เดือน และได้รับการสนับสนุนจนกว่าจะมีการเผยแพร่แบรนช์หลักถัดไปเท่านั้น (ตัวอย่างเช่น หลังจากที่แบรนช์ 8.3 ปรากฏขึ้น การสนับสนุนสำหรับแบรนช์ 8.2 ก็ถูกยกเลิก) แนะนำให้ใช้สาขา LTS สำหรับการใช้งานที่ต้องการความสามารถในการคาดการณ์และการคงอยู่ในระยะยาวของพฤติกรรมที่ไม่เปลี่ยนแปลง สาขาของ LTS จะเปิดตัวทุก ๆ สองปี และจะได้รับการสนับสนุนตามปกติเป็นเวลา 5 ปี นอกเหนือจากนี้คุณจะได้รับการสนับสนุนเพิ่มเติมอีก 3 ปี คาดว่าจะมีการเปิดตัว LTS ของ MySQL 2024 ในฤดูใบไม้ผลิปี 8.4 หลังจากนั้นจะมีการสร้าง Innovation สาขา 9.0 ใหม่

การเปลี่ยนแปลงที่สำคัญใน MySQL 8.3:

  • ช่องโหว่ 25 รายการได้รับการแก้ไขแล้ว โดยช่องโหว่หนึ่งรายการ (CVE-2023-5363 ที่ส่งผลต่อ OpenSSL) สามารถถูกโจมตีจากระยะไกลได้ ปัญหาที่ร้ายแรงที่สุดที่เกี่ยวข้องกับการใช้โปรโตคอล Kerberos ถูกกำหนดระดับความรุนแรงไว้ที่ 8.8 ช่องโหว่ที่รุนแรงน้อยกว่าที่มีระดับความรุนแรง 6.5 ส่งผลต่อเครื่องมือเพิ่มประสิทธิภาพ, UDF, DDL, DML, การจำลองแบบ, ระบบสิทธิ์ และเครื่องมือการเข้ารหัส
  • บนแพลตฟอร์ม Linux ได้เพิ่มการรองรับตัวเชื่อมโยงแม่พิมพ์แล้ว หากต้องการเปิดใช้งาน จะมีการจัดเตรียมตัวเลือก “-DWITH_LD=mold|lld”
  • ข้อกำหนดสำหรับมาตรฐาน C++ ที่คอมไพลเลอร์รองรับได้เพิ่มขึ้นจาก C++17 เป็น C++20
  • การสนับสนุนสำหรับการสร้างด้วยไลบรารี Boost C++ ภายนอกถูกยกเลิกแล้ว - ขณะนี้มีเพียงไลบรารี Boost ในตัวเท่านั้นที่ใช้เมื่อรวบรวม MySQL CMake ได้ลบตัวเลือกการสร้าง WITH_BOOST, DOWNLOAD_BOOST และ DOWNLOAD_BOOST_TIMEOUT แล้ว
  • การสนับสนุน Build สำหรับ Visual Studio 2022 ถูกยกเลิกแล้ว ชุดเครื่องมือ Clang เวอร์ชันขั้นต่ำที่รองรับได้รับการยกจาก Clang 10 เป็น Clang 12
  • MySQL Enterprise Edition ได้เพิ่มการสนับสนุนสำหรับการรวบรวมการวัดและส่งข้อมูลทางไกลพร้อมหน่วยวัดเกี่ยวกับการทำงานของเซิร์ฟเวอร์ในรูปแบบ OpenTelemetry และการถ่ายโอนข้อมูลไปยังโปรเซสเซอร์เครือข่ายที่รองรับรูปแบบนี้
  • รูปแบบ GTID (ตัวระบุธุรกรรมทั่วโลก) ​​ที่ใช้ระหว่างการจำลองเพื่อระบุกลุ่มธุรกรรมได้รับการขยายแล้ว รูปแบบ GTID ใหม่คือ "UUID::NUMBER" (แทน "UUID:NUMBER") โดยที่ TAG คือสตริงที่กำหนดเองซึ่งอนุญาตให้กำหนดชื่อที่ไม่ซ้ำให้กับกลุ่มธุรกรรมเฉพาะเพื่อการประมวลผลและการแยกวิเคราะห์ที่ง่ายขึ้น
  • เพิ่มตัวแปรใหม่สองตัว "Deprecated_use_i_s_processlist_count" และ "Deprecated_use_i_s_processlist_last_timestamp" เพื่อติดตามการใช้งานของตาราง INFORMATION_SCHEMA.PROCESSLIST ที่เลิกใช้แล้ว
  • การตั้งค่าตัวแปรสภาพแวดล้อม AUTHENTICATION_PAM_LOG จะไม่ทำให้รหัสผ่านแสดงในข้อความวินิจฉัยอีกต่อไป (ค่า PAM_LOG_WITH_SECRET_INFO จำเป็นต้องกล่าวถึงรหัสผ่าน)
  • เพิ่มตาราง tp_connections พร้อมข้อมูลเกี่ยวกับการเชื่อมต่อแต่ละรายการในเธรดพูล
  • เพิ่มตัวแปรระบบ "explain_json_format_version" เพื่อเลือกเวอร์ชันรูปแบบ JSON ที่ใช้ในคำสั่ง "EXPLAIN FORMAT=JSON"
  • ในพื้นที่เก็บข้อมูล InnoDB ตัวเลือก "--innodb" และ "--skip-innodb" ซึ่งเลิกใช้แล้วในรุ่น MySQL 5.6 ได้ถูกลบออกไปแล้ว ปลั๊กอิน memcached สำหรับ InnoDB ซึ่งเลิกใช้แล้วใน MySQL 8.0.22 ได้ถูกลบออกแล้ว
  • ลบการตั้งค่าที่เกี่ยวข้องกับการจำลองและตัวเลือกบรรทัดคำสั่งบางส่วนที่เลิกใช้แล้วในรุ่นก่อนหน้า: "--slave-rows-search-algorithms", "--relay-log-info-file", "-relay-log-info-repository" ", "-master-info-file", "-master-info-repository", "log_bin_use_v1_events", "transaction_write_set_extraction", "group_replication_ip_whitelist", "group_replication_primary_member" ความสามารถในการใช้ตัวเลือก IGNORE_SERVER_IDS กับโหมดการจำลองแบบ GTID (gtid_mode=ON) ได้ถูกเอาออกแล้ว
  • การสนับสนุนฟังก์ชัน C API ถูกยกเลิกแล้ว: mysql_kill(), mysql_list_fields(), mysql_list_processes(), mysql_refresh(), mysql_reload(), mysql_shutdown(), mysql_ssl_set()
  • นิพจน์ "FLUSH HOSTS" ซึ่งเลิกใช้แล้วใน MySQL 8.0.23 ถูกยกเลิกแล้ว

ที่มา: opennet.ru

เพิ่มความคิดเห็น