日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mac下安装mongodb

發布時間:2023/12/18 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mac下安装mongodb 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

先去官網下載http://www.mongodb.org/downloads

建議下載64位的,32位的有一些限制,這個看書都會提到

我下載的是mongodb-osx-x86_64-2.0.3.tgz 看《mongodb權威指南》說的偶數版本號是穩定版,

奇數版本號是開發版。但看網站說推薦安裝這個版本,看大版本也是穩定版,無所謂啦,反正也是學習,

好多的基礎知識建議多看《mongodb權威指南》

因為下載的是二進制包安裝就很簡單

tar zxvf?mongodb-osx-x86_64-2.0.3.tgz

sudo mv?mongodb-osx-x86_64-2.0.3.tgz /usr/local/mongodb-2.0.3

cd /usr/local/mongodb-2.0.3

mkdir -p data/db

mkdir log

chown -R root data/db

chown -R root log

這個已經都準備好了,目錄是必須要提前創建好的,接下來是啟動服務

?

sudo bin/mongod?--dbpath=/usr/local/mongodb-2.0.3/data/db?--fork?--logpath= /usr/local/mongodb-2.0.3/log/mongo.log?--logappenddbpath就是指定剛才創建的目錄,默認是在 /data/dbfork是作為守護進程啟動logpath就是指定日志文件的位置,這個一般在需要的時候可以方便的查看,比如升級,重啟之類的 logappend就是讓日志持續的添加進日志文件啟動好后,因為日志都輸出到日志文件了。所以控制臺是看不到任何東西的,可以查一下端口,默認端口是 27017netstat -an |grep 27017也可以訪問http://localhost:28018 這個是mongodb自己帶的一個http的監控頁面。

現在關閉mongodb

ps -ef |grep mongodb

可以查到進程號,直接kill就可以,mongodb收到kill信息會自己處理退出,如果kill -9就會造成數據丟失

?接下來是開機啟動,先找到了Homebrew 一個ruby寫的類似apt-get的東西,我看著就有點怕怕的,

就向之前在ubuntu裝redmine一樣,搞的各種依賴包裝在各種地方,我頭大啊。

后來找到了launchctl 是mac下的開機啟動腳本的服務。比rc.d容易多了

/Library/LaunchDaemon? ??目錄里可以定義一些隨系統啟動的服務進程
/Library/LaunchAgents? ? ??目錄可以定義一些隨用戶登錄而啟動的服務進程

方法可以參考原帖子?http://hlee.iteye.com/blog/772882

先建立plist文件,因為plist中使用了mongod.conf文件,所以也需要建立這個文件,

這個文件可以在mongodb的源碼中找到,也可以google一下。然后加載服務

先用xcode建立一個plist文件,然后用open as-》source code的方式打開,把下面的內容復制進去

?

?

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN""http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">?

? ? <dict>?

? ? ? ? <key>Label</key>?

? ? ? ? <string>org.mongodb.mongod</string>?

? ? ? ? <key>ProgramArguments</key>?

? ? ? ? <array>?

? ? ? ? ? ? <string>/usr/local/mongodb-2.0.3/bin/mongod</string>?

? ? ? ? ? ? <string>run</string>?

? ? ? ? ? ? <string>--config</string>?

? ? ? ? ? ? <string>/usr/local/mongodb-2.0.3/mongod.conf</string>?

? ? ? ? </array>?

? ? ? ? <key>RunAtLoad</key>?

? ? ? ? <true/>?

? ? ? ? <key>KeepAlive</key>?

? ? ? ? <true/>?

? ? ? ? <key>WorkingDirectory</key>?

? ? ? ? <string>/usr/local/mongodb-2.0.3</string>?

? ? ? ? <key>StandardErrorPath</key>?

? ? ? ? <string>/usr/local/mongodb-2.0.3/log/error.log</string>?

? ? ? ? <key>StandardOutPath</key>?

? ? ? ? <string>/usr/local/mongodb-2.0.3/log/mongo.log</string>?

? ? </dict>?

</plist>

?

plist的配置我也不是太清楚,就我理解的我說一下。

1)array里面是啟動時要運行的命令,因為我們的配置都在mongod.conf中了所以不能向之前一樣啟動,

只能通過這個配置文件啟動,所有的配置都在配置文件中。

2)WorkingDirectory是mongo的目錄。最后是兩個日志文件。具體可以參考apple的文檔

http://www.apple.com.cn/developer/mac/library/documentation/UserExperience/Conceptual/tn2004/tn2124.html

?

?

?

下面是mongod.conf文件,只列出了有用的部分

#where to log

?logpath=/usr/local/mongodb-2.0.3/log/mongo.log

?logappend=true

?# fork and run in background

?fork = true

?#port = 27017

?dbpath=/usr/local/mongodb-2.0.3/data

mac下運行launchctl的命令

將mongodb加入到啟動服務中,加入后自動啟動mongodb

sudo launchctl load /Library/LaunchDaemon/org.mongodb.mongod.plist ? ? ??

將mongodb移出啟動服務,移除后需要手動關閉mongodb

sudo launchctl unload /Library/LaunchDaemon/org.mongodb.mongod.plist ? ?

一切就緒后,就是將mongodb的bin目錄加入到path中,mac下沒找到bash_profile文件,有帖子說自己建立一個就可以

我是編輯/etc/profile的,在文件最后加上

export PATH=${PATH}:/usr/local/mongodb-2.0.3/bin

etc/profile文件是只讀的,編輯前記得chmod一下,該完文件沒問題后再把權限改回去

————————————————————————————————————————————————————————————

最近發現mongodb有個問題,不定期的就不能啟動了,查看日志發現說mongod.lock這個文件有問題。

google后,也沒有什么有效的解決辦法。

1)sudo rm /var/lib/mongodb/mongod.lock (因為安裝的不同,這個文件的位置也不一樣。具體位置在mongo.log文件中會指出)

?2)sudo -u mongodb /usr/bin/mongod -f /etc/mongodb.conf --repair (這行命令,我沒有運行,重啟mac就可以的)

轉載于:https://www.cnblogs.com/qinyan20/p/3643270.html

總結

以上是生活随笔為你收集整理的mac下安装mongodb的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。