MariaDB Setting #2
Mariadb Setting
https://mariadb.com/kb/en/library/innodb-system-variables/#innodb_log_file_size
[mysqld] port=16033 innodb_buffer_pool_size=8058993459 innodb_log_file_size = 1104857600 innodb_log_buffer_size = 8388608 innodb_thread_concurrency = 16 innodb_flush_log_at_trx_commit = 2 innodb_flush_method = O_DIRECT innodb_write_io_threads = 4 innodb_read_io_threads = 4 transaction_isolation = READ-COMMITTED general_log=1 general_log_file=Cloud.log skip-name-resolve max_allowed_packet=512M
-
innodb_buffer_pool_size ์ค๋ช : InnoDB ๋ฒํผ ํ ํฌ๊ธฐ (๋ฐ์ดํธ)์ ๋๋ค. ์ ์ฒด / ์ฃผ๋ก XtraDB / InnoDB ํ ์ด๋ธ์ด์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ์์ ์กฐ์ ํ๋ ๊ธฐ๋ณธ ๊ฐ์ ์ด๋ฌํ ํ๊ฒฝ์์ ์ด ๋ฉ๋ชจ๋ฆฌ์ 80 %๊น์ง ์ค์ ํ ์ ์์ต๋๋ค. 2GB ์ด์์ผ๋ก ์ค์ ํ๋ฉด innodb_buffer_pool_instances๋ ์กฐ์ ํด์ผํฉ๋๋ค. ์ด ๋ณ์ ์ค์ ๋ฐ ๋์ ์ผ๋ก Innodb ๋ฒํผ ํ ํฌ๊ธฐ ์ค์ ์ ๋ํ ์์ธํ ๋ด์ฉ์ XtraDB / InnoDB ๋ฒํผ ํ์ ์ฐธ์กฐํ์ญ์์ค. Commandline: โinnodb-buffer-pool-size=# Scope: Global Dynamic: Yes (>= MariaDB 10.2.2), No (<= MariaDB 10.2.1) Data Type: numeric Default Value: 134217728 (128MB) Range: 5242880 (5MB) to 9223372036854775807 (8192PB)
-
innodb_buffer_pool_instances ์ค๋ช : innodb_buffer_pool_size๊ฐ 1GB ์ด์์ผ๋ก ์ค์ ๋ ๊ฒฝ์ฐ innodb_buffer_pool_instances๋ InnoDB ๋ฒํผ ํ์์ด ์ฌ๋ฌ ์ธ์คํด์ค๋ก ๋๋๋๋ค. MariaDB 5.5์์๋ ๊ธฐ๋ณธ๊ฐ์ด 1์ด์ง๋ง ๋ฒํผ ํ์ด ๊ธฐ๊ฐ ๋ฐ์ดํธ ์ธ ๋๊ท๋ชจ ์์คํ ์ ๊ฒฝ์ฐ ๋ง์ ์ธ์คํด์ค๊ฐ ๊ฒฝํฉ ๋์์ฑ์ ์ค์ด๋ ๋ฐ ๋์์ด๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ MariaDB 10์์ 8์ ๋๋ค (Windows 32 ๋นํธ๋ innodb_buffer_pool_size์ ๋ฐ๋ผ ๋ค๋ฅด๊ฑฐ ๋ MariaDB 10.2.2์์๋ innodb_buffer_pool_size <1GB ์ธ ๊ฒฝ์ฐ 1๋ก ์ค์ ๋จ). ๊ฐ ์ธ์คํด์ค๋ ์์ฒด ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๊ด๋ฆฌํ๊ณ ์ด ๋ฒํผ ํ ํฌ๊ธฐ์ ๋์ผํ ๋ถ๋ถ์ ์ฐจ์งํ๋ฏ๋ก ์๋ฅผ ๋ค์ด innodb_buffer_pool_size๊ฐ 4GB์ด๊ณ innodb_buffer_pool_instances๊ฐ 4๋ก ์ค์ ๋๋ฉด ๊ฐ ์ธ์คํด์ค๋ 1GB๊ฐ๋ฉ๋๋ค. ๊ฐ ์ธ์คํด์ค์ ํฌ๊ธฐ๋ 1GB ์ด์์ด์ด์ผํฉ๋๋ค. Commandline: โinnodb-buffer-pool-instances=# Scope: Global Dynamic: No Data Type: numeric Default Value: <= MariaDB 10.0.3: 1 Default Value: >= MariaDB 10.0.4: 8, 1 (>= MariaDB 10.2.2 if innodb_buffer_pool_size < 1GB), or dependent on innodb_buffer_pool_size (Windows 32-bit) Introduced: MariaDB 5.5.20
-
innodb_log_file_size ์ค๋ช : ๋ก๊ทธ ๊ทธ๋ฃน์์๋ ๊ฐ InnoDB ๋ฆฌ๋ ๋ก๊ทธ ํ์ผ์ ํฌ๊ธฐ (๋ฐ์ดํธ)์ ๋๋ค. ๊ฒฐํฉ ๋ ํฌ๊ธฐ๋ MariaDB 10.0 ์ด์ ์๋ 4GB๋ฅผ ์ด๊ณผ ํ ์ ์์ผ๋ฉฐ MariaDB 10.0 ์ด์์์๋ 512GB๋ฅผ ์ด๊ณผ ํ ์ ์์ต๋๋ค. ๊ฐ์ด ํด์๋ก ํ๋ฌ์ ๊ฒ์ฌ ์ ํ๋์ผ๋ก ์ธํ ๋์คํฌ I / O๊ฐ ์ค์ด๋ค์ง ๋ง ์ถฉ๋๋ก ์ธํ ๋ณต๊ตฌ ์๋๊ฐ ๋๋ ค์ง๋๋ค. Commandline: โinnodb-log-file-size=# Scope: Global Dynamic: No Data Type: numeric Default Value: 50331648 (48MB) (from MariaDB 10.0), 5242880 (5MB) (before MariaDB 10.0) Range: 1048576 to 512GB (1MB to 512GB) (>= MariaDB 10.0), 1048576 to 4294967295 (1MB to 4096MB) (<= MariaDB 5.5),
-
innodb_log_buffer_size ์ค๋ช : InnoDB ๋ฆฌ๋ ๋ก๊ทธ ํ์ผ์ ๋์คํฌ์ ๊ธฐ๋กํ๊ธฐ์ํ ๋ฒํผ ํฌ๊ธฐ (๋ฐ์ดํธ)์ ๋๋ค. ์ด๋ฅผ ๋๋ฆฌ๋ฉด ์ปค๋ฐํ๊ธฐ ์ ์ ๋์คํฌ I / O๋ฅผ ์ํ ํ ํ์์์ด ๋ ํฐ ํธ๋์ญ์ ์ ์คํํ ์ ์์ต๋๋ค. Commandline: โinnodb-log-buffer-size=# Scope: Global Dynamic: No Data Type: numeric Default Value: 16777216 (16MB) >= MariaDB 10.1.9, 8388608 (8MB) <= MariaDB 10.1.8 Range: 262144 to 4294967295 (256KB to 4096MB)
-
innodb_thread_concurrency ์ค๋ช :์ด ์ค๋ ๋ ์์ ๋๋ฌํ๋ฉด (์ ๊ธ ๋๊ธฐ์ค์ธ ์ค๋ ๋ ์ ์ธ) XtraDB / InnoDB๋ ์คํ์ค์ธ ์ค๋ ๋ ์๋ฅผ ์ ํํ๊ธฐ ์ํด ์ ์ค๋ ๋๋ฅผ ์คํ์์ํ ์ ์ ์ ์ถ ํ์ ๋๊ธฐ ์ํ๋ก ๋ก๋๋ค. ๋์์. ๊ธฐ๋ณธ๊ฐ ์ธ 0์ ์ค์ ํ๋ฉด ํ์ํ๋งํผ ๋ง์ ์ค๋ ๋๊ฐ ํ์ฉ๋ฉ๋๋ค. ๊ถ์ฅ ์ค์ ์ CPU ์์ 2๋ฅผ ๋ํ ๋์คํฌ ์์ ๋๋ค. Commandline: โinnodb-thread-concurrency=# Scope: Global Dynamic: Yes Data Type: numeric Default Value: 0 Range: 0 to 1000
-
innodb_flush_log_at_trx_commit ์ค๋ช : ๊ฐ์ฅ ๋์ ์์ค์ ๋ด๊ฒฐํจ์ฑ์ ์ํด sync_binlog = 1๊ณผ ํจ๊ป 1๋ก ์ค์ ํ์ญ์์ค. innodb_use_global_flush_log_at_trx_commit์ ๊ฐ์์ด ๋ณ์๋ฅผ SET ๋ฌธ์ผ๋ก ์ฌ์ค์ ํ ์ ์๋์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํฉ๋๋ค. 1 ๊ธฐ๋ณธ์ ์ผ๋ก ๋ก๊ทธ ๋ฒํผ๋ InnoDB ๋ฆฌ๋ ๋ก๊ทธ ํ์ผ์ ๊ธฐ๋ก๋๊ณ ๊ฐ ํธ๋์ญ์ ํ์ ๋์คํฌ๋ก ํ๋ฌ์๋ฉ๋๋ค. ์ด๊ฒ์ ์์ ํ ACID ์ค์๋ฅผ ์ํด ํ์ํฉ๋๋ค. 0 ์ปค๋ฐ์ ์ํ๋๋ ์์ ์ด ์์ต๋๋ค. ์คํ๋ ค ๋ก๊ทธ ๋ฒํผ๋ 1 ์ด์ ํ ๋ฒ์ฉ InnoDB ๋ฆฌ๋ ๋ก๊ทธ์ ๊ธฐ๋ก๋๊ณ ํ๋ฌ์๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ฑ๋ฅ์ ํฅ์๋์ง๋ง ์๋ฒ ์ถฉ๋๋ก ์ธํด ๋ง์ง๋ง ํธ๋์ญ์ ์ด ์ง์์ง ์ ์์ต๋๋ค. 2 ๊ฐ ์ปค๋ฐ ํ์ ๋ก๊ทธ ๋ฒํผ๊ฐ InnoDB ๋ฆฌ๋ ๋ก๊ทธ์ ๊ธฐ๋ก๋์ง๋ง ํ๋ฌ์ฑ์ 1 ์ด์ ํ ๋ฒ ๋ฐ์ํฉ๋๋ค. ์ฑ๋ฅ์ ์ฝ๊ฐ ๋์์ง์ง๋ง OS ๋๋ ์ ์ ์ผ๋ก ์ธํด ๋ง์ง๋ง ์ด์ ํธ๋์ญ์ ์ด ์์ค ๋ ์ ์์ต๋๋ค. 3 (MariaDB 10.0์์) MariaDB 5.5 ๊ทธ๋ฃน ์ปค๋ฐ (๊ทธ๋ฃน ์ปค๋ฐ ๋น 3 ๊ฐ์ ๋๊ธฐํ)์ ์๋ฎฌ๋ ์ดํธํฉ๋๋ค. Binlog ๊ทธ๋ฃน ์ปค๋ฐ ๋ฐ innodb_flush_log_at_trx_commit์ ์ฐธ์กฐํ์ญ์์ค. Commandline: โinnodb-flush-log-at-trx-commit[=#] Scope: Global Dynamic: Yes Data Type: enumeration Default Value: 1 Valid Values: 0, 1, 2 or 3 (from MariaDB 10.0)
-
innodb_flush_method ์ค๋ช : XtraDB / InnoDB ํ๋ฌ์ฑ ๋ฐฉ๋ฒ. Windows๋ ํญ์ async_unbuffered๋ฅผ ์ฌ์ฉํ๋ฏ๋ก์ด ๋ณ์๋ ์ ์ฉ๋์ง ์์ต๋๋ค. ์ ๋์ค์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก fsync ()๊ฐ ๋ฐ์ดํฐ์ ๋ก๊ทธ๋ฅผ ํ๋ฌ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ด ๋ณ์๋ฅผ ์กฐ์ ํ๋ฉด ์ฑ๋ฅ์ด ํฅ์ ๋ ์ ์์ง๋ง ํ์ผ ์์คํ ๋ง๋ค ๋์์ด ํฌ๊ฒ ๋ค๋ฅด๋ฉฐ ์ผ๋ถ ์ํฉ์์๋ ๊ธฐ๋ณธ๊ฐ์ ๋ณ๊ฒฝํ๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฏ๋ก ์กฐ์ ํ๊ธฐ ์ ์ ํ ์คํธํ๊ณ ๋ฒค์น๋งํนํ์ญ์์ค. MariaDB์์ Windows๋ Unix ๋ฉ์๋๋ฅผ ์ธ์ํ๊ณ ์ฌ๋ฐ๋ฅด๊ฒ ์ฒ๋ฆฌํ์ง๋ง, ์๋ฌด๊ฒ๋ ์ง์ ํ์ง ์์ผ๋ฉด ๋ชจ๋ ํ์ผ์ ๋ํด ์์ฒด ๊ธฐ๋ณธ ๋ฒํผ๋ง๋์ง ์์ ์ฐ๊ธฐ (O_DIRECT์ ์๋ ๋ก๊ทธ) + ๋๊ธฐํ (์ : FileFlushBuffers ())๋ฅผ ์ฌ์ฉํฉ๋๋ค. O_DSYNC-O_DSYNC๋ ๋ก๊ทธ๋ฅผ ์ด๊ณ ํ๋ฌ์ํ๊ณ fsync ()๋ ๋ฐ์ดํฐ ํ์ผ์ ํ๋ฌ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. O_DIRECT-O_DIRECT ๋๋ directio ()๋ ๋ฐ์ดํฐ ํ์ผ์ ์ฌ๋ ๋ฐ ์ฌ์ฉ๋๊ณ fsync ()๋ ๋ฐ์ดํฐ์ ๋ก๊ทธ๋ฅผ ํ๋ฌ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. fsync-์ ๋์ค ๊ธฐ๋ณธ๊ฐ. ์ง์ ์ง์ ํ ์ ์์ง๋ง Unix์์ ๋ณ์๋ฅผ ์ค์ ํ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก fsync ()๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. O_DIRECT_NO_FSYNC-MariaDB 10.0์์ ๋์ ๋์์ต๋๋ค. I / O๋ฅผ ๋น์ฐ๋ ๋์ O_DIRECT๋ฅผ ์ฌ์ฉํ์ง๋ง ๋์ค์ fsync ()๋ฅผ ๊ฑด๋ ๋๋๋ค. XFS ํ์ผ ์์คํ ์๋ ์ ํฉํ์ง ์์ต๋๋ค. ALL_O_DIRECT-MariaDB 5.5์ ๋์ ๋์์ผ๋ฉฐ XtraDB์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. ๋ฐ์ดํฐ์ ๋ก๊ทธ๋ฅผ ๋ชจ๋ ์ฌ๋ ๋ฐ O_DIRECT๋ฅผ ์ฌ์ฉํ๊ณ ๋ฐ์ดํฐ๋ ํ๋ฌ์ํ์ง๋ง fsync ()๋ ๋ก๊ทธ๋ฅผ ํ๋ฌ์ํ์ง ์์ต๋๋ค. ํฐ InnoDB ํ์ผ ๋ง ์ฌ์ฉํ๋ฉด ์ฑ๋ฅ์ด ์ ํ ๋ ์ ์์ต๋๋ค. ext4 ํ์ผ ์์คํ ์์ innodb_log_block_size๋ฅผ 4096์ผ๋ก ์ค์ ํ์ญ์์ค. ์ด๊ฒ์ ext4์ ๊ธฐ๋ณธ ๋ก๊ทธ ๋ธ๋ก ํฌ๊ธฐ์ด๋ฉฐ ์ ๋ ฌ๋์ง ์์ AIO / DIO ๊ฒฝ๊ณ ๋ฅผ ํผํฉ๋๋ค. ๋ฒํผ๋ง๋์ง ์์-Windows ์ ์ฉ ๊ธฐ๋ณธ๊ฐ async_unbuffered-Windows ์ ์ฉ, ๋ฒํผ๋ง๋์ง ์์ ๋ณ๋ช normal-Windows ์ ์ฉ, fsync์ ๋ณ๋ช Commandline: โinnodb-flush-method=name Scope: Global Dynamic: No Data Type: enumeration (>= MariaDB 10.3.7), string (<= MariaDB 10.3.6) Default Value: fsync (>= MariaDB 10.3.7) Not set (<= MariaDB 10.3.6) Valid Values: Unix: fsync, O_DSYNC, O_DIRECT, O_DIRECT_NO_FSYNC (>=MariaDB 10.0), ALL_O_DIRECT (>= MariaDB 5.5 to <= MariaDB 10.1, XtraDB only) Windows: unbuffered, async_unbuffered, normal
-
innodb_write_io_threads ์ค๋ช : XtraDB / InnoDB ์ฐ๊ธฐ๋ฅผ์ํ I / O ์ค๋ ๋ ์. ๋๋ฌผ์ง๋ง ์์คํ ํ๊ณ๋ฅผ ์ด๊ณผํ์ง ์๋๋ก ์ฌ๋ฌ MariaDB ์๋ฒ๋ฅผ ์คํํ๋ Linux ์์คํ ์์์ด ๊ธฐ๋ณธ๊ฐ์ ์ค์ฌ์ผ ํ ์๋ ์์ต๋๋ค. Commandline: โinnodb-write-io-threads=# Scope: Global Dynamic: No Data Type: numeric Default Value: 4 Range: 1 to 64