2016-05-12 78 views
2

我已經使用副本集爲Sitecore配置了MongoDB。 我設置了密鑰文件訪問控制並添加了一個用戶。 但我在創建連接字符串時遇到問題。如何格式化Sitecore中的MongoDB副本集的連接字符串?

讓我們假設我的副本集的名字是rsHelloWorld幾個mongod實例:localhost:21017,localhost:21018,localhost:21019,localhost:21020,localhost:21021(arbitor)

username: mongo_admin 
password: [email protected] 

在Sitecore的默認連接字符串是:

<add name="analytics" connectionString="mongodb://localhost/analytics" /> 

如何在連接字符串爲我的MongoDB數據庫與副本集和身份驗證?

回答

4

Sitecore xDB使用標準的MongoDB connection string format

在提供的示例中,連接字符串將是這樣的:

mongodb://mongo_admin:test%[email protected]:21017,localhost:21018,localhost:21019,localhost:21020,localhost:21021/?replicaSet=rsHelloWorld 

注意,我與%40取代@符號在您的密碼。這是因爲連接字符串中的@是證書和主機名之間的分隔符。 See more here

另外,請記住,您不要已有指定連接字符串中的所有服務器。您需要指定至少一個,並且在連接到它時,xDB將收到有關副本集的完整信息,包括所有數據承載節點的地址。不過,最好包含幾臺服務器,以確保其中一臺服務器停機時,應用程序仍會找到要連接的服務器。在你的情況下,包括仲裁者沒有多大意義,因爲xDB(或任何其他的MongoDB客戶端)將永遠不需要與它進行通信。