-
Notifications
You must be signed in to change notification settings - Fork 6
몽고디비 사용자 권한 설정 방법
박재윤 edited this page Dec 10, 2020
·
4 revisions
서비스 정지
서비스 시작
서비스 재시작
서버 부팅시 자동 재시작 설정
서버 부팅시 자동 재시작 금지
맨 처음에 mongodb를 실행하면 관리자 계정이 없기 때문에 관리자 계정을 만들어준다.
> use admin
> db.createUser({
user: 'username',
pwd: 'password',
roles: ['userAdminAnyDatabase']
})
데이터 베이스로 들어간 후에 사용자를 만든다.
> use dbname
> db.createUser({
user: 'username',
pwd: 'password',
roles: ['dbOwner']
})
서버에서 service를 이용해서 background로 실행할 때 auth 옵션이 잘 되지 않았다.
/lib/systemd/system/system/mongodb.service
파일을 보면 /etc/mongodb.conf
파일을 config 파일로 삼아서 실행을 시키도록 되어있고 /etc/mongodb.conf
파일에서 auth=true
가 설정이 되어 있음에도 몽고디비를 service를 이용해서 실행을 시키면 authentication이 설정이 안 되어 있는 상태에서 실행이 되는 문제가 있었다. 따라서 service를 사용하지 않고 --fork를 이용해서 백그라운드로 실행을 시켜주었다. --fork를 사용하면 daemon으로 실행된다. daemon은 메모리상에 있으면서 특정 요청이 오면 즉시 대응 할 수 있도록 대기중인 프로세스를 말한다
mongod --fork --logpath=/var/log/mongodb/mongodb.log --auth
mongod --shutdown
mongo --port 27017 -u "username" -p "****" --authenticationDatabase "dbname"