MariaDB DBMS 10.4์˜ ์•ˆ์ • ๋ฆด๋ฆฌ์Šค

XNUMX๋…„๊ฐ„์˜ ๊ฐœ๋ฐœ๊ณผ XNUMX๋ฒˆ์˜ ์‚ฌ์ „ ์ถœ์‹œ ์ดํ›„ ์ค€๋น„ ์ƒˆ๋กœ์šด DBMS ๋ธŒ๋žœ์น˜์˜ ์ฒซ ๋ฒˆ์งธ ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค ๋งˆ๋ฆฌ์•„DB 10.4, ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์œ ์ง€ํ•˜๋Š” MySQL ๋ถ„๊ธฐ๊ฐ€ ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์ถ”๊ฐ€ ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„๊ณผ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์˜ ํ†ตํ•ฉ. ์‹ ๊ทœ ๋ธŒ๋žœ์น˜์— ๋Œ€ํ•œ ์ง€์›์€ 5๋…„ 2024์›”๊นŒ์ง€ XNUMX๋…„๊ฐ„ ์ œ๊ณต๋œ๋‹ค.

MariaDB ๊ฐœ๋ฐœ์€ ๊ฐœ๋ณ„ ๊ณต๊ธ‰์—…์ฒด๋กœ๋ถ€ํ„ฐ ๋…๋ฆฝ์ ์ธ ์™„์ „ํžˆ ๊ฐœ๋ฐฉ์ ์ด๊ณ  ํˆฌ๋ช…ํ•œ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค์— ๋”ฐ๋ผ ๋…๋ฆฝ์ ์ธ MariaDB ์žฌ๋‹จ์—์„œ ๊ฐ๋…ํ•ฉ๋‹ˆ๋‹ค. MariaDB๋Š” ๋งŽ์€ Linux ๋ฐฐํฌํŒ(RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian)์—์„œ MySQL ๋Œ€์‹  ์ œ๊ณต๋˜๋ฉฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ์—์„œ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์œ„ํ‚ค ๋ฐฑ๊ณผ, ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ SQL ะธ Nimbuzz.

