< Lab >
Lab into : Creating a Cloud SQL Database
실습: Cloud SQL 데이터베이스 만들기
- Cloud SQL을 사용해 PostgreSQL 데이터베이스를 생성
- Google Cloud SDK를 사용해 클라이언트 시스템에서 데이터베이스에 연결
Creating a Cloud SQL Database
Cloud SQL 데이터베이스 만들기
- Cloud SQL PostgreSQL 데이터베이스 생성
- SQL - 인스턴스 생성 - PostgreSQL 선택 - 인스턴스 이름을 postgresql-db 으로 하여 생성
- 데이터베이스 생성 확인
- Cloud SDK를 사용하여 데이터베이스에 연결
- 생성된 postgresql-db Overview의 인스턴스 연결에서 Cloud Shell을 사용해 연결 후 Enter 및 비밀번호 입력
- 데이터베이스 조회
\l
- 데이터베이스 생성 및 작동 확인
CREATE DATABASE petsdb; \l
- 데이터베이스 연결
\c petsdb;
- 테이블 생성
CREATE TABLE Pets(ID INT PRIMARY KEY NOT NULL, Name TEXT, Breed TEXT);
- 레코드 추가
INSERT INTO Pets (ID, Name, Breed) Values (1, 'Noir', 'Schnoodle');
- 쿼리 실행하여 데이터베이스 조회
SELECT * FROM Pets;
- Ctrl + C를 통해 데이터베이스 연결을 끊고 Cloud Shell로 돌아가기
- CLI를 사용하여 Cloud SQL MySQL 데이터베이스 만들기
- Cloud Shell 명령 프롬프트에서 CLI 명령을 입력해 MySQL 데이터베이스 생성 후 서버의 기본 IP주소 기억해두기
+) IP 주소 : 34.132.241.140gcloud sql instances create mysql-db --tier=db-n1-standard-1 --zone=us-central1-a
- 루트 계정의 암호 설정
예) gcloud sql users set-password root --host=% --instance=mysql-db --password=your-password-here gcloud sql users set-password root --host=% --instance=mysql-db --password=0506
- CLI를 사용해 Cloud SQL 데이터베이스에 연결하기 위해 명령 입력 및 비밀번호 입력
gcloud sql connect mysql-db --user=root --quiet
- MySQL 프롬프트에서 작동하는지 확인
SHOW DATABASES;
- Cloud Shell 명령 프롬프트로 돌아가기 위해 exit 입력
- 가상 머신에서 MySQL 데이터베이스에 연결
- Cloud Shell에서 테스트 클라이언트로 사용할 수 있는 Debian 9 가상머신 생성 후 외부 IP 주소 기억해주기
+) 외부 IP 주소 : 34.67.203.114gcloud compute instances create test-client --zone=us-central1-a --image=debian-9-stretch-v20200521 --image-project=debian-cloud
- 콘솔 - Cloud SQL 서비스로 돌아가서 mysql-db 데이터베이스 선택 후 세부 정보 확인
- 연결 섹션을 클릭해 네트워크 추가 선택 후 가상 머신의 외부 IP 주소 입력 후 완료
- Cloud Shell로 돌아가서 테스트 클라이언트에 SSH로 연결
gcloud compute ssh test-client --zone=us-central1-a
- MySQL 클라이언트 소프트웨어 설치
sudo apt-get update sudo apt-get install -y mysql-client
- 위에서 생성한 Cloud SQL MySQL 데이터베이스 서버에 로그인
예) mysql --host=[Database Public IP Address] --user=root --password mysql --host=34.132.241.140 --user=root --password
- MySQL 프롬프트에서 작동하는지 확인
SHOW DATABASES;
- Cloud Shell 명령 프롬프트로 돌아가기 위해 exit 입력