mysqlpump ์ ํธ๋ฆฌํฐ๋ MySQL 5.7๊ณผ ํจ๊ป ๋์
๋์์ผ๋ฉฐ ์ด์ ๋ฒ์ ์์ ์ฌ์ฉํ ์ ์๋ ์ด์ mysqldump ์ ํธ๋ฆฌํฐ์ ๋ ๋น ๋ฅธ ๋์์
๋๋ค. mysqldump์ ์ ์ฌํ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์์ง๋ง, mysqlpump ์ ํธ๋ฆฌํฐ๋ ์ด์ mysqldump ์ ํธ๋ฆฌํฐ์์ ์ฌ์ฉํ ์ ์๋ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋๊ท๋ชจ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ฐฑ์
ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ ์ฒด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋๋ ์ผ๋ถ ์ผ๋ถ ๊ฐ์ฒด๋ง ๋ฐฑ์
ํ ์ ์์ต๋๋ค.
mysqlpump๋?
MySQL 5.7์ ๋์
๋ mysqlpump๋ ์๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ๋ณต์ํ๊ธฐ ์ํด ์คํํ ์ ์๋ SQL ๋ฌธ ์ธํธ๊ฐ ์์ฑ๋๋ ๋
ผ๋ฆฌ์ ๋ฐฑ์
์ ์ํํ๋ ํด๋ผ์ด์ธํธ ์ ํธ๋ฆฌํฐ์
๋๋ค. ๋ณ๋ ฌ ์ฒ๋ฆฌ ๋ฐ ๋ฉํฐ์ค๋ ๋ฉ ์ง์์ ํตํด mysqldump์์ ๋๋ฆฐ ๋ฐฑ์
๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ์ผ๋ถ ๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ํ
๋ผ๋ฐ์ดํธ์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋จํ ํ
์คํธ ํ์ผ๋ก ๋ด๋ณด๋ด๋ ๋ฐ ๋๋ฌด ์ค๋ ๊ฑธ๋ฆด ์ ์์ต๋๋ค. mysqlpump ์ ํธ๋ฆฌํฐ๋ ์ฌ๋ฌ ์ค๋ ๋๋ฅผ ๋ณ๋ ฌ๋ก ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ํ
์คํธ ํ์ผ๋ก ํจ์ฌ ๋ ๋น ๋ฅด๊ฒ ์ ์กํฉ๋๋ค. ๋ช ๋
์ ์ ๋์
๋์๊ธฐ ๋๋ฌธ์, MySQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ๋ฐ์๋ ์ต๊ทผ ๋ช ๋
๋์ ๋ณด๋ค ์์ ์ ์ธ mysqlpump ์ ํธ๋ฆฌํฐ๋ฅผ ์ ๊ณตํ๊ณ ๋ ๋ง์ ์ต์
์ ์ ๊ณตํ๊ธฐ ์ํด ๊ฐ์ ํ์ต๋๋ค. mysqlpump ์ ํธ๋ฆฌํฐ๋ ์๋๊ฐ ๋ ๋น ๋ฅด์ง๋ง mysqldump์์ ๋ชจ๋ ์ต์
์ ์ฌ์ฉํ ์ ์๋ ๊ฒ์ ์๋๋ฏ๋ก ๊ด๋ฆฌ์๊ฐ MySQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ฒ ๋ด๋ณด๋ด์ผ ํ๋ ๊ฒฝ์ฐ์๋ง ์ฌ์ฉ๋ฉ๋๋ค.
mysqlpump ์ค์น ๋ฐฉ๋ฒ
MySQL 5.7 ์ด์์ด ์ค์น๋์ด ์๋ ๊ฒฝ์ฐ, ์ด๋ฏธ mysqlpump์ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์ ํธ๋ฆฌํฐ๋ MySQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ง๊ณผ ํจ๊ป ์ ๊ณต๋๋ฏ๋ก ์ค์น๊ฐ ํ์ํ์ง ์์ต๋๋ค. ์ด์ ๋ฒ์ ์ MySQL์ด ์๋ ๊ฒฝ์ฐ, mysqlpump๋ฅผ ์ฌ์ฉํ ์ ์์ง๋ง mysqldump์ด ๋์์
๋๋ค.
Windows์์ MySQL์ ์ฌ์ฉํ๋ Linux์์ MySQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ง์์ mysqlpump ์ ํธ๋ฆฌํฐ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. Windows ๋๋ Linux์์ ๋ช
๋ น์ค ์ ํธ๋ฆฌํฐ๋ฅผ ์ด๊ณ ๋ค์ํ ๋งค๊ฐ๋ณ์ ์ต์
์ผ๋ก โmysqlpumpโ๋ฅผ ์
๋ ฅํ์ฌ ์ ํธ๋ฆฌํฐ๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ด๋ณด๋ด๋ ๋ฐฉ์์ ์ฌ์ฉ์ ์ ์ํ ์ ์์ต๋๋ค.
mysqlpump์ ๊ธฐ๋ณธ ์ฉ๋ ๋ฐ ์์
์๋ฒ์ MySQL์ด ์ค์น๋์ด ์์ผ๋ฉด ๋ช
๋ น์ค์์ mysqlpump์ ์ก์ธ์คํ ์ ์์ต๋๋ค. Windows ๋๋ Linux์์ ๋ช
๋ น์ค์ ์ด๋ฉด ๋ค์ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ฅผ ๋ด๋ณด๋ผ ์ ์์ต๋๋ค.
mysqlpump --all-databases --user=root --password > full_backup.sql
์์ ๋ช
๋ น์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ฅผ full_backup.sql ํ์ผ๋ก ๋ด๋ณด๋
๋๋ค. ์ฌ์ฉํ๋ ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ์ํธ๋ ๋ด๋ณด๋ด๋ ค๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ก์ธ์คํ ์ ์์ด์ผ ํ๋ฏ๋ก, mysqlpump ์ ํธ๋ฆฌํฐ๋ฅผ ์ฌ์ฉํ ๋๋ ๋์ ๊ถํ์ ๊ณ์ ์ด ์์ด์ผ ํฉ๋๋ค.
MySQL ์ ์ด๋ฏธ ์ธ์ฆ๋ ๊ฒฝ์ฐ, ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ์ํธ๋ฅผ ์ง์ ํ์ง ์๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ฅผ ๋คํํ ์๋ ์์ต๋๋ค.
mysqlpump --all-databases > full_backup.sql
๋จ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋คํํ๋ ค๋ฉด ๋ค์ ๋ช
๋ น์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
mysqlpump myDB
์์ ๋ช
๋ น์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ ํด๋น ๋ฐ์ดํฐ๋ฅผ myDB๋ก ๋ด๋ณด๋
๋๋ค. ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ์ ๊ณต๋ฐฑ ๋ฌธ์๋ก ๊ตฌ๋ถํ์ฌ ์ฌ๋ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ด๋ณด๋ผ ์ ์์ต๋๋ค.
๊ด๋ฆฌ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์์ ํน์ ํ
์ด๋ธ๋ง ๋ด๋ณด๋ด๋ ค๊ณ ํ ์ ์์ต๋๋ค. mysqlpump๋ก ํ
์ด๋ธ ๋ฐ์ดํฐ ๋คํ์ ๋ค์ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ์ํํ ์ ์์ต๋๋ค.
mysqlpump myDB Customer Order
์์ ์์์ mysqlpump ๋ฌธ์ myDB ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๊ณ ๊ฐ ๋ฐ ์ฃผ๋ฌธ ํ
์ด๋ธ์ ๋ด๋ณด๋
๋๋ค. ํ
์ด๋ธ ์ด๋ฆ์ ๊ณต๋ฐฑ ๋ฌธ์๋ก ๊ตฌ๋ถ๋ฉ๋๋ค.
์ํฐํ๋ผ์ด์ฆ ๊ด๋ฆฌ์๋ ์ฐจ๋ฑ ๋ฐ ์ฆ๋ถ ๋ฐฑ์
์ ํตํด ๋งค๋ฒ ์ ์ฒด ๋ฐฑ์
์ ์ํํ์ง ์์ต๋๋ค. ์ฐจ๋ฑ ๋ฐฑ์
์๋ ๋ง์ง๋ง ์ ์ฒด ๋ฐฑ์
์ดํ ๋ณ๊ฒฝ๋ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ฉ๋๋ค. ์ฆ๋ถ ๋ฐฑ์
์ ๋ง์ง๋ง ๋ฐฑ์
์ดํ ๋ณ๊ฒฝ๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ฆ๋ถ ๋๋ ์ ์ฒด๋ก ์ ์ฅํฉ๋๋ค. ์ด ๋ ๊ฐ์ง ๋ฐฑ์
์ ํ์ mysqlpump์์๋ ๊ฐ๋ฅํ์ง ์์ผ๋ฏ๋ก, ์ ํธ๋ฆฌํฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํด๋น ๊ฐ์ฒด์ ์ ์ฒด ๋๋ ๋ถ๋ถ ๋ฐฑ์
์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค.
mysqlpump์ ๊ณ ๊ธ ์ฌ์ฉ
mysqlpump ์ ํธ๋ฆฌํฐ๋ ๊ณ ๊ธ ์ฌ์ฉ์ ์ํ ๋ช ๊ฐ์ง ์ต์
์ ์ ๊ณตํฉ๋๋ค. ์ฒซ ๋ฒ์งธ๋ ์์ถ ์ถ๋ ฅ์
๋๋ค. ๋๊ท๋ชจ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฒฝ์ฐ, ์์ถ๋ ์ถ๋ ฅ์ ์ฌ์ฉํ๋ฉด ๋ฐฑ์
ํ์ผ์ ์ ์ฅํ๋ ๋ฐ ํ์ํ ๋๋ผ์ด๋ธ ์ฉ๋์ด ์ค์ด๋ญ๋๋ค. ํนํ ํ ๋ฌ ๋์ ์ ์ฒด ๋ฐฑ์
์ ์ํด ์ฌ๋ฌ ๊ฐ์ ๋์ฉ๋ ํ์ผ์ด ์ ์ฅ๋๋ ์ํฐํ๋ผ์ด์ฆ ํ๊ฒฝ์์ ์ ์ฉํฉ๋๋ค.
mysqlpump๋ฅผ ์ฌ์ฉํ ๋๋ ์์ถ ์๊ณ ๋ฆฌ์ฆ์ ์ง์ ํด์ผ ํฉ๋๋ค. ์ฃผ๋ก ์๋์ ์ฌ์ฉ๋๋ LZ4๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. zlib ์๊ณ ๋ฆฌ์ฆ์ gzip ๋๋ zlib ๋ํผ๋ฅผ ์ฌ์ฉํ๋ ๊ด๋ฆฌ์๋ค์๊ฒ ๋ ์ธ๊ธฐ๊ฐ ์์ต๋๋ค. ์ด ์์์๋ gzip ํ์ผ์ ์ถ๋ ฅํ๋ ๋ฐ zlib ์๊ณ ๋ฆฌ์ฆ์ด ์ฌ์ฉ๋ฉ๋๋ค.
mysqlpump --compress --compress-output=zlib myDB > myDB_compressed.sql.gzip
๊ท์ ์ ์ค์ํ๋ ค๋ฉด ์ ์ฅ๋ ๋ฐฑ์
์ ์ํธํํด์ผ ํฉ๋๋ค. ๋๋ผ์ด๋ธ์ ์ ์ฅ๋ ๋ฏธ์ฌ์ฉ ๋ฐ์ดํฐ๋ ๋ฏผ๊ฐํ ๊ฐ์ธ์๋ณ์ ๋ณด(PII), ์ฌ๋ฌด ๋ฐ์ดํฐ ๋๋ ๊ท์ ์ค์์ ํด๋นํ๋ ๋ชจ๋ ๋ฐ์ดํฐ์ธ ๊ฒฝ์ฐ ์ํธํํด์ผ ํฉ๋๋ค. ์ด ์์์๋ mysqlpump ๋ช
๋ น์ด ํ์ดํ๋ก ์ฐ๊ฒฐ๋๊ณ OpenSSL์ ์ฌ์ฉํ์ฌ ์ํธํ๋ ์ถ๋ ฅ์ ์์ฑํฉ๋๋ค.
mysqlpump --all-databases | opensslย enc -aes-256-cbc -k yourpassword > backup.xb.enc
mysqlpump์ ํ ๊ฐ์ง ์ฅ์ ์ ํ
์ด๋ธ๊ณผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ณ๋ ฌ๋ก ๋คํํ ์ ์๋ค๋ ์ ์
๋๋ค. ์ฆ, ์ฌ๋ฌ ์ปดํจํฐ ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋ด๋ณด๋ผ ์ ์์ต๋๋ค. ๋ณ๋ ฌ ๋คํ๋ ๊ฐ ๊ฐ์ฒด๊ฐ ํ๋์ฉ ์๋ฃ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ๋์ ๋์์ ๋ฐ์ํ๋ ์ฌ๋ฌ ๋ด๋ณด๋ด๊ธฐ๋ผ๊ณ ์๊ฐํ์ธ์. ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ํตํด ๊ด๋ฆฌ์๋ ๋ฐฑ์
์ ์ฐจ๋ฅผ ๊ฐ์ํํ ์ ์์ต๋๋ค.
mysqlpump์ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ด๋ณด๋ด๊ธฐ ์ค์ ์ฌ์ฉํ ์ค๋ ๋ ์๋ฅผ ์ ์ํด์ผ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ 2์ด์ง๋ง ๋ ์์ธํ ์ ์ํ ์ ์์ต๋๋ค. ๋ค์ ๋ฌธ์ 4๊ฐ์ ์ค๋ ๋๋ฅผ ์ฌ์ฉํ์ฌ myDB ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๊ณ ๊ฐ ๋ฐ ์ฃผ๋ฌธ์ด๋ผ๋ ๋ ๊ฐ์ ํ
์ด๋ธ์ ๋ด๋ณด๋
๋๋ค.
Mysqlpump -default-parallelism=4 myDB Customer Order > full_backup.sql
mysqlpump vs. mysqldump
mysqlpump์ ๋ณ๋ ฌ ์ฒ๋ฆฌ ์ต์
์ mysqldump์์ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ๊ด๋ฆฌ์๋ mysqlpump๋ฅผ ํตํด ๋ ๋น ๋ฅธ ๋ฐฑ์
์๋๋ฅผ ์ป์ ์ ์์ต๋๋ค. mysqlpump์ ์ฅ์ ์ ๋๊ท๋ชจ ์ํฐํ๋ผ์ด์ฆ ํ๊ฒฝ์์ ๋ ๋น ๋ฅธ ๋ฐฑ์
์ด ๊ฐ๋ฅํ๋ค๋ ์ ์
๋๋ค. ๋ฐฑ์
์ ์ํํ๋ ๋ฐ ๋ช ๋ถ์ด ๊ฑธ๋ฆฌ๋ ๋์ , mysqlpump์ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ ๋ฐ์ดํฐ ๋ฐฑ์
์ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋ช ๋ถ์ผ๋ก ์ค์ผ ์ ์์ต๋๋ค.
mysqldump์ ๋ชจ๋ ์ต์
์ ์ต์ mysqlpump์์ ์ฌ์ฉํ ์ ์๋ ๊ฒ์ ์๋๋ฉฐ, ์ฌ์ฉํ๋ ค๋ฉด MySQL 5.7 ์ด์์ด ์ค์น๋์ด ์์ด์ผ ํฉ๋๋ค. ๊ฐ์ ธ์ค๊ธฐ๋ ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฏ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ์๋์ ์ด์ ์ ๋๋ฆด ์ ์์ต๋๋ค. ๊ด๋ฆฌ์๋ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ๋ฅผ ์ํด ๋์ฒด ์ ํธ๋ฆฌํฐ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
๋ฐฑ์
์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์ ํ์์ ์ธ ๋ถ๋ถ์ด๋ฉฐ, mysqlpump ์ ํธ๋ฆฌํฐ๋ ํ๋ก์ธ์ค๋ฅผ ํจ์ฌ ๋ ๋น ๋ฅด๊ฒ ๋ง๋ญ๋๋ค. ์ ์ฒด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ผ๋ถ ๊ฐ์ฒด๋ฅผ ๋น ๋ฅด๊ฒ ๋ฐฑ์
ํ๊ธฐ ์ํด mysqlpump๋ ์คํค๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋ด๋ณด๋ด๊ณ , ์ํธํ ๋ฐ ์์ถํ๋ฉฐ, ๋ณ๋ ฌ ์ฒ๋ฆฌ๋ฅผ ํตํด ์ฌ๋ฌ ์ค๋ ๋๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฒด ๋ฐฑ์
์ ์์ฑํ๊ฑฐ๋ ์ฌ๋ฌ ํ
์ด๋ธ์ ๋ด๋ณด๋ด์ผ ํ ๋๋ง๋ค ์ฌ์ฉํ ์ ์์ต๋๋ค.