문서 메뉴

문서 홈MongoDB 실행 및 관리MongoDB 데이터베이스 도구

mongofiles

이 페이지의 내용

  • 개요
  • 호환성
  • 설치
  • 구문
  • 필요한 액세스 권한
  • 행동
  • 옵션
  • 명령.
  • 예제

mongofiles 유틸리티를 사용하면 명령줄에서 GridFS 객체의 MongoDB 인스턴스에 저장된 파일을 조작할 수 있습니다. 파일 시스템과 GridFS에 저장된 객체 간의 인터페이스를 제공하므로 특히 유용합니다.

셸이 mongo 아닌 시스템 명령줄에서 mongofiles 를 실행합니다.

MongoDB 4 부터 시작합니다.4, mongofiles 는 이제 MongoDB Server와 별도로 릴리스되며 초기 버전이 100.0.0 인 자체 버전을 사용합니다. 이전에는 mongofiles 이(가) MongoDB 서버와 함께 릴리스되었으며 일치하는 버전 관리를 사용했습니다.

MongoDB 4 에 대한 설명서를 참조하세요.2 또는 이전 버전의 mongofiles 인 경우 해당 버전의 도구에 대한 MongoDB Server 설명서 를 참조하세요.

참고

이전 문서에 대한 퀵 링크

이 문서는 mongofiles100.9.0 버전에 대한 문서입니다.

mongofiles 버전 100.9.0 는 다음 버전의 MongoDB Server를 지원합니다.

  • MongoDB 7.0

  • MongoDB 6.0

  • MongoDB 5.0

  • MongoDB 4.4

  • MongoDB 4.2

mongofiles 는 이전 버전의 MongoDB 서버에서 작동할 수 있지만 이러한 호환성이 보장되지는 않습니다.

mongofiles 버전 100.9.0 는 다음 플랫폼에서 지원됩니다.

x86_64
ARM64
PPC64LE
s390x
Amazon Linux 2023

Amazon 2

Amazon 2013.03+

Debian 10

데비안 9

데비안 8

RHEL / CentOS 9

RHEL / CentOS 8

RHEL / CentOS 7

RHEL / CentOS 6

SUSE 15

SUSE 12

Ubuntu 20.04

Ubuntu 18.04

Ubuntu 16.04

Windows 8 이상

Windows Server 2012 이상

macOS 11 이상

macOS 10.12 - 10.15

mongofiles 도구는 MongoDB 데이터베이스 도구 패키지의 일부입니다.

데이터베이스 도구 설치 가이드 에 따라 mongofiles 를 설치합니다.

mongofiles 명령의 형식은 다음과 같습니다.

mongofiles <options> <connection-string> <command> <filename or _id>

셸이 mongo 아닌 시스템 명령줄에서 mongofiles 를 실행합니다.

mongofiles 명령의 구성 요소는 다음과 같습니다.

  1. 옵션. 이러한 옵션 중 하나 이상을 사용하여 mongofiles 의 동작을 제어할 수 있습니다.

  2. Connection String. mongofiles 와 연결할 mongod / mongos 의 연결 문자열입니다

  3. 명령. 다음 명령 중 하나를 사용하여 mongofiles 의 조치를 결정합니다.

  4. 로컬 파일 시스템의 파일 이름 또는 GridFS 객체인 식별자입니다.

중요

--auth 옵션으로 권한 부여를 실행하는 mongod 에 연결하려면 --username--password 옵션을 사용해야 합니다. 연결 사용자는 최소한 다음과 같은 자격을 갖추어야 합니다.

  • list, search 또는 get 명령을 사용할 때 액세스한 데이터베이스에 대한 read 역할

  • put 또는 delete 명령을 사용할 때 액세스한 데이터베이스에 대한 readWrite 역할.

는 FIPS 모드를 사용하도록 구성된 mongofiles mongod/ mongos에 대한 FIPS 호환 연결을 자동으로 생성합니다.

mongofiles 기본적으로 은(는) 읽기 설정 primary 을(를) 사용합니다. 기본값을 재정의하려면 명령줄 옵션 또는 --readPreference 에서 읽기 설정 --uri connection string 을 지정할 수 있습니다.

URI 문자열 및 --readPreference 에 읽기 설정을 지정하면 --readPreference 값이 URI 문자열에 지정된 읽기 설정을 재정의합니다.

