개발자는 오늘도 달립니다.
[MongoDB] 몽고 DB 설치 및 세팅 With CentOS 본문
현재, NoSQL 기술로 만들어진 제품의 종류는 무려 200개가 넘습니다. 하지만 아래 그림에서 보는 바와 같이 MongoDB가 5위에 랭크될 만큼 많은 관심과 우수한 기술을 기반으로 하고 있음을 알 수 있습니다. (2020.10.07)
그럼 거두절미하고 Centos 에서의 설치 방법을 기록해 보도록 하겠습니다.
1. 먼저 패키지 업데이트 여부를 확인
sudo yum -y update
2. MongoDB 4.0 저장소 메타 정보 생성
sudo touch /etc/yum.repos.d/mongodb-org.repo;
sudo bash -c 'echo "[mongodb-org-4.0]" >> /etc/yum.repos.d/mongodb-org.repo';
sudo bash -c 'echo "name=MongoDB Repository" >> /etc/yum.repos.d/mongodb-org.repo';
sudo bash -c 'echo "baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86\_64/" >> /etc/yum.repos.d/mongodb-org.repo';
sudo bash -c 'echo "gpgcheck=1" >> /etc/yum.repos.d/mongodb-org.repo' sudo bash -c 'echo "enabled=1" >> /etc/yum.repos.d/mongodb-org.repo';
sudo bash -c 'echo "gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc" >>/etc/yum.repos.d/mongodb-org.repo'
3. MongoDB 4.0 설치
sudo yum install -y mongodb-org
4. 설정 파일 수정 (/etc/mongod.conf)
net:
port: 27017내부망에 연결된 모든 노드로부터의 원격 접속을 허용
개발 및 테스트 환경에서만 사용, 운영 환경에서는 보안 문제로 비추천
bindIp: 0.0.0.0
5. MongoDB 4.0 서비스 시작 및 서비스 enable
sudo systemctl start mongod
sudo tail -f /var/log/mongodb/mongod.log
2019-07-27T16:13:26.779+0000 I NETWORK [initandlisten] waiting for connections on port 27017
sudo systemctl enable mongod.service
(Firewall 방화벽 사용 경우) MongoDB 원격 접속을 위한 포트 허용
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
6. 어드민계정생성 (pwd: "꼭 변경해서 사용하세요!")
mongo
use admin
db.createUser(
{
user: "Admin",
pwd: "zxcv",
roles: [ "readWriteAnyDatabase", "dbAdminAnyDatabase", "clusterAdmin" ]
}
)
7. 유저계정생성 (pwd: "꼭 변경해서 사용하세요!")
mongo
use iot_db
db.createUser(
{
user: "iot_user",
pwd: "zxcv",
roles: [ { role: "readWrite", db: "iot_db" },
{ role: "read", db: "iot_db" } ]
}
)
8. 설정 파일 재수정 (/etc/mongod.conf)
...
security:
authorization: enabled
...
수정 후 mongo 데몬 서비스 재시작
sudo systemctl restart mongod
※ 접속 커맨드
mongo admin --port 27017 -u "Admin" -p "zxcv" --authenticationDatabase "admin"
mongo iot_db --port 27017 -u "iot_user" -p "zxcv" --authenticationDatabase "iot_db"
use iot_db
db.auth("iot_user","zxcv")
※ sort 쿼리 최대 개수 허용치 늘리기
db.adminCommand({"setParameter": 1, "internalQueryExecMaxBlockingSortBytes" : 134217728})
※ 몽고 디비 저장소 바꿀 때는 권한 문제에 신경을 써줘야 한다!
(if permanently want to fix this just try to give rwx premission to /data/db folder)
chmod +rwx data/
'데이터베이스 > 몽고DB' 카테고리의 다른 글
[MongoDB] 몽고DB 설치하기 - Windows (0) | 2021.11.05 |
---|---|
[MongoDB] 컬렉션 조회 함수 조회 하기 및 특정 컬렉션 빼고 삭제 하기! (0) | 2021.02.09 |
[MongoDB] 몽고DB 샤딩(Sharding) 구성하기! (1) | 2021.01.29 |
[MongoDB] Mongoose(몽구스) 메뉴얼 - 프로미스 편 (0) | 2020.07.10 |
[MongoDB] 비교, 논리 쿼리 연산자 (0) | 2020.07.10 |