์ด ํ์ด์ง์์๋ Google Cloud ์ฝ์์์ Cloud SQL Studio๋ฅผ ์ฌ์ฉํ์ฌ Cloud SQL ๋ฐ์ดํฐ๋ฅผ ํ์ํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
Cloud SQL Studio๋ฅผ ์ฌ์ฉํ๋ฉด ์น์ธ๋ ์ฌ์ฉ์๊ฐ SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ง์ ์ํธ์์ฉํ๊ณ Google Cloud ์ฝ์์์ SQL ์ฟผ๋ฆฌ๋ฅผ ์คํํ์ฌ ๋ฐ์ดํฐ์ ์ก์ธ์คํ๊ณ ์กฐ์ํ ์ ์์ต๋๋ค. ํ ์ด๋ธ ๋ฐ ์์ธ ๋ง๋ค๊ธฐ, ํ ์ด๋ธ ์์ , ๋ทฐ ์ค์ ๊ณผ ๊ฐ์ SQL ๋ช ๋ น์ค ํด๋ผ์ด์ธํธ์์ ์ํํ ๋ค์ํ ์์ ์ ์ํํ ์ ์์ต๋๋ค.
Cloud SQL Studio์๋ ์ฟผ๋ฆฌ ํธ์ง๊ธฐ ๋ฐ SQL ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ํ ์ด๋ธ๊ณผ ํตํฉ๋๋ ํ์๊ธฐ ์ฐฝ์ด ํฌํจ๋์ด ์์ต๋๋ค. ์ด ์ธํฐํ์ด์ค ํ๋์์ DDL, DML, DQL ๋ฌธ์ ์คํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์๋ ํํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ ๋๊ตฌ๋ฅผ ๊ตฌ์ฑํ๋ ๋์ Cloud SQL Studio์ ์ฟผ๋ฆฌ ํธ์ง๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ํ ์ด๋ธ์ ๋ง๋ค๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฟผ๋ฆฌํ ์ ์์ต๋๋ค.
ํ์๊ธฐ ์ฐฝ์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ๋ณด๊ณ ์ํธ์์ฉํ ์ ์์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ณ ๋ณ๊ฒฝํ๊ณ ์ญ์ ํ ์ ์์ต๋๋ค.
- ํ ์ด๋ธ
- ์ด
- ์์ธ ๋ฐ ํค
- ํจ์
๋ํ ํ์๊ธฐ ์ฐฝ์ ์ฌ์ฉํ์ฌ ํ
์ด๋ธ์ ๋ํ SELECT
์ฟผ๋ฆฌ๋ฅผ ์๋ํ ์ ์์ต๋๋ค.
Cloud SQL์ ์ฒ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ Cloud SQL ๊ฐ์๋ฅผ ์ฐธ์กฐํ์ธ์.
ํ์ ์ญํ ๋ฐ ๊ถํ
์ด ๋ฌธ์์ ํ์คํฌ๋ฅผ ์๋ฃํ๋ ๋ฐ ํ์ํ ๊ถํ์ ์ป์ผ๋ ค๋ฉด ๊ด๋ฆฌ์์๊ฒ ํ๋ก์ ํธ์ ๋ํ Cloud SQL Studio ์ฌ์ฉ์(roles/cloudsql.studioUser
) IAM ์ญํ ์ ๋ถ์ฌํด ๋ฌ๋ผ๊ณ ์์ฒญํ์ธ์.
์ญํ ๋ถ์ฌ์ ๋ํ ์์ธํ ๋ด์ฉ์ ํ๋ก์ ํธ, ํด๋, ์กฐ์ง์ ๋ํ ์ก์ธ์ค ๊ด๋ฆฌ๋ฅผ ์ฐธ์กฐํ์ธ์.
์ปค์คํ ์ญํ ์ด๋ ๋ค๋ฅธ ์ฌ์ ์ ์๋ ์ญํ ์ ํตํด ํ์ํ ๊ถํ์ ์ป์ ์๋ ์์ต๋๋ค.
Cloud SQL Studio๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ค์ ๊ถํ์ด ์์ด์ผ ํฉ๋๋ค.
cloudsql.databases.list
cloudsql.instances.executeSql
cloudsql.instances.get
cloudsql.instances.login
(IAM ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์ฆ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ง ํ์)cloudsql.users.list
๋ํ ์ธ์ฆ์ ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ค ๊ถํ๊ณผ ์ฌ์ฉํ๊ณ ์๋ ๊ถํ์ด ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ๊ฐ ์๋์ง ํ์ธํฉ๋๋ค.
Cloud SQL Studio์ ์ธ์ฆ
Cloud SQL Studio์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ก์ธ์คํ๋ ค๋ฉด ๋จผ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์ฆ ๋ฐฉ๋ฒ์ ์ ํํด์ผ ํฉ๋๋ค. Cloud SQL Studio๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ก๊ทธ์ธํ๋ ค๋ฉด ๋ค์ ์ธ์ฆ ์ ํ ์ค ํ๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค.
IAM ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์ฆ. ์ด ์ธ์ฆ ์ ํ์ ์ฌ์ฉํ๋ฉด ์ถ๊ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ๊ด๋ฆฌํ์ง ์๊ณ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ Cloud SQL Studio์ ๋ก๊ทธ์ธํ ์ ์์ต๋๋ค. IAM ๊ทธ๋ฃน ์ธ์ฆ์ ํ์ฉํ์ฌ ์กฐ์ง์ ์ฌ๋ฌ ์ฌ์ฉ์์ ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ก์ธ์ค ๋ฐ ๊ถํ์ ๋์์ ๊ด๋ฆฌํ ์๋ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ ๊ณต ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์ฆ. MySQL ์ฌ์ฉ์ ๊ณ์ ๊ณผ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ Cloud SQL Studio์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐ๊ฒฐํฉ๋๋ค.
๋ฐ์ดํฐ ํ์
ํ์๊ธฐ ์ฐฝ์ ์ก์ธ์คํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
-
Google Cloud ์ฝ์์์ Cloud SQL ์ธ์คํด์ค ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
- ๋ชฉ๋ก์์ ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
- ํ์ ๋ฉ๋ด์์ Cloud SQL Studio๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ, ์ฌ์ฉ์ ์ด๋ฆ, ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํ์ฌ Cloud SQL Studio์ ๋ก๊ทธ์ธํฉ๋๋ค. ํ์๊ธฐ ์ฐฝ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ฒด ๋ชฉ๋ก์ด ํ์๋ฉ๋๋ค.
๋ฐ์ดํฐ ๋ง๋ค๊ธฐ, ์์ , ์ฟผ๋ฆฌ
SQL ํธ์ง๊ธฐ๋ฅผ ์ฌ์ฉํ๋ฉด DDL, DML, DQL ๋ฌธ์ ์กฐํฉ์ ์คํํ ์ ์์ต๋๋ค. ์ฟผ๋ฆฌ๋ฅผ ์ง์ ์์ฑํ๊ฑฐ๋ ํ์๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ฟผ๋ฆฌ ํธ์ง๊ธฐ๋ฅผ ํ ํ๋ฆฟ์ผ๋ก ์ฑ์ธ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํ, ์์ ๋๋ ์ฟผ๋ฆฌํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
-
Google Cloud ์ฝ์์์ Cloud SQL ์ธ์คํด์ค ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
- ๋ชฉ๋ก์์ ์ธ์คํด์ค๋ฅผ ์ ํํฉ๋๋ค.
- ํ์ ๋ฉ๋ด์์ Cloud SQL Studio๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ, ์ฌ์ฉ์ ์ด๋ฆ, ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํ์ฌ Cloud SQL Studio์ ๋ก๊ทธ์ธํฉ๋๋ค.
- ๋ค์ ๋ฐฉ๋ฒ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํฉ๋๋ค.
- ์์ฒด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
- ๋ฅผ ํด๋ฆญํ์ฌ ์ ํญ์ ์ฝ๋๋ค.
- ์ฟผ๋ฆฌ ํธ์ง๊ธฐ๊ฐ ๋ํ๋๋ฉด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํฉ๋๋ค.
- ํ
ํ๋ฆฟ์ผ๋ก ์์ํ๋ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
- ํ์๊ธฐ ์ฐฝ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด ๋๋ ์ปฌ๋ ์ ์์ ์๋ more_vert ์์ ๋ณด๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค. ์ฌ์ฉ ๊ฐ๋ฅํ ์์ ์ด ํ๋ ์ด์ ํ์๋ฉ๋๋ค.
- ์์ ์ ํด๋ฆญํฉ๋๋ค. ์ฟผ๋ฆฌ ํธ์ง๊ธฐ๋ ํ ํ๋ฆฟ์ผ๋ก ์ฑ์์ง๋๋ค.
- ํ ํ๋ฆฟ์ ์๋ฆฌํ์์๋ฅผ ๋ฐ๊ฟ๋๋ค.
- ์์ฒด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
- ๋ค์ ๋ฐฉ๋ฒ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ์คํํฉ๋๋ค.
- ์ฟผ๋ฆฌ ํธ์ง๊ธฐ์์ ๋ชจ๋ ๋ฌธ์ ์คํํ๋ ค๋ฉด ์คํ์ ํด๋ฆญํฉ๋๋ค.
- ํน์ ๋ฌธ์ ์คํํ๋ ค๋ฉด ํ๋ ๋๋ ์ฌ๋ฌ ๋ฌธ์ ์ ํํ๊ณ ์ ํํ ๋ฌธ ์คํ์ ํด๋ฆญํฉ๋๋ค.
- ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๊ฐ ๊ฒฐ๊ณผ ํญ์ ํ์๋ฉ๋๋ค. ์ฌ๋ฌ ๊ฐ์ ๊ฒฐ๊ณผ ์ธํธ๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ ๋ชจ๋ ๊ฒฐ๊ณผ ๋๋กญ๋ค์ด ๋ชฉ๋ก์์ ๊ฒฐ๊ณผ๋ฅผ ์ ํํฉ๋๋ค.
์ ํ์ฌํญ
- Cloud SQL Studio๋ ๊ฒฝ๋ํ ์ฟผ๋ฆฌ๋ฅผ ์ง์ํฉ๋๋ค. 10MB๋ฅผ ์ด๊ณผํ๋ ์๋ต์ ์๋ฆด ์ ์์ต๋๋ค. Cloud SQL Studio์์ ๋ถ๋ถ ๊ฒฐ๊ณผ๊ฐ ๋ฐํ๋ ์ง์ ์ ํ์ํฉ๋๋ค.
- ์คํ ์ค์ธ Cloud SQL ์ธ์คํด์ค์ ๋ํด์๋ง ์ฟผ๋ฆฌ๋ฅผ ์คํํ ์ ์์ต๋๋ค.
- Cloud SQL Studio๋ ์ธ๋ถ ์๋ฒ๋ฅผ ์ง์ํ์ง ์์ต๋๋ค.
- 5๋ถ์ ์ด๊ณผํ๋ ์์ฒญ์ ์ทจ์๋ฉ๋๋ค.
SET SESSION MAX_EXECUTION_TIME
์ ์ฌ์ฉํ์ฌ ๋ ๊ธด ์ฟผ๋ฆฌ ์ ํ ์๊ฐ์ ์ค์ ํ๋ ๊ฒ์ ์ง์๋์ง ์์ต๋๋ค. MySQL์ฉ Cloud SQL 5.6 ๋ฐ 5.7์ ๊ฒฝ์ฐ ์ฅ๊ธฐ ์คํ DDL ๋ฌธ ํ์์์์ผ๋ก ์ธํด ๋ถ๋ฆฌ๋ ํ์ผ์ด๋ ํ ์ด๋ธ์ด ์์ ํ๊ฒ ๋กค๋ฐฑ๋ ์ ์์ต๋๋ค. ํฐ ํ ์ด๋ธ์์ALTER TABLE
์ ๊ฐ์ ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ ๋๋ ์ฃผ์ํด์ผ ํฉ๋๋ค. - Cloud SQL Studio๋ SQL ์คํฌ๋ฆฝํธ ์คํ์ด ์๋ฃ๋ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ์ ์ด๋ฆฐ ์ํ๋ก ์ ์งํ์ง ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ํธ์ง๊ธฐ ํญ์ ๊ณตํต ์ธ์ ์ ๊ณต์ ํ์ง ์์ผ๋ฉฐ ๋ชจ๋ ์คํ์ด ์ ์ธ์ ์ ์์ํฉ๋๋ค.
- DML, DQL, DDL ๋ฌธ์ ํผํฉํ์ฌ ์คํํ๋ฉด DQL ์ฟผ๋ฆฌ์ ๊ฒฐ๊ณผ๋ง ํ์๋ฉ๋๋ค.
- ๋ธ๋ผ์ฐ์ ๋๋ ๋ธ๋ผ์ฐ์ ํญ์ ๋ซ์๋ Cloud SQL Studio์ ์ฟผ๋ฆฌ ์คํ์ ์ค์ง๋์ง ์์ต๋๋ค. ์ฟผ๋ฆฌ๋ ์๋ฃ๋๊ฑฐ๋ ์ ํ ์๊ฐ์ด ๋ ๋๊น์ง ์คํ๋ฉ๋๋ค.
- Cloud SQL Studio๋
BLOB
๋ฐ์ดํฐ์ ๋ํSELECT
์ฟผ๋ฆฌ ์คํ์ ์ง์ํ์ง ์์ต๋๋ค. SQL ์คํฌ๋ฆฝํธ๊ฐ ์ถ๋ ฅ์BLOB
์ด์ ์์ฑํ๋ฉด SQL ์คํฌ๋ฆฝํธ๊ฐ ์ค๋ฅ์ ํจ๊ป ์คํจํฉ๋๋ค. - MySQL์ฉ Cloud SQL ํด๋ผ์ด์ธํธ ๋ช ๋ น์ด๋ ์ง์๋์ง ์์ผ๋ฉฐ Cloud SQL Studio์์ ์คํํ ์ ์์ต๋๋ค.
- Cloud SQL Studio์์๋
root
์ฌ์ฉ์๊ฐ ์ง์๋์ง ์์ต๋๋ค. - MySQL์ฉ Cloud SQL์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฐ๊ฒฐํ ํ์๊ฐ ์๋๋ผ๋ Cloud SQL Studio์๋ ํญ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํ์ํฉ๋๋ค.
- ๋น๋ฐ๋ฒํธ๊ฐ ๋น์ด ์๋ ์ฌ์ฉ์๋ Cloud SQL Studio์์ ์ง์๋์ง ์์ต๋๋ค.
USE database
๋ ํ์ฑ ์ฟผ๋ฆฌ ์คํ์์๋ง ์คํ ์ดํธํ(Stateful)์ด๋ฉฐ gcloud CLI์์์ ๊ฐ์ด ์๋ํ์ง ์์ต๋๋ค.- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์์๊ฒ localhost์์ ์ฐ๊ฒฐํ ์ ์๋ ๊ถํ์ด ์์ด์ผ ํฉ๋๋ค.
์ฌ๋ฌ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ ์ค์ ์ฟผ๋ฆฌ ์ค ํ๋๊ฐ ์คํจํ๋ฉด ์ฒ์ ๋ฐ์ํ ์ค๋ฅ๊ฐ ๋ฐํ๋ฉ๋๋ค. ์ค๋ฅ ๋ฐ์ ์ด์ ๋ฐฐ์น์ ์๋ ์ผ๋ถ ๋ฌธ์ ์ฑ๊ณต์ ์ผ๋ก ์คํ๋์์ ์ ์์ต๋๋ค.
transaction
๋ฌธ์ผ๋ก ์ฌ๋ฌ ์ฟผ๋ฆฌ๋ฅผ ๋ํํ์ฌ ์ด ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ ์ ์์ต๋๋ค.START TRANSACTION; YOUR_SQL_STATEMENTS COMMIT;
๋ค์์ ๋ฐ๊ฟ๋๋ค.
- YOUR_SQL_STATEMENTS: ์ด ์ฟผ๋ฆฌ์ ์ผ๋ถ๋ก ์คํํ ๋ฌธ