본문 바로가기

프로젝트 설정/AWS|GCP

[GCP/DB] mysql dump (feat. mariadb)

반응형

온프레미스로 운영중이던 mariadb 서버의 데이터를 gcp cloud mysql 에 옮기려고 한다.

  • 아직 데이터가 많지 않아 그냥 mysqldump 사용
  • 실시간으로 데이터 쌓이는 서버인 경우 여러가지 방법이 있지만 아래와 같은 방법으로 처리했다.
    • 1. 기존 데이터를 dump하고
    • 2. 데이터가 옮기는 database에 넣어지도록 설정하고
    • 3. 추후 누락된 데이터 확인/추가

mysql 서버 생성

https://24hours-beginner.tistory.com/546

 

[GCP/DB] GCP Cloud SQL - DB Server 생성하기 (feat. mysql)

1. 인스턴스 만들기https://console.cloud.google.com/sql/instances1. 인스턴스 만들기 클릭2. database 선택3.인스턴스 생성3-1. 인스턴스 이름 설정소문자, 숫자, 하이픈을 사용하세요. 영문자로 시작해야 

24hours-beginner.tistory.com

기존 데이터 백업

기존 서버에서 데이터 백업을 해준다.

mysqldump -u [username] -p[password] --all-databases > all_databases_backup.sql
mysqldump -u [username] -p[password] [database_name] > select_database_backup.sql
mysqldump -utest -p test_db_server > backup_20240603.sql

cloud mysql server - database 생성

cloud mysql 서버에 database를 생성한다.

CREATE DATABASE `test_db_server` /*!40100 COLLATE 'utf8mb4_0900_ai_ci' */;

mysqldump

mysqldump를 하기 위하여 외부 ip를 허용해줘야한다.

기존 서버에서 아래 명령어를 실행해준다.

# 여기서 username과 pw는 클라우드 서버의 아이디와 비밀번호를 적어야한다.
mysql -h [Cloud_SQL_Instance_IP] -u [사용자 이름] -p[비밀번호] [데이터베이스 이름] < backup.sql
mysql -h 192.168.0.1 -utest -ptest123! test_db_server < backup.sql

용량이 클수록 오래걸린다. 기다리자.

cloud_sql_instance_ip 확인

더보기

개요 > 이 인스턴스에 연결 > 공개 ip주소

  • 연결 > 네트워크> 요약 > 공개ip연결 > 공개 ip주소

 

외부접속설정

1. % 또는 접속되는 ip 넣은 사용자 생성

2. 외부접속 가능한 ip 추가

외부접속설정

 

[GCP/DB] GCP Cloud SQL - DB Server 생성하기 (feat. mysql)

1. 인스턴스 만들기https://console.cloud.google.com/sql/instances1. 인스턴스 만들기 클릭2. database 선택3.인스턴스 생성3-1. 인스턴스 이름 설정소문자, 숫자, 하이픈을 사용하세요. 영문자로 시작해야 

24hours-beginner.tistory.com

확인

잘들어갔나 확인하면 끝!

 

에러

ERROR 2002 (HY000): Can't connect to server on 'cloud sql server ip주소' (115)

1. database 생성했는지 확인한다.

2. database에 접속이 가능한지 확인한다.

mysql -h [Cloud_SQL_Instance_IP] -u [사용자 이름] -p[비밀번호] [데이터베이스 이름]
mysql -h 192.168.0.1 -utest -ptest123! test_db_server

2-1. 접속이 안된다면 ip주소, 사용자이름, 비밀번호, 데이터베이스 이름을 한번 더 확인한다.

2-2. 접속ip를 한번 더 확인하고, 외부접속 등록이 완료되었는지 한번 더 확인한다.

반응형