linux mongofiles uri相關命令__linux

來源:互聯網
上載者:User

linux環境下,通過mongofiles檔案操作MongoDB:

使用--uri參數可以建立一個短串連,在程式中使用比較方便,不需要做開始的初始化或者結束後的中斷連線。

官方格式為

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

參考地址:Connection String URI Format

其中

1. "mongodb://" : uri的標準開頭

2. "username:password@" : 串連mongodb所使用的使用者名稱和密碼,如果mongodb未開啟使用者認證,則不填也可以操作成功。如果存在使用者名稱/密碼的話,需要用在最後加上分隔字元@

3. "host1" : 遠程登入的主機ip,如果是連自己主機的話,127.0.0.1即可。

4. ":port1" : 要登入的遠程主機連接埠,不填則預設為27017

5. "hostN:portN" : 如果存在多個需要登入的主機ip,則用逗號隔開即可。

6. "database" : 需要操作的mongodb資料庫名稱,如果不填的話,預設為admin資料庫。

7. "options" : 額外參數,具體參數指定請查看上面的參考地址,或者下面例子(3)的使用方式。

舉例:

(1)以使用者名稱為testuser,密碼為testpwd,登入127.0.0.1(本機)上的active資料庫,並調用list命令,查看其中資料。

./mongofiles --uri mongodb://testuser:testpwd@127.0.0.1:27017/active list

(2)若無認證需求,且查看的是admin資料庫,則可以簡化為

./mongofiles --uri mongodb://127.0.0.1 list

(3)在mongodb3.0版本後其預設採用了SCRAM-SHA-1的認證方式,如果需要調整mongodb主機端的認證方式,可以參考該網址:mongodb3.03開啟認證,而如果需要調整用戶端這邊傳輸過去的認證方式,可以通過增加options參數實現。

./mongofiles --uri mongodb://testuser:testpwd@127.0.0.1:27017/?authMechanism=MONGODB-CR delete_id 111

多個options參數指定之間請用&隔開。

使用過程中的問題:

在實際使用過程中,以例子(1)中的方式調用命令遇到了問題:

在確認過使用者名稱和密碼等其他參數都正確的情況下,查看了mongodb中的logs,其中的報錯資訊為:

UserNotFound: Could not find user XXX@test

其中XXX為使用的使用者名稱,而@之後的就是資料庫名,意思為test資料庫中找不到XXX使用者,即使用者不存在或者無操作許可權。問題在於參數中的確是指定了對應的資料庫active,而資料庫端仍然判斷為test資料庫。

這個問題暫時沒找到原因,未確認是特例還是普遍情況。替代方案是使用-d指定對應資料庫,即

./mongofiles -d active --uri mongodb://testuser:testpwd@127.0.0.1:27017 list

該方式下,命令執行成功。

相關操作命令:

list : 列出資料庫資料

put/put_id : 儲存檔案/且指定id

get/get_id : 根據檔案名稱/id取出檔案

delete/delete_id : 根據檔案名稱/id刪除檔案

具體可參考文檔:mongfiles

另外linux下不用設定檔直接啟動mongodb:

bin/mongod -dbpath /data/mongo/ -logpath /data/mongo/mongo.log -logappend -fork -port 27017
以後台方式執行。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.