[AWS] EC2에 MySQL 설치(Ubuntu)

J-Cheol·2024년 3월 28일

1. 시스템 패키지 업데이트


sudo apt-get update

2. MySQL 설치


sudo apt-get install -y mysql-server

3. MySQL 설치 버전 확인


mysql --version

4. MySQL 보안 설정


비밀번호 정책 설정, 루트 로그인을 비롯한 보안 관련 설정

sudo mysql_secure_installation

4.1 VALIDATE PASSWORD COMPONENT

비밀번호의 강도를 테스트하고 보안을 향상시키기 위한 기능입니다.

  • YES : 비밀번호 검증 컴포넌트를 활성화하고, 비밀번호 정책을 설정합니다. 이 옵션을 선택하면, 이후 단계에서 비밀번호의 최소 조건(길이, 복잡성 등)을 설정할 수 있는 옵션이 제공됩니다. 강력한 보안 정책을 선호한다면 좋은 선택입니다.
  • No : 비밀번호 검증 컴포넌트를 활성화하지 않습니다. 이 옵션을 선택하면, 사용자가 비밀번호의 복잡성에 대한 제한 없이 어떤 비밀번호든 설정할 수 있게 됩니다.


4.2 Remove anonymous users?

MySQL 설치 시 기본적으로 생성되는 익명 사용자를 제거할지 여부에 대한 것입니다.
익명 사용자는 아이디와 비밀번호 없이도 MySQL에 접속할 수 있게 허용하는 계정으로, 주로 테스트 목적으로 사용됩니다. 대부분의 경우 익명 사용자를 제거하는 것이 좋습니다.

  • YES : 익명 사용자 제거
  • No : 익명 사용자를 제거하지 않습니다.

4.3 Disallow root login remotely?

MySQL의 root 사용자가 네트워크를 통해 원격으로 로그인하는 것을 금지할지 여부에 대한 것입니다.

  • Yes : 원격에서 root 사용자의 로그인을 금지합니다.
  • No : 원격에서 root 사용자의 로그인을 허용합니다.

저는 팀 프로젝트이지만 팀원들이 이용할 경우 사용자 계정을 별도로 생성하여 권한을 부여할 것이기에 Yes를 선택합니다.

4.4 Remove test database and access to it?

기본적으로 제공되는 test 데이터베이스를 제거할지 여부에 대한 것입니다.

  • Yes : test데이터베이스와 이에 대한 접근 권한을 제거합니다. 이는 실제 운영 환경에서 불필요한 보안 위험을 줄이는데 도움이 됩니다.
  • No : test 데이터베이스를 그대로 두고 접근 권한도 유지합니다. 이는 일반적으로 개발 또는 테스트 환경에서만 권장됩니다.

4.5 Reload privilege tables now?

변경 사항이 즉시 적용되도록 권한 테이블을 다시 불러오는 것에 대한 확인을 요청하고 있습니다.

  • Yes : 지금까지 수행한 모든 변경 사항이 즉시 적용됩니다. 데이터베이스 설정의 일관성을 유지하고, 새로운 설정이 바로 반영되도록 하는 가장 좋은 방법입니다.
  • No : 변경 사항을 나중에 적용하고자 할때 사용합니다.

4.6 요약

처음을 제외하고는 전부 y
n, y, y, y, y

5. root로 MySQL 접속하기

sudo mysql -u root

profile
신입 백엔드 개발자(JAVA, Spring Boot, MYSQL)

0개의 댓글