< Lab >
Lab into : Creating Databases on Compute Engine
실습: Compute Engine에서 데이터베이스 만들기
- 컴퓨팅 엔진에서 데이터베이스를 생성하는 방법 학습
- Linux에서 MySQL 데이터베이스를 생성
- Windows에서 SQL 서버 데이터베이스를 생성
- Google 클라우드 SDK를 사용해 서버 생성을 자동화
Creating Databases in Compute Engine
Compute Engine에서 데이터베이스 만들기
- Linux에서 MySQL 데이터베이스 생성
- Compute Engine - VM 인스턴스 - 인스턴스 만들기
- 이름을 mysql-db로 한 후, 부팅 디스크를 Ubunto Pro (Ubunto Pro 18.04 LTS) 를 선택한 후 나머지를 기본값으로 생성
- VM이 준비되면 SSH를 클릭
- 터미널 창에서 APT 패키지 관리자를 사용해 패키지를 업데이트하고 MySQL을 설치
루트 데이터베이스 사용자의 암호를 입력하라는 메시지가 표시되면 나중에 필요하므로 기억할 수 있는 암호를 입력
sudo apt update sudo apt install -y mysql-server
- 데이터베이스를 보호하기 위해 명령 입력
조금 전 생성한 비밀번호를 입력하고 각 프롬프트에 대해 모두 아니오로 응답
sudo mysql_secure_installation
- 데이터베이스 로그인
sudo mysql -u root -p
- 현재 데이터베이스를 본 후 새 데이터베이스를 생성
SHOW databases; CREATE database petsdb;
- 생성한 데이터베이스로 전환 후 테이블 생성 및 레코드 추가
USE petsdb; CREATE TABLE pets ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), breed VARCHAR(255) ); INSERT INTO pets (name, breed) VALUES ('Noir', 'Schnoodle');
- 레코드 추가를 확인한 후 데이터베이스 로그아웃
SELECT * FROM pets; exit
- Windows에서 SQL Server 데이터베이스 생성
- Compute Engine - VM 인스턴스 - 인스턴스 만들기
- 이름을 sql-server-db, 머신 유형을 e2-standard-4로 한 후,
부팅 디스크를 SQL Server on Windows Server (SQL Server 2019 Web on Windows Server 2019 Datacenter) 를
선택한 후 나머지를 기본값으로 생성
- Windows 서버가 준비되면 드롭다운 화살표를 클릭한 다음 Windows 암호 설정을 선택
사용자 이름을 그대로 두고 설정을 클릭한 후 생성된 비밀번호를 복사하여 기억하고 닫기를 클릭
- Windows 시스템에 로그온하려면 RDP 클라이언트가 있어야 하므로
Windows를 사용하는 경우, 드롭다운 화살표를 클릭한 다음 RDP 파일 다운로드를 선택한 후
다운로드가 완료되면 파일을 두 번 클릭한 다음 복사한 사용자 이름과 비밀번호로 로그인
- Windows 서버에 로그온한 경우 서버 관리자 대시보드를 닫음
- 시작 메뉴에서 SSMS를 입력 한 다음 SQL Server Management Studio 바로 가기를 클릭하여 프로그램을 실행
- 서버 이름은 SQL-SERVER-DB여야 하며 연결을 클릭
- Management Studio의 개체 탐색기에서 SQL-SERVER-DB 를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택
서버 속성 대화 상자에서 보안 페이지를 선택한 후 서버 인증의 경우 SQL Server 및 Windows 인증 모드를 선택한 후 확인 클릭
경고 메시지를 읽고 확인을 다시 클릭
- 개체 탐색기에서 서버를 마우스 오른쪽 버튼으로 클릭하고 다시 시작을 선택한 후 메시지가 나타나면 예를 클릭.
다시 시작 명령이 비활성화된 경우 시작 메뉴를 클릭 하고 서버를 재부팅
로그인하면 SQL Server Management Studio로 돌아가 데이터베이스 서버에 연결 - 트리 보기의 보안 및 로그인 분기를 확장한 후 로그인 분기를 마우스 오른쪽 버튼으로 클릭하고 새 로그인을 선택
- 로그인 이름에 이름을 입력한 후 SQL Server 인증을 선택하고 기억할 암호를 입력
비밀번호 정책 시행을 지우고 사용자는 다음 로그인 시 비밀번호를 변경
1) 서버 역할 페이지를 클릭하고 sysadmin 역할을 선택
2) 사용자 매핑 페이지를 클릭하고 모든 데이터베이스를 선택
3) 확인을 클릭
- 방금 만든 로그인을 테스트하려면 개체 탐색기에서 연결을 클릭한 다음 데이터베이스 엔진을 선택
- 인증에 대해 SQL Server 인증을 선택하고 사용자 이름과 암호를 입력한 다음 연결을 클릭
- 도구 모음에서 새 쿼리를 클릭 후 데이터베이스 생성
CREATE DATABASE petsdb;
- 실행 버튼 왼쪽에 있는 데이터베이스 드롭다운에서 데이터베이스를 선택한 후 테이블 생성
USE petsdb; CREATE TABLE pets ( id INT PRIMARY KEY IDENTITY (1, 1), name VARCHAR (MAX), breed VARCHAR (MAX) );
- 레코드를 추가하고 작동 확인
INSERT INTO pets (name, breed) VALUES ('Noir', 'Schnoodle'); SELECT * FROM pets;
- RDP 연결을 닫음
- Google Cloud SDK를 사용하여 서버 생성 자동화
- Compute Engine - VM 인스턴스 - 인스턴스 만들기
- 이름을 db-server로 한 후, 부팅 디스크를 Debian GNU/Linux 9 로 선택한 후
NETWORKING, DISKS, SECURITY, MANAGEMENT, SOLE-TENANCY 탭 확장 후 Management의 Automation에 붙여넣기
그 후 생성 대신 EQUIVALENT COMMAND LINE 선택 - 서버를 생성을 자동화하는데 사용할 수 있는 gcloud CLI 명령어가 표시됨
RUN IN CLOUD SHELL 을 클릭 하고 Cloud Shell에서 Enter
- 시작 스크립트가 실행된 후 Cloud Shell 터미널을 통해 머신에 로그인
계속하시겠습니까(Y/n)?라는 메시지가 표시되면 Y를 입력
gcloud compute ssh db-server --zone=us-central1-a
- 데이터베이스 서버가 실행 중인지 확인
sudo systemctl status mysql