Как отформатировать строку подключения для реплики MongoDB, установленной в Sitecore?
Я настроил MongoDB для Sitecore, используя набор реплик. Я установил контроль доступа к ключевому файлу и добавил пользователя. Но я сталкиваюсь с проблемами при создании строк подключения.
Предположим, мое имя набора реплик rsHelloWorld
с несколькими mongod
экземпляры: localhost:21017,localhost:21018,localhost:21019,localhost:21020,localhost:21021(arbitor)
username: mongo_admin
password: test@123
Строка подключения по умолчанию в Sitecore:
<add name="analytics" connectionString="mongodb://localhost/analytics" />
Как указать строку подключения для моей базы данных MongoDB с набором реплик и аутентификацией?
1 ответ
Sitecore xDB использует стандартный формат строки подключения MongoDB.
В приведенном примере строка подключения будет такой:
mongodb://mongo_admin:test%40123@localhost:21017,localhost:21018,localhost:21019,localhost:21020,localhost:21021/?replicaSet=rsHelloWorld
Обратите внимание, что я заменил @
символ в вашем пароле с %40
, Это потому что @
в строке подключения находится разделитель между учетными данными и именами хостов. Подробнее здесь.
Также имейте в виду, что вам не нужно указывать все свои серверы в строке подключения. Необходимо указать хотя бы один, и при подключении к нему xDB получит полную информацию о наборе реплик, включая адреса всех несущих данные узлов. Тем не менее, рекомендуется включать несколько серверов, чтобы гарантировать, что в случае отказа одного из них приложение все равно найдет сервер для подключения. В вашем случае включение арбитра не имеет особого смысла, так как xDB (или любой другой клиент MongoDB) никогда не будет обмениваться данными с ним.