Fedora 에 MongoDB 서버 설치

3991 단어 linux
Mongo ("humongos" - 거대 한) 는 고성능, 오픈 소스, 무 모드, 문 서 를 대상 으로 하 는 데이터 베이스 로 가장 인기 있 는 NoSQL 데이터 베이스 중 하나 입 니 다.JSON 을 문서 형식 으로 사용 하고 여러 서버 노드 사이 에서 확장 과 복 사 를 할 수 있 습 니 다.
라이선스 변경 에 관 한 이야기 인 몽고 DB 상류 에서 서버 코드 변경 을 결정 한 라이선스 가 1 년 이 넘 었 다.이전 라이 선 스 는 GNU Affero General Public License v3 (AGPLv 3) 였 다.그러나 상위 회 사 는 MongoDB 즉 서 비 스 를 운영 하 는 회사 가 지역 사회 에 보답 할 수 있 도록 새로운 허가증 을 썼 다.새 라이 선 스 는 Server Side Public License (SSPLv 1) 라 고 하 며, 이 조치 와 그 해석 에 대한 더 많은 설명 은 MongoDB SSPL FAQ 를 참조 하 시기 바 랍 니 다.
Fedora 는 자유 소프트웨어 만 포함 해 왔 습 니 다.SSPL 이 발 표 된 후 Fedora 는 자유 소프트웨어 허가증 이 아니 라 는 것 을 확인 했다.라이선스 변경 일자 (2018 년 10 월) 이전에 발 표 된 모든 MongoDB 버 전 은 Fedora 에 보관 할 수 있 으 나 이후 업데이트 되 지 않 는 패 키 지 는 보안 문 제 를 가 져 올 수 있다.이에 따라 Fedora 30 부터 Fedora 커 뮤 니 티 는 MongoDB 서버 를 완전히 제거 하기 로 했다.
개발 자 는 또 어떤 선택 이 있 습 니까?예, PostgreSQL 은 최신 버 전에 서도 JSON 을 지원 합 니 다. MongoDB 를 더 이상 사용 할 수 없 는 상황 에서 사용 할 수 있 습 니 다.JSONB 타 입 을 사용 하면 인덱스 는 PostgreSQL 에서 잘 작 동 할 수 있 으 며, 성능 은 MongoDB 에 필적 할 수 있 으 며, 심지어 ACID 의 영향 을 받 지 않 습 니 다.
개발 자 들 이 MongoDB 를 선택 할 수 있 는 기술적 원인 은 허가증 에 따라 달라 지지 않 아 많은 사람들 이 여전히 사용 하고 싶 어 한다.중요 한 것 은 SSPL 라이선스 가 MongoDB 서버 에 만 변경 된다 는 점 을 의식 해 야 한다.MongoDB 상류 에 서 는 MongoDB 도구, C 와 C + + 클 라 이언 트 라 이브 러 리, 각종 동적 언어 에 사용 되 는 커 넥 터 등 다른 프로젝트 도 개발 했다. 이 프로젝트 들 은 클 라 이언 트 에서 사용 (네트워크 를 통 해 서버 와 통신 하 는 응용) 된다.이 가방 들 의 허가 증인 들 은 자 유 롭 게 (주로 아파 치 라이선스) 유지 되 기 때문에 Fedora 창고 에 보관 되 어 있 기 때문에 사용 자 는 이 를 응용 개발 에 사용 할 수 있다.
유일한 변 화 는 서버 패키지 자체 로 Fedora 창고 에서 완전히 삭제 되 었 습 니 다.Fedora 사용자 가 비 자유로운 가방 을 어떻게 가 져 올 수 있 는 지 보 여 줍 니 다.
페 도 라 사용자 가 MongoDB 서버 를 설치 하려 면 위 에서 MongoDB 서버 를 설치 하 는 방법 입 니 다.단, 상위 권 에 서 는 Fedora 에 RPM 가방 을 제공 하지 않 습 니 다.반면, MongoDB 서버 는 원본 tarball 을 가 져 올 수 있 으 며, 사용 자 는 스스로 컴 파일 (개발 지식 이 필요 합 니 다) 하거나 Fedora 사용 자 는 호 환 되 는 가방 을 사용 할 수 있 습 니 다.호 환 되 는 옵션 중 가장 좋 은 선택 은 RHEL - 8 RPM 입 니 다.다음 단 계 는 데 몬 을 설치 하 는 방법 과 데 몬 을 시작 하 는 방법 을 설명 합 니 다.
1. 상위 RPM 으로 창고 만 들 기 (RHEL - 8 구축)
$ sudo cat > /etc/yum.repos.d/mongodb.repo >>EOF
[mongodb-upstream]
name=MongoDB Upstream Repository
baseurl=https://repo.mongodb.org/yum/redhat/8Server/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
EOF

2. 메타 패 키 지 를 설치 하여 서버 와 도 구 를 끌 어 옵 니 다.
$ sudo dnf install mongodb-org
......
Installed:
  mongodb-org-4.2.3-1.el8.x86_64           mongodb-org-mongos-4.2.3-1.el8.x86_64 
  mongodb-org-server-4.2.3-1.el8.x86_64    mongodb-org-shell-4.2.3-1.el8.x86_64
  mongodb-org-tools-4.2.3-1.el8.x86_64         
Complete!

3. MongoDB 데 몬 시작
$ sudo systemctl status mongod
● mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-02-08 12:33:45 EST; 2s ago
     Docs: https://docs.mongodb.org/manual
  Process: 15768 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 15769 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 15770 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 15771 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 15773 (mongod)
   Memory: 70.4M
      CPU: 611ms
   CGroup: /system.slice/mongod.service

4. mongo 셸 연결 서버 를 통 해 실행 여 부 를 검증 합 니 다.
$ mongo
MongoDB shell version v4.2.3
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("20b6e61f-c7cc-4e9b-a25e-5e306d60482f") }
MongoDB server version: 4.2.3
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    http://docs.mongodb.org/
---

그렇게 됐어.보시 다시 피 RHEL - 8 가방 은 완벽 하 게 호 환 됩 니 다. Fedora 가방 이 RHEL - 8 과 호 환 되 기만 하면 계속 호 환 될 것 입 니 다.사용 시 반드시 SSPLv 1 허가증 을 준수 해 야 함 을 주의 하 세 요.

좋은 웹페이지 즐겨찾기