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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mac下安装mongodb

發(fā)布時(shí)間:2023/12/18 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mac下安装mongodb 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

先去官網(wǎng)下載http://www.mongodb.org/downloads

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

我下載的是mongodb-osx-x86_64-2.0.3.tgz 看《mongodb權(quán)威指南》說的偶數(shù)版本號是穩(wěn)定版,

奇數(shù)版本號是開發(fā)版。但看網(wǎng)站說推薦安裝這個(gè)版本,看大版本也是穩(wěn)定版,無所謂啦,反正也是學(xué)習(xí),

好多的基礎(chǔ)知識建議多看《mongodb權(quán)威指南》

因?yàn)橄螺d的是二進(jìn)制包安裝就很簡單

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

這個(gè)已經(jīng)都準(zhǔn)備好了,目錄是必須要提前創(chuàng)建好的,接下來是啟動(dòng)服務(wù)

?

sudo bin/mongod?--dbpath=/usr/local/mongodb-2.0.3/data/db?--fork?--logpath= /usr/local/mongodb-2.0.3/log/mongo.log?--logappenddbpath就是指定剛才創(chuàng)建的目錄,默認(rèn)是在 /data/dbfork是作為守護(hù)進(jìn)程啟動(dòng)logpath就是指定日志文件的位置,這個(gè)一般在需要的時(shí)候可以方便的查看,比如升級,重啟之類的 logappend就是讓日志持續(xù)的添加進(jìn)日志文件啟動(dòng)好后,因?yàn)槿罩径驾敵龅饺罩疚募恕K钥刂婆_是看不到任何東西的,可以查一下端口,默認(rèn)端口是 27017netstat -an |grep 27017也可以訪問http://localhost:28018 這個(gè)是mongodb自己帶的一個(gè)http的監(jiān)控頁面。

現(xiàn)在關(guān)閉mongodb

ps -ef |grep mongodb

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

?接下來是開機(jī)啟動(dòng),先找到了Homebrew 一個(gè)ruby寫的類似apt-get的東西,我看著就有點(diǎn)怕怕的,

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

后來找到了launchctl 是mac下的開機(jī)啟動(dòng)腳本的服務(wù)。比rc.d容易多了

/Library/LaunchDaemon? ??目錄里可以定義一些隨系統(tǒng)啟動(dòng)的服務(wù)進(jìn)程
/Library/LaunchAgents? ? ??目錄可以定義一些隨用戶登錄而啟動(dòng)的服務(wù)進(jìn)程

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

先建立plist文件,因?yàn)閜list中使用了mongod.conf文件,所以也需要建立這個(gè)文件,

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

先用xcode建立一個(gè)plist文件,然后用open as-》source code的方式打開,把下面的內(nèi)容復(fù)制進(jìn)去

?

?

<?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里面是啟動(dòng)時(shí)要運(yùn)行的命令,因?yàn)槲覀兊呐渲枚荚趍ongod.conf中了所以不能向之前一樣啟動(dòng),

只能通過這個(gè)配置文件啟動(dòng),所有的配置都在配置文件中。

2)WorkingDirectory是mongo的目錄。最后是兩個(gè)日志文件。具體可以參考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下運(yùn)行l(wèi)aunchctl的命令

將mongodb加入到啟動(dòng)服務(wù)中,加入后自動(dòng)啟動(dòng)mongodb

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

將mongodb移出啟動(dòng)服務(wù),移除后需要手動(dòng)關(guān)閉mongodb

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

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

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

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

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

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

最近發(fā)現(xiàn)mongodb有個(gè)問題,不定期的就不能啟動(dòng)了,查看日志發(fā)現(xiàn)說mongod.lock這個(gè)文件有問題。

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

1)sudo rm /var/lib/mongodb/mongod.lock (因?yàn)榘惭b的不同,這個(gè)文件的位置也不一樣。具體位置在mongo.log文件中會指出)

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

轉(zhuǎn)載于:https://www.cnblogs.com/qinyan20/p/3643270.html

總結(jié)

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

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。