--writeConcern--uri connection string 옵션을 모두 지정할 수 있습니다. 두 옵션을 모두 사용하여 쓰기 고려를 지정한 경우 --writeConcern 값이 URI 문자열에 지정된 쓰기 고려를 재정의합니다.

--help

mongofiles 의 옵션 및 사용에 대한 정보를 반환합니다.

--verbose, -v

표준 출력이나 로그 파일에 반환되는 내부 보고의 양이 늘어납니다. 옵션을 여러 번 포함하여 -v 형식의 상세도를 높입니다(예: -vvvvv.)

--quiet

출력량을 제한하려고 시도하는 조용한 모드에서 mongofiles 를 실행합니다.

이 옵션은 다음과 같은 활동을 억제합니다.

--version

mongofiles 릴리스 번호를 반환합니다.

--config=<filename>

버전 100.3.0의 새로운 기능.

다음 옵션에 대한 민감한 값이 포함된 YAML 구성 파일의 전체 경로를 mongofiles 에 지정합니다.

비밀번호 프롬프트를 통해 비밀번호를 지정하는 것 외에 mongofiles 에 비밀번호를 지정하는 데 권장되는 방법입니다.

구성 파일은 다음과 같은 형식을 취합니다:

password: <password>
uri: mongodb://mongodb0.example.com:27017
sslPEMKeyPassword: <password>

password: 필드에 암호를 지정하고 uri: 필드에 충돌하는 암호가 포함된 연결 문자열을 제공하면 오류가 발생합니다.

적절한 파일 시스템 권한으로 이 파일을 보호해야 합니다.

참고

--config 으로 구성 파일을 지정하고 --password, --uri 또는 --sslPEMKeyPassword 옵션을 mongofiles 에 사용하는 경우 각 명령줄 옵션이 구성 파일에서 해당 옵션을 재정의합니다.

--uri=<connectionString>

따옴표로 묶인 MongoDB 배포의 확인 가능한 URI 연결 문자열 을 지정합니다.

--uri="mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]"

mongofiles 버전 100.0 부터는 --uri 옵션을 사용하지 않고 연결 문자열을 위치 매개변수로 제공할 수도 있습니다.

mongofiles mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

연결 문자열은 mongodb:// 또는 mongodb+srv:// 중 하나로 시작하기만 하면 명령줄의 어느 지점에서나 위치 매개변수로 지정할 수 있습니다. 예를 들면 다음과 같습니다.

mongofiles --username joe --password secret1 mongodb://mongodb0.example.com:27017 --ssl

연결 문자열은 하나만 제공할 수 있습니다. --uri 옵션을 사용하든 위치 인수로 사용하든 둘 이상을 포함하려고 하면 오류가 발생합니다.

연결 문자열의 구성 요소에 대한 자세한 내용은 연결 문자열 URI 형식 문서를 참조하세요.

참고

connection string 의 일부 구성 요소는 --username--password 과 같은 자체 명시적인 명령줄 옵션을 사용하여 대신 지정할 수도 있습니다. 명시적 옵션을 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

참고

