"db.createUser는 함수가 아닙니다" 및 "암호는 비워 둘 수 없습니다"
나는 MongoDB에서 인증을 설정하려고 합니다.언급하지 않았습니다.auth=true
구성 파일에서 서버를 다시 시작했습니다.mongo를 통한 첫 번째 연결이 거부되었습니다.두 번째(첫 번째 직후) 작업이 진행되었고 로그에 다음과 같은 내용이 기록되었습니다.
Sat Apr 12 14:56:46 [initandlisten] connection accepted from 127.0.0.1:44001 #1
Sat Apr 12 14:56:46 [conn1] note: no users configured in admin.system.users, allowing localhost access
콘솔에서 명령을 실행할 수 있지만 수많은 튜토리얼(공식 튜토리얼 포함)을 따르려고 하면 다음 중 하나가 표시됩니다.db.createUser is not a function
실행 시db.createUser()
또는password can't be empty
실행 시db.addUser()
:
제가 지나가는 물건은 다음과 같습니다.
{
user: "username",
pwd: "passphrase",
roles: [
{
role: "userAdminAnyDatabase",
db: "admin"
}
]
}
실행 중인 mongodb 버전은 무엇입니까? db.createUser는 버전 2.6에서 도입되었습니다.
버전 2.6부터 사용되지 않음: MongoDB에 사용자를 추가하려면 db.addUser() 대신 db.createUser()와 db.updateUser()를 사용합니다.
2.6에서 MongoDB는 보안 소개에 설명된 대로 사용자 자격 증명 및 권한에 대한 새로운 모델을 도입했습니다.MongoDB 2.4에서 db.addUser()를 사용하려면 MongoDB Manual 2.4 버전의 db.addUser()를 참조하십시오.
http://docs.mongodb.org/manual/reference/method/db.addUser/
제 경험과 관련하여, 이 문제는 당신이 이전 버전의 Mongo Shell을 가지고 있을 때도 발생합니다.
따라서 MongoDB 서버의 버전에 따라 Mongo Shell을 사용해야 합니다.
몽고
MongoDB 셸 버전 v3.4.10
연결 대상: mongodb://127.0.0.1:27017
MongoDB 서버 버전: 3.4.10
아래:
$ mongo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
Server has startup warnings:
2018-01-16T11:43:00.195-0600 I STORAGE [initandlisten]
2018-01-16T11:43:00.195-0600 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-01-16T11:43:00.195-0600 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten]
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten]
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten]
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2018-01-16T11:43:00.687-0600 I CONTROL [initandlisten]
>
> use admin
switched to db admin
>
> db.createUser( {user:"mongoloide", pwd:"mongoloide*2017", roles:["root"]} )
Successfully added user: { "user" : "mongoloide", "roles" : [ "root" ] }
언급URL : https://stackoverflow.com/questions/23034879/db-createuser-is-not-a-function-and-password-cant-be-empty
'programing' 카테고리의 다른 글
왜 gitrevert는 m 옵션 누락에 대해 불평합니까? (0) | 2023.06.01 |
---|---|
현재 스레드가 주 스레드인지 확인합니다. (0) | 2023.06.01 |
사용자 지정 .NET 예외를 직렬화할 수 있도록 만드는 올바른 방법은 무엇입니까? (0) | 2023.06.01 |
jQuery를 사용하여 DropDownList 값을 설정하려면 어떻게 해야 합니까? (0) | 2023.06.01 |
주입 방법에 대한 간단한 설명이 필요합니다. (0) | 2023.06.01 |