Docs Menu
Docs Home
/
MongoDB Database Tools

mongofiles

이 페이지의 내용

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

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

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

MongoDB 4.4부터 mongofiles는 이제 MongoDB Server와 별도로 출시되며 자체 버전을 사용합니다. 초기 버전은 100.0.0입니다. 이전에 mongofiles는 MongoDB Server와 함께 출시되었으며 동일한 버전을 사용했습니다.

mongofiles의 MongoDB 4.2 또는 이전 버전의에 대한 문서는 도구의 해당 버전에 대한 MongoDB Server 문서를 참조하세요.

참고

이전 문서에 대한 퀵 링크

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

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

  • MongoDB 8.0

  • MongoDB 7.0

  • MongoDB 6.0

  • MongoDB 5.0

  • MongoDB 4.4

  • MongoDB 4.2

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

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

x86_64
ARM64
PPC64LE
s390x
Amazon Linux 2023

Amazon 2

Amazon 2013.03+

Debian 12

Debian 11

Debian 10

Debian 9

RHEL / CentOS 9

RHEL / CentOS 8

RHEL / CentOS 7

RHEL / CentOS 6

SUSE 15

SUSE 12

Ubuntu 24.04

Ubuntu 22.04

Ubuntu 20.04

Ubuntu 18.04

Ubuntu 16.04

Windows 8 이상

Windows Server 2012 이상

macOS 11 이상

macOS 10.12 - 10.15

mongofiles 도구는 MongoDB database 도구 패키지의 일부입니다.

Database Tools 설치 가이드에 따라 mongofiles를 설치합니다.

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

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

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

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

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

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

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

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

중요

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

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

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

mongofilesFIPS 모드를 사용하도록 구성된 mongod/mongos에 대해 FIPS 준수 연결을 자동으로 생성합니다.

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

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

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

--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]]"

100.0 mongofiles버전 부터는 string 옵션을 사용하지 않고 연결 을 위치 매개변수로 제공할 수도 있습니다.--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 18.04에서 mongofiles를 사용하는 경우 cannot unmarshal DNS --uri 옵션과 함께 SRV 연결 문자열(mongodb+srv:// 형식)을 사용할 때 cannot unmarshal DNS 오류 메시지가 표시될 수 있습니다. 이 경우 다음 옵션 중 하나를 대신 사용합니다.

경고

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

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

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

--host=<hostname><:port>

GridFS 시스템을 보유하는 mongod에 확인 가능한 호스트 이름을 지정합니다. mongofiles는 기본값으로 localhost 포트 번호 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-AWS authentication mechanism을 사용하여 MongoDB Atlas 클러스터에 연결하는 경우 다음에 AWS 액세스 키 ID를 지정할 수 있습니다.

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

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

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

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

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

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

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

경고

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

  • --password 옵션을 생략하여 대화형 암호 프롬프트를 받거나, 또는

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

--awsSessionToken=<AWS Session Token>

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

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

MONGODB-AWSauthentication 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 해시 함수를 사용하는 솔티드 챌린지 응답 인증 메커니즘.

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 string 에 지정된 쓰기 고려를 재정의합니다.

--readPreference=<string|document>

기본값: primary

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

  • 읽기 설정 모드만 지정하는 경우 문자열입니다:

    --readPreference=secondary
  • 따옴표로 묶인 문서를 통해 모드, 선택적 읽기 설정 태그 세트 및 선택적 maxStalenessSeconds를 지정할 수 있습니다.

    --readPreference='{mode: "secondary", tagSets: [ { "region": "east" } ], maxStalenessSeconds: 120}'

    maxStalenessSeconds를 지정하는 경우 값은 90 이상이어야 합니다.

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

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

list <prefix>

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

search <string>

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

put <filename1[ filename2] ...>

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

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

get <filename1[ filename2] ...>

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

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

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

참고

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

get_id "<_id>"

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

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>에 대해 ObjectId 값 또는 비-ObjectId 값을 받아들일 수 있습니다.

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

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

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 클러스터에 연결하려면 다음과 같이 connection stringmongofiles에 제공하세요.

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, 보안 액세스 키 또는 세션 토큰에 다음 문자가 포함되어 있는 경우

: / ? # [ ] @

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

또는 AWS 액세스 키 ID, 비밀 액세스 키, 세션 토큰(선택 사항)을 각각 연결 문자열 외부에서 제공할 수도 있습니다. 이때 다음과 같이 --username, --password--awsSessionToken 옵션을 대신 사용합니다.

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 환경 변수를 통해 사용 중인 플랫폼에서 이러한 자격 증명을 설정할 수도 있습니다. mongofilesMONGODB-AWSauthentication 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>

돌아가기

예시