MountainGo

[AWS] EC2 Linux2에 MariaDB 설치 및 데이터 마이그레이션

gom20 2023. 1. 26. 12:54

1. MariaDB 설치

marida db 설치

sudo yum install mariadb-server

 

서비스 실행

sudo systemctl start mariadb

 

상태확인

sudo systemctl status mariadb

 

관리자 비밀 번호 설정

mysqladmin -u root -p password '비밀번호'

설정 시 비밀 번호를 묻는데, 초기에는 없으므로 그냥 Enter를 치면 됨

 

접속

mysql -u root -p

설정한 비밀번호 입력 / 접속 완료

 

2. 데이터 베이스 생성

데이터 베이스 생성

create database DB명

 

생성된 DB 확인

show databases

 

계정 생성

 create user '유저명'@'허용 IP' identified by '비밀번호'

권한 부여

GRANT ALL PRIVILEGES ON [데이터베이스 이름].[허용할 테이블] TO '[계정이름]'@'[허용ip]';
FLUSH PRIVILEGES;

 

전체 테이블 권한 줄 경우 DB명.* 로 가능

 

** 허용 ip % 로 줄경우 외부 접속 모두 허용.

다만 localhost는 %에 포함이 안되는지... access denied되는 문제가 있어

localhost에서 접속하는 계정은 허용 ip를 localhost로 지정해주었다. 

 

3. DBeaver로 접속하기 

AWS 보안 규칙 추가

DBeaver 실행

Create Connection > MariaDB 선택

인스턴스의 public DNS Ip4v 주소로 접속

생성한 계정의 아이디와 비밀번호 입력

 

4. DBeaver 로컬 DB에서 클라우드 DB로 데이터 이관

로컬 DB에서 테이블 선택한 후, 우클릭 > 데이터 내보내기

 

타겟DB 지정 (이전에 연결한 AWS DB 컨테이너를 지정한다)

 

기타 설정 후, 최종 confirm

테이블이 존재하지 않으면 자동 생성된다.

하지만 테이블은 DDL로 별도 생성하고 데이터만 옮기는 것을 추천한다.