๊ฐ์
Database Migration Service๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ฌ์ฉํ์ฌ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค์์ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๋ก ๋ฐ์ดํฐ๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํฉ๋๋ค.
๊ธฐ์กด ๋์ ์ธ์คํด์ค์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ๋ง๋ค๊ธฐ์๋ ๋ค์์ด ํฌํจ๋ฉ๋๋ค.
- ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ค์ ์ ์
- ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ํ๋กํ ์ ํ
- ๊ธฐ์กด ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค ์ ํ
- ๊ธฐ์กด ์ธ์คํด์ค๋ฅผ ๊ฐ๋ฑํ์ฌ ์ฝ๊ธฐ ๋ณต์ ๋ณธ์ผ๋ก ๋ณํ
- ์์ค ๋ฐ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค ๊ฐ์ ์ฐ๊ฒฐ ์ค์
- ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ํ ์คํธํ์ฌ ์์ ์ ๋ํด ์ ๊ณตํ ์ฐ๊ฒฐ ์ ๋ณด๊ฐ ์ ํจํ์ง ํ์ธํฉ๋๋ค.
Database Migration Service ์ธ๋ถ์์ ์์ฑ๋ ๋์ ์ธ์คํด์ค๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ค๋ ๊ฒฝ์ฐ ๊ณ ๋ คํด์ผ ํ ๋ช ๊ฐ์ง ์ ํ์ฌํญ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด Cloud SQL ๋์ ์ธ์คํด์ค๊ฐ ๋น์ด ์๊ฑฐ๋ ์์คํ ๊ตฌ์ฑ ๋ฐ์ดํฐ๋ง ํฌํจํด์ผ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ์๋ ค์ง ์ ํ์ฌํญ์ ์ฐธ๊ณ ํ์ธ์.
Database Migration Service ๋ง๋ฒ์ฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋ง๋ค ์ ์์ต๋๋ค. ์ด ๋ง๋ฒ์ฌ๋ ์์ํ๊ธฐ, ์์ค ์ ์, ๋์ ๋ง๋ค๊ธฐ, ์ฐ๊ฒฐ ๋ฐฉ๋ฒ ์ ์, ๋ง์ด๊ทธ๋ ์ด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ฑ, ๋ง์ด๊ทธ๋ ์ด์ ์์ ํ ์คํธ ๋ฐ ๋ง๋ค๊ธฐ ์ฐฝ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ๊ฐ ์ฐฝ์ ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ์ด ํ์ด์ง์ ๋ค์ ์น์ ์ ์ฐธ๊ณ ํ์ธ์.
Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ๋ง๋ค๊ธฐ
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ค์ ์ ์
Google Cloud ์ฝ์์์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ผ๋ก ์ด๋ํฉ๋๋ค.
ํ์ด์ง ์๋จ์์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ด๋ฆ์ ์ ๋ ฅํฉ๋๋ค. ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์๋ณํ๋ ๋ฐ ๋์์ด ๋๋ ์น๊ทผํ ์ด๋ฆ์ ์ ํํฉ๋๋ค. ์์ ์ด๋ฆ์ ๋ฏผ๊ฐํ ์ ๋ณด๋ ๊ฐ์ธ ์๋ณ ์ ๋ณด๋ฅผ ํฌํจํ์ง ๋ง์ธ์.
์๋ ์์ฑ๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ID๋ฅผ ๊ทธ๋๋ก ๋ก๋๋ค.
์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ง์ ์ ํํฉ๋๋ค.
๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ง์ ์ ํํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์ ๋์ ๋ฆฌ์ ์ ์ ํํฉ๋๋ค. ์ด ๋ฆฌ์ ์ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๋ ๋ฆฌ์ ๊ณผ ๋์ผํด์ผ ํฉ๋๋ค. ๋์ ์ง์ญ์ ์ ํํ ํ์๋ ์ด ์ ํ์ฌํญ์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ํ์ ์ง์ ํฉ๋๋ค(์ผํ์ฑ(์ค๋ ์ท๋ง ํด๋น) ๋๋ ์ฐ์(์ค๋ ์ท + ์ง์์ ์ธ ๋ณ๊ฒฝ์ฌํญ)).
๊ณ์ํ๊ธฐ ์ ์ ํ์ ์๊ฑด์ ๊ฒํ ํ์ธ์ ์น์ ์์ ์ด๊ธฐ๋ฅผ ํด๋ฆญํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ํด ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ค๋นํ๋ ๋ฐ ๋์์ด ๋๋ ์๋ ์์ฑ ์๋ด๋ฅผ ํ์ธํฉ๋๋ค. ์ด ๋จ๊ณ์์ ์ด๋ฌํ ๊ธฐ๋ณธ ์๊ฑด์ ์๋ฃํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ง๋ง, ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ํ ์คํธํ๊ฑฐ๋ ์์ํ๊ธฐ ์ ์ธ์ ๋ผ๋ ์ด๋ฅผ ์๋ฃํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ์์ค ๊ตฌ์ฑ์ ์ฐธ๊ณ ํ์ธ์.
์ ์ฅ ํ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
์์ค ์ฐ๊ฒฐ ํ๋กํ ์ ๋ณด ์ง์
-
์ฐ๊ฒฐ ํ๋กํ์ ๋ง๋ ๊ฒฝ์ฐ ๊ธฐ์กด ์ฐ๊ฒฐ ํ๋กํ ๋ชฉ๋ก์์ ์ ํํฉ๋๋ค.
์ฐ๊ฒฐ ํ๋กํ์ ๋ง๋ค์ง ์์ ๊ฒฝ์ฐ ๋๋กญ๋ค์ด ๋ชฉ๋ก ํ๋จ์์ ์ฐ๊ฒฐ ํ๋กํ ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํ์ฌ ํ๋กํ์ ํ๋ ๋ง๋ค๊ณ ์์ค ์ฐ๊ฒฐ ํ๋กํ ๋ง๋ค๊ธฐ์ ๋์ผํ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
- ๋ฐ์ดํฐ ๋คํ ๊ตฌ์ฑ ๋ง์ถค์ค์ ์น์
์์ ๋ฐ์ดํฐ ๋คํ ๊ตฌ์ฑ ํ์๋ฅผ ํด๋ฆญํฉ๋๋ค.
๋ฐ์ดํฐ ๋คํ ๋ณ๋ ฌ ์ฒ๋ฆฌ ์๋๋ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ถํ๋๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. ๋ค์ ์ค์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ์ต์ (๊ถ์ฅ): ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ต์ ๋ถํ๋ก ๊ท ํ ์กํ ์ฑ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- ์ต๋: ๋คํ ์๋๊ฐ ๊ฐ์ฅ ๋น ๋ฅด์ง๋ง ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ถํ๊ฐ ์ฆ๊ฐํ ์ ์์ต๋๋ค.
- ์ต์: ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๊ฐ์ฅ ๋ฎ์ ์์ ์ปดํจํ ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ์ง๋ง ๋คํ ์ฒ๋ฆฌ๋์ด ๋๋ฆด ์ ์์ต๋๋ค.
์กฐ์ ๋ ๋ฐ์ดํฐ ๋คํ ๋ณ๋ ฌ ์ฒ๋ฆฌ ์ค์ ์ ์ฌ์ฉํ๋ ค๋ฉด ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์์
max_replication_slots
,max_wal_senders
,max_worker_processes
๋งค๊ฐ๋ณ์๋ฅผ ๋๋ ค์ผ ํฉ๋๋ค. ๋ง์ด๊ทธ๋ ์ด์ ์์ ์์ฑ์ ๋ง์ง๋ง ๋จ๊ณ์์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ํ ์คํธ๋ฅผ ์คํํ์ฌ ๊ตฌ์ฑ์ ํ์ธํ ์ ์์ต๋๋ค. - ์ ์ฅ ํ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
๋์ ์ธ์คํด์ค ์ ํ
- ๋์ ์ธ์คํด์ค ์ ํ ๋ฉ๋ด์์ ๊ธฐ์กด ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
- ๋์ ์ธ์คํด์ค ์ ํ ์น์ ์์ ๋์ ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
- ์ธ์คํด์ค ์ธ๋ถ์ ๋ณด ์น์ ์ ์ ๋ณด๋ฅผ ๊ฒํ ํ๊ณ ์ ํ ํ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
- ๊ธฐ์กด ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ๊ธฐ ์ํด Database Migration Service๋ ๋์ ์ธ์คํด์ค๋ฅผ ๊ฐ๋ฑํ๊ณ ๋ณต์ ๋ณธ์ผ๋ก ๋ณํํฉ๋๋ค. ๋ค์ด๊ทธ๋ ์ด๋๋ฅผ ์์ ํ๊ฒ ์คํํ ์ ์์์ ๋ํ๋ด๋ ค๋ฉด ํ์ธ ์ฐฝ์ ๋์ ์ธ์คํด์ค ์๋ณ์๋ฅผ ์ ๋ ฅํฉ๋๋ค.
- ํ์ธํ๊ณ ๊ณ์ํ๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์์ค ๋ฐ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค ๊ฐ์ ์ฐ๊ฒฐ ์ค์
- ์ฐ๊ฒฐ ๋ฐฉ๋ฒ ๋ฉ๋ด์์ ๋คํธ์ํฌ ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์ ์ ํํฉ๋๋ค. ์ด ๋ฉ์๋๋ ์๋ก ์์ฑ๋ Cloud SQL ์ธ์คํด์ค๊ฐ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐ๊ฒฐ๋๋ ๋ฐฉ์์ ์ ์ํฉ๋๋ค. ํ์ฌ ๋คํธ์ํฌ ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์๋ IP ํ์ฉ ๋ชฉ๋ก, ์ญ๋ฐฉํฅ SSH ํฐ๋, Private Service Connect ์ธํฐํ์ด์ค, VPC ํผ์ด๋ง์ด ํฌํจ๋ฉ๋๋ค.
- IP ํ์ฉ ๋ชฉ๋ก ๋คํธ์ํฌ ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์ ์ ํํ๋ ๊ฒฝ์ฐ ๋์ ์ธ์คํด์ค์ ์์๋ฐ์ด๋ IP ์ฃผ์๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค. ์์ฑํ Cloud SQL ์ธ์คํด์ค๊ฐ ๊ณ ๊ฐ์ฉ์ฑ ์ธ์คํด์ค์ธ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ์ธ์คํด์ค์ ๋ณด์กฐ ์ธ์คํด์ค์ ๋ฐ์ IP ์ฃผ์๋ฅผ ๋ชจ๋ ํฌํจํฉ๋๋ค.
์ญ๋ฐฉํฅ SSH ํฐ๋ ๋คํธ์ํฌ ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์ ์ ํํ ๊ฒฝ์ฐ ํฐ๋์ ํธ์คํ ํ Compute Engine VM ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
์ธ์คํด์ค๋ฅผ ์ง์ ํ๋ฉด Google์์ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ ํฐ๋์ ์ค์ ํ๋ ๋จ๊ณ๋ฅผ ์คํํ๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ ๊ณตํฉ๋๋ค. Google Cloud CLI์์ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํด์ผ ํฉ๋๋ค.
์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ Google Cloud์ ๋ชจ๋ ์ฐ๊ฒฐํ ์ ์๋ ๋จธ์ ์์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
- ๋น๊ณต๊ฐ IP ์ฐ๊ฒฐ ๋ฐฉ๋ฒ ์ค ํ๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ VPC ํผ์ด๋ง ๋๋ PSC ์ธํฐํ์ด์ค๋ฅผ ์ ํํฉ๋๋ค.
- VPC ํผ์ด๋ง ๋คํธ์ํฌ ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์ ์ ํํ ๊ฒฝ์ฐ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๋ VPC ๋คํธ์ํฌ๋ฅผ ์ ํํฉ๋๋ค. Cloud SQL ์ธ์คํด์ค๊ฐ ์ด ๋คํธ์ํฌ์ ์ฐ๊ฒฐ๋๋๋ก ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
- ๋คํธ์ํฌ ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์ ์ ํํ๊ณ ํด๋น ๋ฐฉ๋ฒ์ ๋ํ ์ถ๊ฐ ์ ๋ณด๋ฅผ ์ ๊ณตํ ํ ๊ตฌ์ฑ ๋ฐ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ฑ
๋ง์ด๊ทธ๋ ์ด์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํ ์ ์์ต๋๋ค.
- ์ด์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชฉ๋ก์์ ๋ค์ ์ต์
์ค ํ๋๋ฅผ ์ ํํฉ๋๋ค.
- ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค: ์์ค์ ์๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํฉ๋๋ค.
- ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค: ์์ค์ ์๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค์์ ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํ ์ ์์ต๋๋ค.
ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ค๋ฉด ํ์๋๋ ๋ชฉ๋ก์ ํํฐ๋งํ๊ณ Database Migration Service๊ฐ ๋์์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํ๋ฉด ๋ฉ๋๋ค.
๋ชฉ๋ก์ด ํ์๋์ง ์๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฒ์ ์ค๋ฅ๊ฐ ํ์๋๋ฉด ์๋ก๊ณ ์นจ์ ํด๋ฆญํฉ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฒ์์ด ์คํจํ๋ฉด ์์ ์์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํฉ๋๋ค. ๋ง์ด๊ทธ๋ ์ด์ ์์ ์์ฑ์ ๊ณ์ ์งํํ๊ณ ์ฐ๊ฒฐ ์ค๋ฅ๋ ๋์ค์ ์์ ํ ์ ์์ต๋๋ค.
- ์ ์ฅ ํ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ํ ์คํธ ๋ฐ ๋ง๋ค๊ธฐ
์ด ๋ง์ง๋ง ๋จ๊ณ์์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ค์ , ์์ค, ๋์, ์ฐ๊ฒฐ ๋ฐฉ๋ฒ์ ์์ฝ์ ๊ฒํ ํ ๋ค์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ค์ ์ ์ ํจ์ฑ์ ํ ์คํธํฉ๋๋ค. ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ค์ ์ ์์ ํ ์ ์์ต๋๋ค. ์ผ๋ถ ์ค์ ์ ์์ ํ ์ ์์ต๋๋ค.
์์ ํ ์คํธ๋ฅผ ํด๋ฆญํ์ฌ ๋ค์์ ํ์ธํฉ๋๋ค.
- ๊ธฐ๋ณธ ์๊ฑด์ ๋ฐ๋ผ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ์ฑ๋์์ต๋๋ค.
- ์์ค ๋ฐ ๋์ ์ธ์คํด์ค๊ฐ ์๋ก ํต์ ํ ์ ์์ต๋๋ค.
- ๋์์์ ํ์ํ ๋น๊ณต๊ฐ ๋๋ ๊ณต๊ฐ IP ์ฃผ์ ์ ๋ฐ์ดํธ๊ฐ ์๋ฃ๋ฉ๋๋ค.
- ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ด ์ ํจํ๊ณ ์์ค ๋ฐ ๋์ ๋ฒ์ ์ด ํธํ๋ฉ๋๋ค.
ํ ์คํธ์ ์คํจํ๋ฉด ํ๋ฆ์ ์ ์ ํ ๋ถ๋ถ์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ํ ๋ค์ ํ ์คํธํ ์ ์์ต๋๋ค.
ํ ์คํธ๊ฐ ์คํจํ๋๋ผ๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋ง๋ค ์ ์์ง๋ง, ์์ ์ด ์์๋ ํ ์คํ ์ค์ ์ด๋ ์์ ์์ ์คํจํ ์ ์์ต๋๋ค.
์์ ๋ง๋ค๊ธฐ ๋ฐ ์์์ ํด๋ฆญํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋ง๋ค๊ณ ์ฆ์ ์์ํ๊ฑฐ๋ ์์ ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋ง๋ค๊ณ ์ฆ์ ์์ํ์ง๋ ์์ต๋๋ค.
์ฃผ์: Terraform์ ์ฌ์ฉํ์ฌ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํ๋ก๋น์ ๋ํ ๊ฒฝ์ฐ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์คํ ์ค์ ๊ตฌ์ฑ ๋๋ฆฌํํธ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด์ ์ด ์๋ฃ๋๊ธฐ ์ ์ Terraform ์ค์ ์ ๋ค์ ์ ์ฉํ์ง ๋ง์ธ์. ์์ธํ ๋ด์ฉ์ Terraform ๊ตฌ์ฑ ๋๋ฆฌํํธ๋ฅผ ์ฐธ๊ณ ํ์ธ์.
์์ ์ด ์์ฑ๋ ๋ ์์๋์ง ์์ ๊ฒฝ์ฐ ์์์ ํด๋ฆญํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ํ์ด์ง์์ ์์ํ ์ ์์ต๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ด ์ธ์ ์์๋๋ ๋์ ์ธ์คํด์ค๊ฐ ์์ผ๋ฉด ์กฐ์ง์ ์๊ธ์ด ์ฒญ๊ตฌ๋ฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์์ํ๋ฉด Database Migration Service์์ ์ ์ฒด ๋คํ๋ฅผ ์์ํ์ฌ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ์ ์ ๊ธ๋๋ค. ์์ค๊ฐ Amazon RDS ๋๋ Amazon Aurora์ ์๋ ๊ฒฝ์ฐ Database Migration Service์๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์งง์ (์ฝ 1๋ถ ๋ฏธ๋ง) ์ฐ๊ธฐ ๋ค์ดํ์์ด ์ถ๊ฐ๋ก ํ์ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ฐ์ดํฐ ๋คํ ๋ณ๋ ฌ ์ฒ๋ฆฌ ๊ณ ๋ ค์ฌํญ์ ์ฐธ๊ณ ํ์ธ์.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ด ๋ง์ด๊ทธ๋ ์ด์ ์์ ๋ชฉ๋ก์ ์ถ๊ฐ๋๋ฉฐ ๋ฐ๋ก ํ์ธํ ์ ์์ต๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ๊ฒํ ๋ก ์งํํฉ๋๋ค.
Google Cloud CLI๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ์์ ๋ง๋ค๊ธฐ
Google Cloud CLI๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ์ธ์คํด์ค๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๊ฒฝ์ฐ ๋์ ์ธ์คํด์ค์ ์ฐ๊ฒฐ ํ๋กํ์ ์๋์ผ๋ก ๋ง๋ค์ด์ผ ํฉ๋๋ค. Database Migration Service์์ ๋์ ์ฐ๊ฒฐ ํ๋กํ์ ๋ง๋ค๊ณ ์ญ์ ํ๋ฏ๋ก Google Cloud ์ฝ์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ํ์ํ์ง ์์ต๋๋ค.
์์ํ๊ธฐ ์ ์
gcloud CLI๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๋ก์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋ง๋ค๊ธฐ ์ ์ ๋ค์์ ํ์ธํ์ธ์.
- ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๋ฅผ ๋ง๋ญ๋๋ค.
- ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๋ฅผ ์ค๋นํฉ๋๋ค. ๋ค์์ ์ฐธ์กฐํ์ธ์.
- ์์ค ๊ตฌ์ฑ
- ์์ค ์ฐ๊ฒฐ ํ๋กํ ๋ง๋ค๊ธฐ (๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋ง๋ค๋ ค๋ฉด ์์ค ์ฐ๊ฒฐ ํ๋กํ ์๋ณ์๊ฐ ํ์ํฉ๋๋ค.)
- ์ฐ๊ฒฐ ๊ตฌ์ฑ
๋์ ์ฐ๊ฒฐ ํ๋กํ ๋ง๋ค๊ธฐ
gcloud database-migration connection-profiles create
๋ช
๋ น์ด๋ฅผ ์คํํ์ฌ ๊ธฐ์กด ๋์ ์ธ์คํด์ค์ ๋์ ์ฐ๊ฒฐ ํ๋กํ์ ๋ง๋ญ๋๋ค.
์ด ์ํ์์๋ ๋ชจ๋ ์์
์ด ๋๊ธฐ์์ผ๋ก ์คํ๋๋๋ก ์ ํ์ --no-async
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ฐ๋ผ์ ์ผ๋ถ ๋ช
๋ น์ด๋ฅผ ์๋ฃํ๋ ๋ฐ ์๊ฐ์ด ๊ฑธ๋ฆด ์ ์์ต๋๋ค. --no-async
ํ๋๊ทธ๋ฅผ ์๋ตํ์ฌ ๋ช
๋ น์ด๋ฅผ ๋น๋๊ธฐ์์ผ๋ก ์คํํ ์ ์์ต๋๋ค.
์ด ๊ฒฝ์ฐ gcloud database-migration operations describe
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์
์ด ์ฑ๊ณตํ๋์ง ํ์ธํด์ผ ํฉ๋๋ค.
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- CONNECTION_PROFILE_ID์ ์ฐ๊ฒฐ ํ๋กํ์ ๋จธ์ ํ๋ ๊ฐ๋ฅ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
- REGION์ ์ฐ๊ฒฐ ํ๋กํ์ ์ ์ฅํ๋ ค๋ ๋ฆฌ์ ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
- DESTINATION_INSTANCE_ID์ ๋์ ์ธ์คํด์ค์ ์ธ์คํด์ค ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
- (์ ํ์ฌํญ) CONNECTION_PROFILE_NAME๋ฅผ ์ฐ๊ฒฐ ํ๋กํ์ ์ฌ๋์ด ์ฝ์ ์ ์๋ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค. ์ด ๊ฐ์ Google Cloud ์ฝ์์ ํ์๋ฉ๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration connection-profiles \ create postgresql CONNECTION_PROFILE_ID \ --no-async \ --cloudsql-instance=DESTINATION_INSTANCE_ID \ --region=REGION \ --display-name=CONNECTION_PROFILE_NAME
Windows(PowerShell)
gcloud database-migration connection-profiles ` create postgresql CONNECTION_PROFILE_ID ` --no-async ` --cloudsql-instance=DESTINATION_INSTANCE_ID ` --region=REGION ` --display-name=CONNECTION_PROFILE_NAME
Windows(cmd.exe)
gcloud database-migration connection-profiles ^ create postgresql CONNECTION_PROFILE_ID ^ --no-async ^ --cloudsql-instance=DESTINATION_INSTANCE_ID ^ --region=REGION ^ --display-name=CONNECTION_PROFILE_NAME
๋ค์๊ณผ ๋น์ทํ ์๋ต์ด ํ์๋ฉ๋๋ค.
Waiting for connection profile [CONNECTION_PROFILE_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created connection profile CONNECTION_PROFILE_ID [OPERATION_ID]
๋ง์ด๊ทธ๋ ์ด์ ์์ ๋ง๋ค๊ธฐ
์ด ์ํ์์๋ ๋ชจ๋ ์์
์ด ๋๊ธฐ์์ผ๋ก ์คํ๋๋๋ก ์ ํ์ --no-async
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ฐ๋ผ์ ์ผ๋ถ ๋ช
๋ น์ด๋ฅผ ์๋ฃํ๋ ๋ฐ ์๊ฐ์ด ๊ฑธ๋ฆด ์ ์์ต๋๋ค. --no-async
ํ๋๊ทธ๋ฅผ ์๋ตํ์ฌ ๋ช
๋ น์ด๋ฅผ ๋น๋๊ธฐ์์ผ๋ก ์คํํ ์ ์์ต๋๋ค.
์ด ๊ฒฝ์ฐ gcloud database-migration operations describe
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์
์ด ์ฑ๊ณตํ๋์ง ํ์ธํด์ผ ํฉ๋๋ค.
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ๋จธ์ ํ๋ ๊ฐ๋ฅ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค. ์ด ๊ฐ์ ์ฌ์ฉํ์ฌ Database Migration Service Google Cloud CLI ๋ช ๋ น์ด ๋๋ API๋ฅผ ์ฌ์ฉํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ฒ๋ฆฌํฉ๋๋ค.
- REGION์ ์ด์ ์์ ์ ์ ์ฅํ ๋ฆฌ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_NAME์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ฌ๋์ด ์ฝ์ ์ ์๋ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค. ์ด ๊ฐ์ Google Cloud ์ฝ์์ Database Migration Service์ ํ์๋ฉ๋๋ค.
- SOURCE_CONNECTION_PROFILE_ID๋ฅผ ์์ค ์ฐ๊ฒฐ ํ๋กํ์ ๋จธ์ ๋ฆฌ๋๋ธ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
- DESTINATION_CONNECTION_PROFILE_ID์ ๋์ ์ฐ๊ฒฐ ํ๋กํ์ ๋จธ์ ๋ฆฌ๋๋ธ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์ ํ์ฌํญ: Database Migration Service๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์์ค์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํฉ๋๋ค. ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ง ์ด์ ํ๋ ค๋ฉด
--databases-filter
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ๊ณ ์๋ณ์๋ฅผ ์ผํ๋ก ๊ตฌ๋ถ๋ ๋ชฉ๋ก์ผ๋ก ์ง์ ํฉ๋๋ค.์:
--databases-filter=my-business-database,my-other-database
๋์ค์
gcloud database-migration migration-jobs update
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ--database-filter flag
๋ก ๋ง๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์์ ํ ์ ์์ต๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration migration-jobs \ create MIGRATION_JOB_ID \ --no-async \ --region=REGION \ --display-name=MIGRATION_JOB_NAME \ --source=SOURCE_CONNECTION_PROFILE_ID \ --destination=DESTINATION_CONNECTION_PROFILE_ID \ --type=CONTINUOUS \
Windows(PowerShell)
gcloud database-migration migration-jobs ` create MIGRATION_JOB_ID ` --no-async ` --region=REGION ` --display-name=MIGRATION_JOB_NAME ` --source=SOURCE_CONNECTION_PROFILE_ID ` --destination=DESTINATION_CONNECTION_PROFILE_ID ` --type=CONTINUOUS `
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ create MIGRATION_JOB_ID ^ --no-async ^ --region=REGION ^ --display-name=MIGRATION_JOB_NAME ^ --source=SOURCE_CONNECTION_PROFILE_ID ^ --destination=DESTINATION_CONNECTION_PROFILE_ID ^ --type=CONTINUOUS ^
๋ค์๊ณผ ๋น์ทํ ์๋ต์ด ํ์๋ฉ๋๋ค.
Waiting for migration job [MIGRATION_JOB_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created migration job MIGRATION_JOB_ID [OPERATION_ID]
๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์์ ๋ด๋ฆฌ๊ธฐ
Database Migration Service๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ง์ด๊ทธ๋ ์ด์
ํ๋ ๋์ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๊ฐ ์ฝ๊ธฐ ๋ณต์ ๋ณธ์ผ๋ก ์๋ํด์ผ ํฉ๋๋ค. ๋ง์ด๊ทธ๋ ์ด์
์์
์ ์์ํ๊ธฐ ์ ์ gcloud database-migration migration-jobs demote-destination
๋ช
๋ น์ด๋ฅผ ์คํํ์ฌ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๋ฅผ ๊ฐ๋ฑํฉ๋๋ค.
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์๋ณ์๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ
gcloud database-migration migration-jobs list
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๋ฆฌ์ ์ ๋ชจ๋ ์ด์ ์์ ์ ๋์ดํ๊ณ ์๋ณ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - REGION์ ์ฐ๊ฒฐ ํ๋กํ์ด ์ ์ฅ๋ ๋ฆฌ์ ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration migration-jobs \ demote-destination MIGRATION_JOB_ID \ --region=REGION
Windows(PowerShell)
gcloud database-migration migration-jobs ` demote-destination MIGRATION_JOB_ID ` --region=REGION
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ demote-destination MIGRATION_JOB_ID ^ --region=REGION
๊ฒฐ๊ณผ
์์ ์ ๋น๋๊ธฐ ๋ฐฉ์์ผ๋ก ์คํ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๋ช ๋ น์ด๋ ์ฅ๊ธฐ ์คํ ์์ ์ ๋ํ๋ด๋ ์์ ์ํฐํฐ๋ฅผ ๋ฐํํฉ๋๋ค.
done: false metadata: '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata apiVersion: v1 createTime: '2024-02-20T12:20:24.493106418Z' requestedCancellation: false target: MIGRATION_JOB_ID verb: demote-destination name: OPERATION_ID
์์ ์ด ์ฑ๊ณตํ๋์ง ํ์ธํ๋ ค๋ฉด ๋ฐํ๋ ์์ ๊ฐ์ฒด๋ฅผ ์ฟผ๋ฆฌํ๊ฑฐ๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํ๋ฉด ๋ฉ๋๋ค.
-
gcloud database-migration migration-jobs describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค. - OPERATION_ID์ ํจ๊ป
gcloud database-migration operations describe
๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์์ฒด์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ๊ด๋ฆฌ
์ด ์์ ์์ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ด ๊ตฌ์ฑ๋๊ณ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๋ค์ ์์ ์ ์ฌ์ฉํ์ฌ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
์ ํ์ฌํญ: ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ํ์ธํฉ๋๋ค.
๋จผ์ gcloud database-migration migration-jobs verify
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ์ด์ ์์ ์ ํ์ธํ๋ ๊ฒ์ด ์ข์ต๋๋ค.์์ธํ ๋ด์ฉ์ ๋ค์ ์น์ ์ ํผ์น์ธ์.
gcloud database-migration migration-jobs verify
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์๋ณ์๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ
gcloud database-migration migration-jobs list
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๋ฆฌ์ ์ ๋ชจ๋ ์ด์ ์์ ์ ๋์ดํ๊ณ ์๋ณ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - REGION์ ์ฐ๊ฒฐ ํ๋กํ์ด ์ ์ฅ๋ ๋ฆฌ์ ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration migration-jobs \ verify MIGRATION_JOB_ID \ --region=REGION
Windows(PowerShell)
gcloud database-migration migration-jobs ` verify MIGRATION_JOB_ID ` --region=REGION
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ verify MIGRATION_JOB_ID ^ --region=REGION
๊ฒฐ๊ณผ
์์ ์ ๋น๋๊ธฐ ๋ฐฉ์์ผ๋ก ์คํ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๋ช ๋ น์ด๋ ์ฅ๊ธฐ ์คํ ์์ ์ ๋ํ๋ด๋ ์์ ์ํฐํฐ๋ฅผ ๋ฐํํฉ๋๋ค.
done: false metadata: '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata apiVersion: v1 createTime: '2024-02-20T12:20:24.493106418Z' requestedCancellation: false target: MIGRATION_JOB_ID verb: verify name: OPERATION_ID
์์ ์ด ์ฑ๊ณตํ๋์ง ํ์ธํ๋ ค๋ฉด ๋ฐํ๋ ์์ ๊ฐ์ฒด๋ฅผ ์ฟผ๋ฆฌํ๊ฑฐ๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํ๋ฉด ๋ฉ๋๋ค.
- MIGRATION_JOB_ID์ ํจ๊ป
gcloud database-migration migration-jobs describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค. - OPERATION_ID์ ํจ๊ป
gcloud database-migration operations describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์์ฒด์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์ ํ์ฌํญ: ๋ง์ด๊ทธ๋ ์ด์ ํ๋๋ก ์ ํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ดํ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ ๋ Database Migration Service๋--database-filter
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ ํํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ดํ ์ธ๋ถ์ ๋ณด๋ฅผ ๊ฐ์ ธ์์ผ ํฉ๋๋ค.๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์์ํ๊ธฐ ์ ์
gcloud database-migration migration-jobs fetch-source-objects
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.์์ธํ ๋ด์ฉ์ ๋ค์ ์น์ ์ ํผ์น์ธ์.
gcloud database-migration migration-jobs fetch-source-objects
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์๋ณ์๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ
gcloud database-migration migration-jobs list
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๋ฆฌ์ ์ ๋ชจ๋ ์ด์ ์์ ์ ๋์ดํ๊ณ ์๋ณ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - REGION์ ์ฐ๊ฒฐ ํ๋กํ์ด ์ ์ฅ๋ ๋ฆฌ์ ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration migration-jobs \ fetch-source-objects MIGRATION_JOB_ID \ --region=REGION
Windows(PowerShell)
gcloud database-migration migration-jobs ` fetch-source-objects MIGRATION_JOB_ID ` --region=REGION
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ fetch-source-objects MIGRATION_JOB_ID ^ --region=REGION
๊ฒฐ๊ณผ
์ถ๋ ฅ์ ๋ค์๊ณผ ๋น์ทํฉ๋๋ค.
Waiting for migration job MIGRATION_JOB_ID to fetch source objects with OPERATION_ID Waiting for operation OPERATION_ID to complete...done. SOURCE_OBJECT STATE PHASE ERROR {'database': 'DATABASE_NAME', 'type': 'DATABASE'} NOT_SELECTED PHASE_UNSPECIFIED {'database': 'DATABASE_NAME', 'type': 'DATABASE'} STOPPED CDC {'code': 1, 'message': 'Internal error'}
์์ ์ด ์ฑ๊ณตํ๋์ง ํ์ธํ๋ ค๋ฉด ๋ฐํ๋ ์์ ๊ฐ์ฒด๋ฅผ ์ฟผ๋ฆฌํ๊ฑฐ๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํ๋ฉด ๋ฉ๋๋ค.
- MIGRATION_JOB_ID์ ํจ๊ป
gcloud database-migration migration-jobs describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค. - OPERATION_ID์ ํจ๊ป
gcloud database-migration operations describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์์ฒด์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์์ํฉ๋๋ค.
gcloud database-migration migration-jobs start
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์์ํฉ๋๋ค.์์ธํ ๋ด์ฉ์ ๋ค์ ์น์ ์ ํผ์น์ธ์.
gcloud database-migration migration-jobs start
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์๋ณ์๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ
gcloud database-migration migration-jobs list
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๋ฆฌ์ ์ ๋ชจ๋ ์ด์ ์์ ์ ๋์ดํ๊ณ ์๋ณ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - REGION์ ์ฐ๊ฒฐ ํ๋กํ์ด ์ ์ฅ๋ ๋ฆฌ์ ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration migration-jobs \ start MIGRATION_JOB_ID \ --region=REGION
Windows(PowerShell)
gcloud database-migration migration-jobs ` start MIGRATION_JOB_ID ` --region=REGION
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ start MIGRATION_JOB_ID ^ --region=REGION
๊ฒฐ๊ณผ
์์ ์ ๋น๋๊ธฐ ๋ฐฉ์์ผ๋ก ์คํ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๋ช ๋ น์ด๋ ์ฅ๊ธฐ ์คํ ์์ ์ ๋ํ๋ด๋ ์์ ์ํฐํฐ๋ฅผ ๋ฐํํฉ๋๋ค.
done: false metadata: '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata apiVersion: v1 createTime: '2024-02-20T12:20:24.493106418Z' requestedCancellation: false target: MIGRATION_JOB_ID verb: start name: OPERATION_ID
์์ ์ด ์ฑ๊ณตํ๋์ง ํ์ธํ๋ ค๋ฉด ๋ฐํ๋ ์์ ๊ฐ์ฒด๋ฅผ ์ฟผ๋ฆฌํ๊ฑฐ๋ ๋ง์ด๊ทธ๋ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํ๋ฉด ๋ฉ๋๋ค.
- MIGRATION_JOB_ID์ ํจ๊ป
gcloud database-migration migration-jobs describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค. - OPERATION_ID์ ํจ๊ป
gcloud database-migration operations describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์์ฒด์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ง์ด๊ทธ๋ ์ด์ ์์ ์น๊ฒฉ
๋ง์ด๊ทธ๋ ์ด์
์ด ๋ณ๊ฒฝ ๋ฐ์ดํฐ ์บก์ฒ (CDC) ๋จ๊ณ์ ๋๋ฌํ๋ฉด ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์คํด์ค๋ฅผ ์ฝ๊ธฐ ๋ณต์ ๋ณธ์์ ๋
๋ฆฝํ ์ธ์คํด์ค๋ก ์น๊ฒฉํ ์ ์์ต๋๋ค.
gcloud database-migration migration-jobs promote
๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
์๋์ ๋ช ๋ น์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- MIGRATION_JOB_ID์ ๋ง์ด๊ทธ๋ ์ด์
์์
์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
์๋ณ์๋ฅผ ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ
gcloud database-migration migration-jobs list
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๋ฆฌ์ ์ ๋ชจ๋ ์ด์ ์์ ์ ๋์ดํ๊ณ ์๋ณ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - REGION์ ์ฐ๊ฒฐ ํ๋กํ์ด ์ ์ฅ๋ ๋ฆฌ์ ์ ์๋ณ์๋ก ๋ฐ๊ฟ๋๋ค.
๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
Linux, macOS ๋๋ Cloud Shell
gcloud database-migration migration-jobs \ promote MIGRATION_JOB_ID \ --region=REGION
Windows(PowerShell)
gcloud database-migration migration-jobs ` promote MIGRATION_JOB_ID ` --region=REGION
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ promote MIGRATION_JOB_ID ^ --region=REGION
๊ฒฐ๊ณผ
์์ ์ ๋น๋๊ธฐ ๋ฐฉ์์ผ๋ก ์คํ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๋ช ๋ น์ด๋ ์ฅ๊ธฐ ์คํ ์์ ์ ๋ํ๋ด๋ ์์ ์ํฐํฐ๋ฅผ ๋ฐํํฉ๋๋ค.
done: false metadata: '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata apiVersion: v1 createTime: '2024-02-20T12:20:24.493106418Z' requestedCancellation: false target: MIGRATION_JOB_ID verb: start name: OPERATION_ID
- MIGRATION_JOB_ID์ ํจ๊ป
gcloud database-migration migration-jobs describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ์์ ์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค. - OPERATION_ID์ ํจ๊ป
gcloud database-migration operations describe
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์์ฒด์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.