# AWS EC2 에서 Node.js 와 MySQL 을 설치, 세팅하는 방법
EC2(Elastic Compute Cloud)에서
1) 인스턴스(컴퓨터 1대)를 생성하고,
2) SSH 접속하여,
3) node.js 와 MySQL을 세팅하는 방법을 정리한다.
1. EC2 생성
- 리전 : 화면 우상단에서 리전을 "서울" 등으로 선택하고 시작
- 인스턴스 시작 : EC2 서비스 화면에서 "인스턴스 시작"
- 이름 입력: 원하는 이름을 입력.
- OS 이미지 선택 : 원하는 OS를 골라준다. (이 글은 리눅스 우분투 기준이다)
- 방화벽(보안그룹) : ssh 22포트 체크 확인. (SSH 접속 용도)
- 필요에 따라 http 80포트, https 443 포트를 추가해둔다. (웹서버 접속 용도)
- 키페어: SSH Key.pem 파일도 생성하여 잘 다운로드 받아둔다. (기존 게 있다면 그대로 사용도 가능)
2. EC2 접속(SSH)
- 터미널이나 Putty 등의 SSH 접속 프로그램을 켠다.
- SSH Key.pem 파일이 저장된 경로로 이동한다.(cd 명령어 등을 통해)
1) key.pem 파일 권한 수정
- chmod 400 SSHkey.pem
2) EC2 접속
- ssh -i "SSHKey.pem" ubuntu@퍼블릭 IPv4 DNS
* 명령어를 직접 확인하려면
* EC2 > 인스턴스 경로에서, 인스턴스 선택한 다음 "연결"을 클릭 후,
* SSH 클라이언트 탭을 선택하면 볼 수 있다.
EC2 접속에 성공하면, 본격적으로 설치를 시작한다.
* 터미널에서하는 모든 작업은 권한 에러가 뜰 경우, sudo 를 붙여주거나 처음부터 sudo su 로 시작해주자.
3. Node.js 설치
- 아래의 명령어를 하나씩 차례대로 수행한다.
- apt-get update
- apt-get install -y build-essential
- apt-get install curl
- curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash --
- apt-get install -y nodejs
* build-essential을 설치하지 않으면, 일부 npm 모듈 설치가 잘 안 된다고 해서 가급적 설치하는 편이다.
* 위 명령어는 Node.js 14 버전을 설치한다. (Node.js 16이나 18 버전을 설치하려면, 숫자만 바꿔주면 된다)
* 참고 : https://github.com/nodesource/distributions/blob/master/README.md#debinstall
/* ------
Node.js 설치 후,
npm insall 으로 패키지 설치시, 아래와 같은 Bcrypt 설치 에러 등이 발생할 수 있다.
npm ERR! Failed at the bcrypt install script.
Pre-built binaries not installable for bcrypt@5.0.1 and node@14.19.3
Node Pre gyp install failed with error Error command failed node Pre gyp install fallback-to-build
아래 명령어 수행후, 터미널을 껐다가 재접속하여 npm install을 다시 해주면 된다.
npm i -g node-pre-gyp
------ */
4. mysql 설치
- 설치 : apt-get install -y mysql-server
- 설치 버전 확인: mysql --version
5. mysql 비밀번호 설정
- root 로 접속: mysql -u root -p
* password 는 없을 것이므로, 그냥 엔터 치면 된다.
- mysql 데이터베이스 사용: use mysql;
- 계정 정보 확인: select Host, User, authentication_string from user;
- root 비번 변경 : alter user 'root'@'localhost' identified with mysql_native_password by '사용할비밀번호';
- 적용: flush privileges;
- 확인: select Host, User, authentication_string from user;
- 다음부터 설정한 비번으로 root 접속하면 된다.
- 만약 MySQL System Time Zone을 KST 변경하려면, 터미널 상에서 아래 명령어 수행.
- cp /usr/share/zoneinfo/Asia/Seoul /etc/localtime
자주 하는 작업이 아니라, 할 때마다 헷갈려서 정리해둔다.
'개발(Development) > Etc(기타)' 카테고리의 다른 글
[VS Code] Enter 개행 다음줄 들여쓰기 간격(Indent) 문제 조정 방법 (0) | 2022.08.21 |
---|---|
[VS Code] .git 등 숨김 파일/폴더 표시 방법 (0) | 2022.08.19 |
GCP(구글클라우드플랫폼) SSH 접속 불가 문제 해결 방법: 디스크 크기 설정 등 (0) | 2022.01.31 |
[GCP] Compute Engine 인스턴스 중지/삭제 방법 (0) | 2022.01.29 |
[GCP] Compute Engine 인스턴스 백업 방법 (스냅샷 생성 및 적용) (0) | 2022.01.28 |
댓글