์—ด์‡  ๊ฐœ๋Ÿ‰ ๋งˆ๋ฆฌ์•„DB 10.4:

  • ๋™๊ธฐ์‹ ๋‹ค์ค‘ ๋งˆ์Šคํ„ฐ ๋ณต์ œ ๊ธฐ์ˆ  ํฌํ•จ ๊ฐˆ๋ ˆ๋ผ 4์ด๋Š” ๋ชจ๋“  ๋…ธ๋“œ์—์„œ ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ๋Š” ํ™œ์„ฑ-ํ™œ์„ฑ ๋‹ค์ค‘ ๋งˆ์Šคํ„ฐ ํ† ํด๋กœ์ง€๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋™๊ธฐ์‹ ๋ณต์ œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋“  ๋…ธ๋“œ์— ํ•ญ์ƒ ์ตœ์‹  ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ๋ชจ๋“  ๋…ธ๋“œ์— ์ „ํŒŒ๋œ ํ›„์—๋งŒ ํŠธ๋žœ์žญ์…˜์ด ์ปค๋ฐ‹๋˜๋ฏ€๋กœ ํŠธ๋žœ์žญ์…˜ ์†์‹ค์ด ๋ณด์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ณต์ œ๋Š” ํ–‰ ์ˆ˜์ค€์—์„œ ๋ณ‘๋ ฌ ๋ชจ๋“œ๋กœ ์ˆ˜ํ–‰๋˜๋ฉฐ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ •๋ณด๋งŒ ์ „์†ก๋ฉ๋‹ˆ๋‹ค.
  • Unix ๊ณ„์—ด ์‹œ์Šคํ…œ์—์„œ๋Š” ์ธ์ฆ ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ๋‹‰์Šค ์†Œ์ผ“, ์‹œ์Šคํ…œ์— ์žˆ๋Š” ๊ณ„์ •์„ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ์ปฌ Unix ์†Œ์ผ“์„ ์‚ฌ์šฉํ•˜์—ฌ DBMS์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€๋จ ๊ธฐํšŒ ์‚ฌ์šฉ์ž์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ์— ์ˆ˜๋ช…์„ ํ• ๋‹นํ•œ ํ›„ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ๋งŒ๋ฃŒ๋œ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. "CREATE USER" ๋ฐ "ALTER USER" ์ž‘์—…์—์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•ด "PASSWORD EXPIRE INTERVAL N DAY"๋ผ๋Š” ํ‘œํ˜„์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€ ์ง€์› ์ฐจ๋‹จ "CREATE USER" ๋ฐ "ALTER USER" ์ž‘์—…์—์„œ "ACCOUNT LOCK" ํ‘œํ˜„์‹์„ ํ†ตํ•œ DBMS ์‚ฌ์šฉ์ž
  • ์‚ฌ์šฉ์ž ์ˆ˜๊ฐ€ ๋งŽ๊ฑฐ๋‚˜ ์•ก์„ธ์Šค ๊ทœ์น™์ด ์žˆ๋Š” ๊ตฌ์„ฑ์—์„œ ๊ถŒํ•œ ํ™•์ธ ์‹คํ–‰์ด ํฌ๊ฒŒ ๊ฐ€์†ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋‹จ์ข… mysql.user ๋ฐ mysql.host ํ…Œ์ด๋ธ”์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. mysql.global_priv ํ…Œ์ด๋ธ”์€ ์ด์ œ ๊ณ„์ •๊ณผ ์ „์—ญ ๊ถŒํ•œ์„ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ะ’ ํ”Œ๋Ÿฌ๊ทธ์ธ ์ž…์ฆ ์ถ”๊ฐ€ "SET PASSWORD" ํ‘œํ˜„์‹ ์ง€์›;
  • ์ถ”๊ฐ€๋จ ๊ฐ ๊ณ„์ •์— ๋Œ€ํ•ด ํ•˜๋‚˜ ์ด์ƒ์˜ ์ธ์ฆ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ(์‚ฌ์šฉ์ž๋ฅผ ํ”Œ๋Ÿฌ๊ทธ์ธ์œผ๋กœ ์ ์ง„์ ์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ์Œ) ed25519. mysql_install_db ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ root@localhost ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ด์ œ ๋‘ ๊ฐœ์˜ ์ธ์ฆ ํ”Œ๋Ÿฌ๊ทธ์ธ(unix_socket ๋ฐ mysql_native_password)์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.
  • InnoDB ์Šคํ† ๋ฆฌ์ง€๋Š” ์ปฌ๋Ÿผ์„ ์ฆ‰์‹œ ์‚ญ์ œ(ALTER TABLE ... DROP COLUMN ... ALGORITHM=INSTANT)ํ•˜๊ณ  ์ปฌ๋Ÿผ ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ์ž‘์—…์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋กค๋ฐฑ ์ž‘์—…์— ๋Œ€ํ•œ ์ดˆ๊ธฐ ๋กœ๊ทธ(redo ๋กœ๊ทธ)์˜ ํฌ๊ธฐ๊ฐ€ ๊ฐ์†Œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. innodb_encrypt_log์— ๋Œ€ํ•œ ํ‚ค ์ˆœํ™˜ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒดํฌ์„ฌ ํ™•์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ตฌํ˜„
    innodb_checksum_algorithm=full_crc32. VARCHAR ์œ ํ˜•์˜ ์ฆ‰๊ฐ์ ์ธ ํ™•์žฅ์„ ์ œ๊ณตํ•˜๊ณ  ์ธ๋ฑ์‹ฑ๋˜์ง€ ์•Š์€ ์—ด์— ๋Œ€ํ•œ ํ…์ŠคํŠธ ์ธ์ฝ”๋”ฉ ๋ณ€๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ํ–ฅ์ƒ๋œ ์ตœ์ ํ™” ํ”„๋กœ๊ทธ๋žจ. ์‹œ์Šคํ…œ ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด ํ™œ์„ฑํ™”๋œ ์ตœ์ ํ™” ํ”„๋กœ๊ทธ๋žจ ์ถ”์  ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ ํ™” ํ”„๋กœ๊ทธ๋žจ ์ถ”์ . ๊ธฐ๋ณธ ํฌํ•จ ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„๊ณผ ๋…๋ฆฝ์ ์œผ๋กœ ํ†ต๊ณ„๋ฅผ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
    ๋‘ ๊ฐ€์ง€ ์ƒˆ๋กœ์šด use_stat_tables ๋ชจ๋“œ(COMPLEMENTARY_FOR_QUERIES ๋ฐ PREFERABLY_FOR_QUERIES)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. optim_join_buffer_size ๋ชจ๋“œ๊ฐ€ ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ฒƒ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค ๊นƒ๋ฐœ rowid_filter ๋ฐ Condition_pushdown_from_having;

  • ํ˜„์žฌ ๋ฐ์ดํ„ฐ ์กฐ๊ฐ์„ ์ €์žฅํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด์ „์— ์ˆ˜ํ–‰๋œ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ •๋ณด๋„ ์ €์žฅํ•˜๋Š” ์‹œ์Šคํ…œ ๋ฒ„์ „ ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ ์ง€์›์ด ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜คํผ๋ ˆ์ด์…˜ ์‹œ๊ฐ„ ๋ฒ”์œ„ ํฌํ•จ;
  • ์„œ๋ฒ„๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜์ง€ ์•Š๊ณ ๋„ SSL ์ธ์ฆ์„œ๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ๋กœ์šด "FLUSH SSL" ๋ช…๋ น์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • "INSTALL PLUGIN", "UNINSTALL PLUGIN" ๋ฐ "UNINSTALL SONAME" ์ž‘์—…์— "IF NOT EXISTS" ๋ฐ "IF EXISTS" ํ‘œํ˜„์‹์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์—”์ง„์ด ์‚ฌ์šฉ๋˜๋Š” ๋ณด๊ด€์šฉ ์ถฉ๋Œ ๋ฐฉ์ง€ ์‹œ์Šคํ…œ ํ…Œ์ด๋ธ”์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•„๋ฆฌ์•„;
  • C++11 ํ‘œ์ค€ ์‚ฌ์šฉ์œผ๋กœ์˜ ์ „ํ™˜์ด ์ด๋ฃจ์–ด์กŒ์Šต๋‹ˆ๋‹ค(์›์ž์  ์—ฐ์‚ฐ ํฌํ•จ).
  • ์œ ๋‹ˆ์ฝ”๋“œ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ ์ •๋ ฌ ๋กœ์บ˜ ์†์„ฑ์˜ ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜์–ด ๋ฌธ์ž ์˜๋ฏธ์— ๋”ฐ๋ผ ์ •๋ ฌ ๊ทœ์น™๊ณผ ์ผ์น˜ ๋ฐฉ๋ฒ•์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€๋จ ์ž์‹ ๋งŒ์˜ ํ•„๋“œ ์œ ํ˜•์„ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ
  • ์ฐฝ ๋ชจ๋“œ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. UDF ํ•จ์ˆ˜ (์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜);
  • "FLUSH TABLES" ์ž‘์—…์—์„œ ๊ตฌํ˜„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํŒŒ์ผ์„ ๋ฐฑ์—…ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” "BACKUP LOCK" ๋ชจ๋“œ;
  • ์ถ”๊ฐ€๋จ "mysql"๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ช…๋ น(์˜ˆ: mysqldump ๋Œ€์‹  mariadump) ๋Œ€์‹  mariadb๋กœ ์‹œ์ž‘ํ•˜๋Š” ์„œ๋ฒ„ ๋ช…๋ น์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€