ここ2日更新滞りましたが、サーバーサイドはRuby+Sinatra+MongoDBみたいな感じでいこうかと思い、とりあえずMongoDB環境作ろうと思ったら意外と時間かかったからです・・
環境構築までの流れ
ここ最近はAM4:30頃には起きて6:00に家を出るという生活スタイルになっているので、起床してすぐMacPorts経由でビルドし始めたら、終わる気配がなかったので一旦中断して、その日帰宅してから夜に作業をして、自分が自由にできる時間は他になく結果これで1日潰れた
$ sudo port install mongodb Password: ---> Computing dependencies for mongodb ---> Dependencies to be installed: boost libpcap pcre scons spidermonkey nspr ---> Building boost ---> Staging boost into destroot ---> Installing boost @1.45.0_2 ---> Activating boost @1.45.0_2 ---> Cleaning boost ---> Fetching libpcap ---> Attempting to fetch libpcap-1.1.1.tar.gz from http://distfiles.macports.org/libpcap ---> Verifying checksum(s) for libpcap ---> Extracting libpcap ---> Applying patches to libpcap ---> Configuring libpcap ---> Building libpcap ---> Staging libpcap into destroot ---> Installing libpcap @1.1.1_0 ---> Activating libpcap @1.1.1_0 ---> Cleaning libpcap ---> Fetching pcre ---> Attempting to fetch pcre-8.12.tar.bz2 from http://jaist.dl.sourceforge.net/pcre ---> Verifying checksum(s) for pcre ---> Extracting pcre ---> Configuring pcre ---> Building pcre ---> Staging pcre into destroot ---> Installing pcre @8.12_0 ---> Activating pcre @8.12_0 ---> Cleaning pcre ---> Fetching scons ---> Attempting to fetch scons-2.0.1.tar.gz from http://jaist.dl.sourceforge.net/scons ---> Verifying checksum(s) for scons ---> Extracting scons ---> Applying patches to scons ---> Configuring scons ---> Building scons ---> Staging scons into destroot ---> Installing scons @2.0.1_0 ---> Activating scons @2.0.1_0 ---> Cleaning scons ---> Fetching nspr ---> Attempting to fetch nspr-4.8.7.tar.gz from http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.8.7/src/ ---> Verifying checksum(s) for nspr ---> Extracting nspr ---> Configuring nspr ---> Building nspr ---> Staging nspr into destroot ---> Installing nspr @4.8.7_0 ---> Activating nspr @4.8.7_0 ---> Cleaning nspr ---> Fetching spidermonkey ---> Attempting to fetch js-1.7.0.tar.gz from http://ftp.mozilla.org/pub/mozilla.org/js/ ---> Verifying checksum(s) for spidermonkey ---> Extracting spidermonkey ---> Applying patches to spidermonkey ---> Configuring spidermonkey ---> Building spidermonkey ---> Staging spidermonkey into destroot ---> Installing spidermonkey @1.7.0_4 ---> Activating spidermonkey @1.7.0_4 ---> Cleaning spidermonkey ---> Fetching mongodb ---> Attempting to fetch mongodb-src-r1.6.5.tar.gz from http://distfiles.macports.org/mongodb ---> Verifying checksum(s) for mongodb ---> Extracting mongodb ---> Applying patches to mongodb ---> Configuring mongodb ---> Building mongodb ---> Staging mongodb into destroot ---> Installing mongodb @1.6.5_0 ---> Activating mongodb @1.6.5_0 ---> Cleaning mongodb
翌日の朝にとりあえず利用できるかどうか確認するため
$ which mongo
/opt/local/bin/mongo
$ mongo
としたら「mongodb couldn't connect to server 127.0.0.1」と怒られて利用できませんでした。
はて?なんでだろうと思って、gihyoの記事をひとまず頼りにして読み返していた所、
まずはサーバ本体のmongodを起動しましょう。--dbpathオプションに適当なディレクトリを指定してください。
という箇所が目に止まり、「あー、そっかmongodが最初から起動しているわけじゃないのか」とここで気づきいた所で2日目が潰れた
下記のようにしてmongodを起動&mongoコマンド入力したら問題なく利用出来るようになりました
mongod --dbpath=/Users/xxxxx/Dropbox/Public/learning_mongoDB/data & [1] 72645 $ Thu Jan 20 06:32:17 MongoDB starting : pid=72645 port=27017 dbpath=/Users/xxxxx/Dropbox/Public/learning_mongoDB/data 64-bit Thu Jan 20 06:32:17 db version v1.6.6-pre-, pdfile version 4.5 Thu Jan 20 06:32:17 git version: nogitversion Thu Jan 20 06:32:17 sys info: Darwin macbook-air.local 10.6.0 Darwin Kernel Version 10.6.0: Wed Nov 10 18:13:17 PST 2010; root:xnu-1504.9.26~3/RELEASE_I386 i386 BOOST_LIB_VERSION=1_45 Thu Jan 20 06:32:17 [initandlisten] waiting for connections on port 27017 Thu Jan 20 06:32:17 [websvr] web admin interface listening on port 28017 $ mongo MongoDB shell version: 1.6.6-pre- connecting to: test > > db.blogger.save({name:'小林 晋也',entry_point:'http://blog.pasonatech.co.jp/kobayashi/', entry_frequency:2.5}) db.blogger.save({name:'横田 真俊',entry_point:'http://blog.pasonatech.co.jp/yokota/', entry_frequency:20}) > > db.blogger.save({name:'横田 真俊',entry_point:'http://blog.pasonatech.co.jp/yokota/', entry_frequency:20}) > > db.blogger.find() { "_id" : ObjectId("4d3767e8b362d14a0a48ebdf"), "name" : "小林 晋也", "entry_point" : "http://blog.pasonatech.co.jp/kobayashi/", "entry_frequency" : 2.5 } { "_id" : ObjectId("4d3767f0b362d14a0a48ebe0"), "name" : "横田 真俊", "entry_point" : "http://blog.pasonatech.co.jp/yokota/", "entry_frequency" : 20 } >