wsl?
WSL 사용
Windows 에서 Linux를 설치 및 실행
* Linux용 Windows 하위 시스템
WSL 환경 설정
wsl 설치
wsl --install
우분투 설치 후 컴퓨터를 재시작
root username 설정
wsl 에 root 설정
root passwd 설정
sudo passwd root
wsl 에 root 로그인
sudo su
WSL 에 MongoDB 설치
mongoDB 설치 과정
// 패키지 관리 시스템에서 사용하는 공개 키 가져오기
sudo apt-get install gnupg curl
curl -fsSL https://pgp.mongodb.com/server-7.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
--dearmor
// MongoDB에 대한 목록 파일 만들기
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.com/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
// 로컬 패키지 데이터베이스 다시 로드
sudo apt-get update
// MongoDB 패키지 설치
sudo apt-get install -y mongodb-org
WSL 에 MongoDB 실행
mongoDB 시작
sudo systemctl start mongod
// or
sudo service mongod start
mongoDB 상태 보기
sudo systemctl status mongod
// or
sudo service mongod status
mongoDB 종료
sudo systemctl stop mongod
// or
sudo service mongod stop
mongoDB 재시작
sudo systemctl restart mongod
// or
sudo service mongod restart
MongoShell 실행
mongosh
mongod.conf 에 ec2 설정
bindIp ) 127.0.0.1 => 0.0.0.0
security ) 활성화
vi 명령어
$ sudo vi /etc/mongod.conf
net:
port: 27017
bindIp: 0.0.0.0
security:
authorization: enabled
mongosh 에 admin 설정
mongosh mongodb://공용IP(or 인스턴스 전용 IP)
use admin
# 외부접속용 계정
db.createUser({user: "[유저ID]", pwd: "[유저PWD]", roles: ["root"]});
exit
service mongod restart
📢 만약 exit code 로 mongodb 가 fail 한다면
# mongodb 사용 로그 확인
sudo vi /var/log/mongodb/mongod.log
# mongodb 27017 포트를 사용준인 pid 확인
sudo lsof -i :27017
# 실행중인 pid 죽이기 (밑에는 8142일 때)
sudo kill 8142 (안 죽으면 sudo kill -9 8142)
# mongodb 실행
sudo systemctl start mongod
# mongodb 상태 확인
sudo systemctl status mongod