Ubuntu 에서 mongofiles 를 사용하는 18 경우.04,cannot unmarshal DNS 옵션과 함께 SRV 연결 문자열 (mongodb+srv:// 형식)을 사용할 때 --uri 오류 메시지가 표시될 수 있습니다. 이 경우 다음 옵션 중 하나를 대신 사용합니다.

  • SRV가 아닌 연결 --uri 문자열 이 있는 옵션(mongodb:// 형식)

  • 직접 연결할 호스트를 지정하는 --host 옵션

경고

일부 시스템에서는 --uri 옵션으로 연결 문자열에 제공된 비밀번호가 다른 사용자가 호출할 수 있는 ps 와 같은 시스템 상태 프로그램에 표시될 수 있습니다. 대신 다음을 고려하세요.

  • 대화형 암호 프롬프트를 받기 위해 연결 문자열에서 암호를 생략하거나

  • --config 옵션을 사용하여 비밀번호가 포함된 구성 파일을 지정합니다.

--host=<hostname><:port>

GridFS 시스템을 보유하는 mongod 에 대해 확인 가능한 호스트 이름을 지정합니다. 기본적으로 mongofiles 는 로컬 호스트 포트 번호 27017 에서 실행 중인 MongoDB 프로세스에 연결을 시도합니다.

선택적으로 포트 번호를 지정하여 27017이 아닌 다른 포트에서 실행 중인 MongoDB 인스턴스를 연결할 수 있습니다.

또는 URI connection string 에 직접 호스트 이름을 지정할 수도 있습니다. --host 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

--port=<port>

기본값: 27017

MongoDB 인스턴스가 클라이언트 연결 수신을 대기하는 TCP 포트를 지정합니다.

또는 URI connection string 에 직접 포트를 지정할 수도 있습니다. --port 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

--ssl

TLS/SSL 지원이 활성화된 mongod 또는 mongos 에 대한 연결을 활성화합니다.

또는 URI connection string 에서 직접 TLS/SSL 지원을 구성할 수도 있습니다. --ssl 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

--sslCAFile=<filename>

인증 기관의 루트 인증서 체인이 포함된 .pem 파일을 지정합니다. 상대 경로 또는 절대 경로를 사용하여 .pem 파일의 이름을 지정합니다.

또는 URI connection string 에 직접 .pem 파일을 지정할 수도 있습니다. --sslCAFile 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

--sslPEMKeyFile=<filename>

TLS/SSL 인증서와 키가 모두 포함되어 있는 .pem 파일을 지정합니다. 상대 경로 또는 절대 경로를 사용해 .pem 파일의 이름을 지정합니다.

이 옵션은 옵션을 사용하여 allowConnectionsWithoutCertificates 없이 --ssl { 가 mongos 활성화된 mongod CAFile또는 에 연결할 때 필요합니다

또는 URI connection string 에 직접 .pem 파일을 지정할 수도 있습니다. --sslPEMKeyFile 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

--sslPEMKeyPassword=<value>

인증서 키 파일(예: --sslPEMKeyFile)을 해독하기 위한 비밀번호를 지정합니다. 인증서 키 파일이 암호화된 경우에만 --sslPEMKeyPassword 옵션을 사용합니다. 모든 경우에 mongofiles 는 모든 로깅 및 보고 출력에서 비밀번호를 삭제합니다.

PEM 파일의 개인 키가 암호화되어 있고 --sslPEMKeyPassword 옵션을 지정하지 않은 경우 mongofiles 에서 암호를 입력하라는 메시지가 표시됩니다. TLS/SSL 인증서 암호를 참조하세요.

또는 URI connection string 에 직접 비밀번호를 지정할 수도 있습니다. --sslPEMKeyPassword 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

경고

일부 시스템에서는 --sslPEMKeyPassword 옵션을 사용하여 직접 제공된 비밀번호가 다른 사용자가 호출할 수 있는 ps 와 같은 시스템 상태 프로그램에 표시될 수 있습니다. 대신 --config 옵션을 사용하여 비밀번호가 포함된 구성 파일을 지정하는 것이 좋습니다.

--sslCRLFile=<filename>

인증서 해지 목록이 포함된 .pem 파일을 지정합니다. 상대 경로 또는 절대 경로를 .pem 파일의 이름을 지정합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

--sslAllowInvalidCertificates

서버 인증서에 대한 유효성 검사를 우회하고 유효하지 않은 인증서의 사용을 허용합니다. allowInvalidCertificates 설정을 사용할 때 MongoDB는 유효하지 않은 인증서 사용에 대한 경고를 기록합니다.

경고

--sslAllowInvalidCertificates 옵션은 사용할 수 있는 경우에도 가급적 사용하지 않는 것이 좋습니다. --sslAllowInvalidCertificates를 사용해야만 하는 경우, 침입이 불가능한 시스템에서만 옵션을 사용하세요.

서버 인증서의 유효성을 검사하지 않고 mongod 또는 mongos 인스턴스에 연결하면 잠재적인 보안 위험이 발생할 수 있습니다. TLS/SSL 인증서에서 호스트 이름 유효성 검사만 비활성화해야 하는 경우 --sslAllowInvalidHostnames 를 참조하세요.

또는 URI connection string 에서 직접 인증서 유효성 검사를 비활성화할 수도 있습니다. --sslAllowInvalidCertificates 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

--sslAllowInvalidHostnames

TLS/SSL 인증서의 호스트 이름 유효성 검사를 비활성화합니다. 인증서의 호스트 이름이 지정된 호스트 이름과 일치하지 않더라도 mongofiles 가 MongoDB 인스턴스에 연결할 수 있도록 허용합니다.

또는 URI connection string 에서 직접 호스트 이름 유효성 검사를 비활성화할 수도 있습니다. --sslAllowInvalidHostnames 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

TLS/SSL 및 MongoDB에 대한 자세한 내용은 TLS/SSL 을 위한 mongod 및 mongos 구성 및 클라이언트를 위한 TLS /SSL 구성을 참조하세요.

--username=<username>, -u=<username>

인증을 사용하는 MongoDB 데이터베이스에 인증하는 데 사용할 사용자 이름을 지정합니다. --password--authenticationDatabase 옵션과 함께 사용합니다.

또는 URI connection string 에 사용자 이름을 직접 지정할 수도 있습니다. --username 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

를 사용하여 MongoDB Atlas 클러스터에 연결하는 MONGODB-AWS authentication mechanism 경우 다음에서 AWS 액세스 키 ID를 지정할 수 있습니다.

각각의 예는 AWS IAM 자격 증명을 사용하여 MongoDB Atlas 클러스터에 연결하기를 참조하세요.

--password=<password>, -p=<password>

인증을 사용하는 MongoDB 데이터베이스에 인증하는 데 사용할 비밀번호를 지정합니다. --username--authenticationDatabase 옵션과 함께 사용합니다.

사용자에게 비밀번호를 입력하라는 메시지를 표시하려면 --username 옵션을 --password 전달하거나 에서와 같이 빈 문자열을 값으로 --password --password "" 지정합니다.

또는 URI connection string 에 직접 비밀번호를 지정할 수도 있습니다. --password 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

를 사용하여 MongoDB Atlas 클러스터에 연결하는 MONGODB-AWS authentication mechanism 경우 다음에서 AWS 시크릿 액세스 키를 지정할 수 있습니다.

각각의 예는 AWS IAM 자격 증명을 사용하여 MongoDB Atlas 클러스터에 연결하기를 참조하세요.

경고

일부 시스템에서는 --password 옵션을 사용하여 직접 제공된 비밀번호가 다른 사용자가 호출할 수 있는 ps 와 같은 시스템 상태 프로그램에 표시될 수 있습니다. 대신 다음을 고려하세요.

  • --password 옵션을 생략하여 대화형 비밀번호 프롬프트를 받거나

  • --config 옵션을 사용하여 비밀번호가 포함된 구성 파일을 지정합니다.

--awsSessionToken=<AWS Session Token>

를 사용하고 AWS 액세스 키 ID 및 비밀 액세스 키 외에 세션 토큰을 사용하여 MongoDB Atlas 클러스터에 연결하는 경우 다음에서 AWS 세션 토큰을 지정할 수 있습니다.MONGODB-AWS authentication mechanism

각각의 예는 AWS IAM 자격 증명을 사용하여 MongoDB Atlas 클러스터에 연결하기를 참조하세요.

MONGODB-AWS authentication mechanism 를 사용할 때만 유효합니다.

--authenticationDatabase=<dbname>

지정된 --username 가 생성된 인증 데이터베이스를 지정합니다. 인증 데이터베이스를 참조하세요.

GSSAPI (Kerberos), PLAIN (LDAP SASL) 또는 MONGODB-AWS authentication mechanisms 을 사용하는 경우 --authenticationDatabase$external 로 설정해야 합니다.

또는 URI connection string 에서 직접 인증 데이터베이스를 지정할 수도 있습니다. --authenticationDatabase 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

--authenticationMechanism=<name>

기본값: SCRAM-SHA-1

mongofiles 인스턴스가 mongod 또는 mongos 에 인증하는 데 사용하는 인증 메커니즘을 지정합니다.

버전 100 에서 변경되었습니다.1.0: 버전 100.1.0 부터 mongofilesMongoDB Atlas 클러스터에 연결할 때 MONGODB-AWS 인증 메커니즘에 대한 지원을 추가합니다.

설명

RFC 7677 SHA-256 해시 함수를 사용하는 표준 Salted Challenge Response 인증 메커니즘.

featureCompatibilityVersion이 4.0으로 설정되어야 합니다.

MongoDB TLS/SSL 인증서 인증.
MONGODB-AWS

MongoDB Atlas 클러스터에 연결하기 위해 AWS IAM 자격 증명을 사용하는 외부 인증입니다. AWS IAM 자격 증명을 사용하여 MongoDB Atlas 클러스터에 연결하기를 참조하세요.

버전 100.1.0의 새로운 기능.

GSSAPI (Kerberos)
Kerberos를 사용한 외부 인증. 이 메커니즘은 MongoDB Enterprise에서만 사용할 수 있습니다.
PLAIN (LDAP SASL)
LDAP를 사용한 외부 인증. PLAIN 을(를) 사용하여 데이터베이스 내 사용자를 인증할 수도 있습니다. PLAIN 은(는) 비밀번호를 일반 텍스트로 전송합니다. 이 메커니즘은 MongoDB Enterprise에서만 사용할 수 있습니다.

또는 URI connection string 에서 직접 인증 메커니즘을 지정할 수도 있습니다. --authenticationMechanism 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

--gssapiServiceName=<serviceName>

GSSAPI/Kerberos 를 사용하여 서비스 이름을 지정합니다. 서비스가 기본 이름 mongodb 을(를) 사용하지 않는 경우에만 필요합니다.

이 옵션은 MongoDB Enterprise에서만 사용할 수 있습니다.

--gssapiHostName=<hostname>

GSSAPI/Kerberos 를 사용하여 서비스의 호스트 이름을 지정합니다. 시스템의 호스트 이름이 DNS에서 확인된 호스트 이름과 일치하지 않는 경우 에만 필요합니다.

이 옵션은 MongoDB Enterprise에서만 사용할 수 있습니다.

--db=<database>, -d=<database>

mongofiles 을(를) 실행할 데이터베이스의 이름을 지정합니다.

또는 URI connection string 에서 직접 데이터베이스를 지정할 수도 있습니다. --db 를 사용하면서 연결 문자열을 제공하고 충돌하는 정보를 지정하면 오류가 발생합니다.

--local=<filename>, -l=<filename>

가져오기 및 넣기 작업에 사용할 파일의 로컬 파일 시스템 이름을 지정합니다.

mongofiles putmongofiles get 명령에서 필수 <filename> 수정자는 GridFS에서 객체가 갖게 될 이름을 나타냅니다. mongofiles 는 로컬 파일 시스템의 파일 이름을 반영한다고 가정합니다. 이 설정은 이 기본값을 재정의합니다.

--type=<MIME>

GridFS 스토리지에 삽입된 파일을 설명하는 MIME 유형을 지정하는 기능을 제공합니다. mongofiles 는 기본 작업에서 이 옵션을 생략합니다.

mongofiles put 작업에만 사용합니다.

--replace, -r

동일한 이름의 객체를 추가하는 대신 기존 GridFS 객체를 지정된 로컬 파일로 대체하기 위해 mongofiles put의 동작을 변경합니다.

기본 작업에서는 mongofiles put 옵션으로 파일을 덮어쓰지 않습니다.

--prefix=<string>

기본값: fs

사용할 GridFS 접두사입니다.

--writeConcern=<document>

기본값: 대다수(majority)

mongofiles 수행하는 각 쓰기 작업에 대한 쓰기 고려 를 지정합니다.

w 옵션을 사용하여 쓰기 고려를 문서로 지정합니다.

--writeConcern="{w:'majority'}"

쓰기 고려가 --uri connection string 에도 포함되어 있으면 명령줄 --writeConcern 이 URI 문자열에 지정된 쓰기 고려를 재정의합니다.

--readPreference=<string|document>

기본값: primary

에 대한 읽기 설정 mongofiles을 지정합니다.--readPreference 옵션은 다음을 사용할 수 있습니다.

mongofiles 기본값은 primary 읽기 설정입니다.

읽기 설정이 --uri connection string 에도 포함되어 있으면 명령줄 --readPreference 이 URI 문자열에 지정된 읽기 설정을 재정의합니다.

list <prefix>

GridFS 저장소에 있는 파일을 나열합니다. list 뒤에 지정된 문자 (예: <prefix>)의 경우 반환된 항목 목록을 해당 문자열로 시작하는 파일로 선택적으로 제한합니다.

search <string>

<string>의 일부와 일치하는 이름을 가진 GridFS 저장소의 파일을 나열합니다.

put <filename1[ filename2] ...>

지정한 파일을 로컬 파일 시스템에서 GridFS 스토리지로 복사합니다. 여러 파일을 공백으로 구분된 목록으로 지정할 수 있습니다.

지정된 각 파일 이름은 GridFS에서 객체가 갖게 될 이름을 나타내며, mongofiles 는 이 이름이 로컬 파일 시스템에서 파일이 갖는 이름을 반영한다고 가정합니다. 로컬 파일 이름이 다른 경우 mongofiles --local 옵션을 사용합니다.

get <filename1[ filename2] ...>

지정한 파일을 GridFS 스토리지에서 로컬 파일 시스템으로 복사합니다.

지정된 각 파일 이름은 객체가 GridFS에 있는 이름을 참조하며, mongofiles 는 로컬 파일 시스템에 쓸 때 이 파일 이름을 사용합니다.

filename get 명령에 --local 을 하나만 지정하는 경우 옵션을 사용하여 원하는 경우 쓸 다른 로컬 파일 이름을 지정할 수 --local 있습니다. filename get 명령에 을 두 개 이상 지정하는 경우 옵션 을 사용할 수 없습니다 .

참고

GridFS 스토리지에서 정규 표현식과 일치하는 파일을 복사하려면 get_regex 명령을 대신 사용합니다.

get_id "<_id>"

<_id>로 지정된 파일을 GridFS 저장소에서 로컬 파일 시스템으로 복사합니다. <_id>는 GridFS에 있는 객체의 확장 JSON _id를 참조합니다. get_id<_id>에 대해 객체 ID 값 또는 비객체 ID 값을 허용할 수 있습니다.

mongofiles 는 GridFS의 파일 이름을 사용하여 로컬 파일 시스템에 파일을 씁니다. 로컬 파일 시스템에서 파일의 다른 위치를 선택하려면 --local 옵션을 사용합니다.

get_regex <regex> --regexOptions <regex-options>

지정된 <regex> 표현식과 일치하는 파일을 GridFS 스토리지에서 로컬 파일 시스템으로 복사합니다. get_regex 명령은 UTF-8 지원이 포함된 펄(Perl) 호환 정규 표현식(" PCRE ") 버전 8.42를 사용합니다.

--regexOptions 플래그를 사용하여 하나 이상의 <regex-options> 을 선택적으로 지정할 수 있습니다. 대소문자를 구분하지 않는 등의 설정을 포함 하여 $regex 연산자에서 지원하는 모든 옵션 을 사용할 수 있습니다. 여러 옵션은 구분 기호 없이 함께 제공해야 합니다(예: --regexOptions si .

mongofiles 는 GridFS에서 각 파일과 일치하는 파일 이름을 사용하여 로컬 파일 시스템에 파일을 씁니다. --local 옵션은 get_regex 명령과 함께 사용할 수 없습니다 .

delete <filename>

지정한 파일을 GridFS 스토리지에서 삭제합니다.

delete_id "<_id>"

<_id>(으)로 지정된 파일을 GridFS 저장소에서 삭제합니다. delete_id<_id>에 대해 객체 ID 값 또는 비객체 ID 값을 받아들일 수 있습니다.

셸이 mongo 아닌 시스템 명령줄에서 mongofiles 를 실행합니다.

records 데이터베이스의 GridFS 컬렉션에 있는 모든 파일 목록을 반환하려면 시스템 셸에서 다음 호출을 사용합니다.

mongofiles -d=records list

mongofiles 인스턴스는 27017 로컬 호스트 인터페이스에서 실행 중인 mongod 인스턴스에 연결하여 다른 포트 또는 호스트 이름에서 동일한 작업을 지정하고 다음 중 하나와 유사한 명령을 실행합니다.

mongofiles --port=37017 -d=records list
mongofiles --host=db1.example.net -d=records list
mongofiles --host=db1.example.net --port=37017 -d=records list

다른 포트 또는 호스트에서 mongod 인스턴스를 연결하는 경우 필요에 따라 다음 명령 중 하나를 수정합니다.

32-corinth.lp 파일을 records 데이터베이스의 GridFS 컬렉션에 업로드하려면 다음 명령을 사용할 수 있습니다.

mongofiles -d=records put 32-corinth.lp

records 데이터베이스 내 해당 GridFS 컬렉션에서 32-corinth.lp 파일을 삭제하려면 다음 명령을 사용할 수 있습니다.

mongofiles -d=records delete 32-corinth.lp

records 데이터베이스 내 GridFS 컬렉션의 파일 중 이름에 corinth(이)가 포함된 파일을 검색하려면 다음 명령을 사용할 수 있습니다:

mongofiles -d=records search corinth

records 데이터베이스의 GridFS 컬렉션에서 이름이 32 문자열로 시작하는 모든 파일을 나열하려면 다음 명령을 사용할 수 있습니다:

mongofiles -d=records list 32

records 데이터베이스의 GridFS 컬렉션에서 32-corinth.lp이라는 파일을 불러오려면 다음 명령을 사용할 수 있습니다.

mongofiles -d=records get 32-corinth.lp

records 데이터베이스의 GridFS 컬렉션에서 이름이 32 문자열로 시작하고 .lp 문자열로 끝나는 모든 파일을 불러오려면 다음 명령을 사용할 수 있습니다:

mongofiles -d=records get_regex 32*.lp

records 데이터베이스의 GridFS 컬렉션에서 _id: ObjectId("56feac751f417d0357e7140f")인 파일을 불러오려면 다음 명령을 사용할 수 있습니다:

mongofiles -d=records get_id '{"$oid": "56feac751f417d0357e7140f"}'

_id 주위에 따옴표를 넣어야 합니다.

버전 100.1.0의 새로운 기능.

AWS IAM 자격 증명 을 통해 인증을 지원하도록 구성된 MongoDB Atlas 클러스터에 연결하려면 다음과 같이 mongofilesconnection string 를 제공합니다.

mongofiles 'mongodb+srv://<aws access key id>:<aws secret access key>@cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS' <other options>

이러한 방식으로 AWS IAM 자격 증명을 사용하여 Atlas에 연결하면 이 예제와 같이 MONGODB-AWS authentication mechanism$external authSource 가 사용됩니다.

AWS 세션 토큰 을 사용하는 경우 AWS_SESSION_TOKEN authMechanismProperties 값도 다음과 같이 제공합니다.

mongofiles 'mongodb+srv://<aws access key id>:<aws secret access key>@cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS&authMechanismProperties=AWS_SESSION_TOKEN:<aws session token>' <other options>

참고

AWS 액세스 키 ID, 보안 액세스 키 또는 세션 토큰에 다음 문자가 포함되어 있는 경우

: / ? # [ ] @

이러한 문자는 퍼센트 인코딩을 사용하여 변환해야 합니다.

또는 다음과 같이 --username, --password--awsSessionToken 옵션을 대신 사용하여 연결 문자열 외부에서 AWS 액세스 키 ID, 보안 액세스 키 및 선택적으로 세션 토큰을 각각 제공할 수 있습니다.

mongofiles 'mongodb+srv://cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS' --username <aws access key id> --password <aws secret access key> --awsSessionToken <aws session token> <other options>

명령줄 매개변수로 제공되는 경우 이러한 세 가지 옵션에는 퍼센트 인코딩이 필요하지 않습니다.

표준 AWS IAM 환경 변수 를 사용하여 플랫폼에서 이러한 자격 증명을 설정할 수도 있습니다. . mongofiles 는 를 사용할 때 다음 환경 변수를 MONGODB-AWS authentication mechanism 확인합니다.

  • AWS_ACCESS_KEY_ID

  • AWS_SECRET_ACCESS_KEY

  • AWS_SESSION_TOKEN

설정된 경우 이러한 자격 증명은 연결 문자열이나 명시적 옵션을 통해 지정할 필요가 없습니다.

참고

AWS 환경 변수를 사용하여 이러한 값을 지정하기로 선택한 경우 이러한 자격 증명에 해당하는 명시적 또는 연결 문자열 옵션과 조합하여 사용할 수 없습니다. 액세스 키 ID 비밀 액세스 키(사용 중인 경우 세션 토큰도 함께 필요)에 환경 변수를 사용하거나 또는 명시적 또는 연결 문자열 옵션을 사용하여 각각을 지정합니다.

다음 예시에서는 bash 셸에서 이러한 환경 변수를 설정합니다.

export AWS_ACCESS_KEY_ID='<aws access key id>'
export AWS_SECRET_ACCESS_KEY='<aws secret access key>'
export AWS_SESSION_TOKEN='<aws session token>'

다른 셸에서 환경 변수를 설정하는 구문은 다를 수 있습니다. 자세한 내용은 사용 중인 플랫폼의 설명서를 참조하세요.

다음 명령어로 이러한 환경 변수가 설정되었는지 확인할 수 있습니다.

env | grep AWS

설정이 완료되면 다음 예제에서는 이러한 환경 변수를 사용하여 MongoDB Atlas 클러스터에 연결합니다.

mongofiles 'mongodb+srv://cluster0.example.com/testdb?authSource=$external&authMechanism=MONGODB-AWS' <other options>
← mongotop 예제
설치 →