반갑습니다!
저번 포스트까지 해서
①AWS EC2 인스턴스를 생성하고
②PuTTY, PuTTYGen을 설치한 뒤
③PuTTYGen으로 .pem → .ppk 포맷 변환을 하고
④PuTTY를 이용해 EC2에 원격 접속하여
⑤EC2 인스턴스의 Linux 환경에서 MongoDB를 성공적으로 설치하였습니다 ^^!
이번 포스트에서는 EC2 인스턴스에서
MongoDB를 실행하고 중지하고 재실행해보고
기본적인 설치&세팅에 관련된 내용을 마무리짓도록 하겠습니다 ^^!
1. MongoDB 시작
위 명령어를 실행했을 때 정상적으로 동작하였으면
위 이미지와 같이 아무런 메세지도 출력되지 않습니다 ^^
만약에 Error 발생시 "fail ~" 관련한 메세지가 출력될텐데,
해당 상황 발생시 공식 안내와 같이 재시도하시면 되시겠습니다 ^^!
2. MongoDB 동작상태 확인
앞 과정에서 sudo systemctl start mongod 명령어가 정상 동작하였다면
지금 백그라운드에서 MongoDB가 실행중인 상태입니다 ^^
근데 사실 눈에 보이지 않으니까 정상 동작 중이라는게 확 와닿지는 않죠
해서 ACTIVE 상태인지 출력을 한 번 해보겠는데요
상기 이미지에서 첫 번째 명령어인 sudo systemctl status mongod를
실행시키면 아래 이미지와 같이 동작 상태를 확인할 수 있습니다 ^^
동작 상태를 확인해보니 초록색으로 active(running)라고 표시되어 있는 것을 확인할 수 있겠습니다 ^^
근데 여기서 만약, 드물기는 하지만, EC2를 중지시켰다가 다시 가동시키는 경우에,
해당 상황마다 매번 번거롭게 MongoDB를 실행시키기보다
항상 시스템 시작시마다 자동으로 실행되도록 설정 해놓는 것이 편하겠죠? ^^
그래서
sudo systemctl enable mongod를 실행시켜서
시스템 재시작시에 자동으로 실행되도록 설정해놓겠습니다 ^^
필수 사항은 아니고 Optional이긴 하지만
우리는 학습자의 입장이므로 하나라도 더 알아두는게 좋겠죠 ^^?
해당 코드를 동작시키면 위와 같은 메세지가 하나 출력됩니다 ^^
3. MongoDB 중지
프로세스가 생성되었으면 중지도 시킬 수 있어야겠죠?
이번엔 해당 명령어를 통해 MongoDB를 중지시켜보겠습니다
stop 명령어 실행 후 status를 조회해보니
아까와는 달리 inactive 상태로 표시되는 것을 확인할 수 있겠습니다 ^^
언제 중지되었는지도 출력이 되는데요
UTC 기준으로 표시되어 05:25:21으로 나오니까
한국 Local 타임으로 변환하기 위해 +09:00를 연산해주면
제가 동작을 중지시킨 14:25:21이 정확히 계산되네요 ^^
4. MongoDB 재시작
중지 시켰던 프로세스를 재시작 시켜보겠습니다 ^^
이번에도 마찬가지로 재시작 후 실제로 명령어가 제대로 동작했는지
status를 다시 조회해보겠습니다 ^^!
재시작 후 다시 status를 조회해보니 이번엔 active 상태로 출력이 됩니다 ^^
UTC 05:29:54니까 방금 시간인 14:29:54 정확하네요 !
5. MongoDB 실행
MongoDB가 실행중인 상태에서 위 명령어인 mongosh를 입력하면
MongoDB에 접속해서 Local 환경에서 데이터베이스를 다룰 수 있습니다 ^^
sudo systemctl start mongod와 mongosh의 차이점이라 할 것 같으면,
①컴퓨터를 켜는 것과 ②켜진 컴퓨터로 작업을 하는 것의
차이인 느낌이라면 이해가 쉬우실까요? ^^
프로세스가 생성 되어서 해당 프로그램이 동작 중이어야
그 프로그램을 가지고 목적에 맞는 작업이 가능하니까요 ^^
MySQL을 CLI 환경에서 동작시킬 때에도 마찬가지입니다 ^^
net start mysqld 명령어를 통해서 우선 프로세스를 생성한 다음에
mysql -u root -p를 입력하여 패스워드를 기입하고
해당 사용자로 접근하는 것과 같은 느낌입니다 ^^!
여기까지 해서 메인 설치&세팅은 얼추 마무리가 되었는데요
중요한 부분이 하나 있습니다!
지금 우리는 EC2에 접속해서 Local 환경에서 MongoDB를 실행시켰죠
EC2 인스턴스에 접속한 것만 원격이었을 뿐,
우리가 직접 EC2에 접속해서 해당 환경에서 명령어를 통해 MongoDB를 제어했으니까
MongoDB 실행 자체는 Local에서 작업한 것과 마찬가지입니다 ^^;;;
해당 DB를 다루기 위해서 매번 번거롭게 EC2를 원격 접속해야 할까요?
외부 환경에서 DB에 접근할 수는 없을까요?
이 부분을 위해서 별도로 또 필요한 설정들이 있는데요
이 부분은 다음 포스트에서 다루도록 하겠습니다 ^^!
읽어주셔서 감사드리고 다음 포스트에서 나머지 내용으로 찾아뵙겠습니다 !!