由於公司產品的設計,接觸mongodb資料庫有大概一兩年了,測試過程中或多或少都有用到,例如測試資料準備等等。。。;使用慣了關係型資料庫,開始接觸時感覺特別不適應,尤其是查詢資料的時候,以前用oracle或mysql查詢資料時寫一條sql非常方便,換做用它了,由於語法不熟練使用起來非常不方便;隨著使用次數的增多也遇到了一些問題,經過兩年的使用目前在測試工作中已可熟練使用,最近想把這兩年使用的一些心得總結一下
1.安裝部署
如果只是在測試環境中使用,不用考慮特殊的要求的話例如:副本集、主從等;安裝配置相對簡單,後續會描述副本集和主從模式的搭建,先講講簡單的模式。
2.啟動和配置
進入安裝路徑bin目錄下,輸入./mongod --help可檢視啟動程式自帶的引數結束,通常最簡單的配置只需要指定埠、資料檔案路徑、日誌路徑、日誌是否追加寫入、是否繫結埠即可;例如:
./mongod --port=10001 --dapath=/home/data/ --log=......
具體引數內容格式參照「幫助」內容;這種方式啟動mongodb有些麻煩,每次還要敲這麼一長串內容,本人比較懶,為了偷懶發現根據不同資料庫配置可將啟動引數寫在不同的配置檔案中,啟動時只要指定該檔案就好了,於是根據需要生成了不同的啟動檔案db.conf;內容如下:
port=10001
dbpath=/data/mongodb/data/shard0
fork=true
根據需要可以靈活地在此檔案中增添啟動引數,配置好該檔案後,只需執行:./mongod -f 檔案路徑 即可了!這樣一台機器上配置多個測試資料庫時只需準備不同的配置檔案,再寫個簡單的shell指令碼便可一鍵全啟動了
如果需要指定系統開機時啟動mongodb,那麼只需修改/etc/rc.local,將啟動命令新增進去即可
3.關閉資料庫
溫柔點的方法通過命令:
1)進入mongo控制台:./mongo --port="資料庫埠號"
2)use 」資料庫名稱」
3)使用命令db.shutdownserver()即可
暴力點圖方便的話直接用kill吧,但是這種操作如果實在資料庫大量讀寫資料時進行,下一次啟動時可能會失敗,我之前就遇到過,後來將資料檔案所在目錄下將mongo.lock檔案刪除後再次啟動問題解決。
4.工具介紹
推薦兩個工具,這兩個工具我都用過,感覺都還不錯!
1.rockmongo,這個工具用的時間相對較長伴隨了兩年,最早的版本修改資料的功能不完善,特別是修改long形字段值儲存到mongodb中會將值預設變為double型,當時覺得非常麻煩還特意要命令去轉換成long形,以後會講到!這工具唯一乙個缺點讓我很抓狂,就是當乙個表中記錄數較多時查詢一直提示超時,後來發現配置檔案中有timeout這一項,將該項值填大一點或者直接去掉,超時現象基本解決,偶爾碰見大表還是會出現,但出現概率變小了!
2.mongovue
介面清爽一點,其他不多數了,誰用誰知道
Mongodb系列 初識Mongodb
一 背景 月初進行了期末考試非常榮幸可以參加到了考試系統維護中 詳情請閱讀 那些年我們一起參加的活動 15年上半年考試系統維護總結 主要負責server維護,在維護期間對mongodb相逢。mongodb什麼東東?假設有點暈的童鞋請猛戳me科普一下哈。正是因為這些優勢使得考試系統選擇用它來存放英語聽...
錯誤總結系列 1
在此我們利用vector這個容器,一般有兩個思路,乙個是 套娃 即vector 另乙個則是vector int 在運用第二種方法進行資料維護的時候出現了嚴重的錯誤,大家可以執行以下 include include include using namespace std intmain vec.pus...
Spring系列 6 總結(1)
spring當然不僅僅只包括我們前面看到的這些技術,但其核心的思想主要是ioc aop這兩塊。在前面的幾塊中我們著重講了aop,最後簡單介紹了一下ioc.這個系列介紹到這兒,基本涉及了spring主要思想和技術,並建立了自己的乙個簡單的aop模型。一 我們首先來看看我們用到了那些關鍵性技術 1 動態...