fc2ブログ

2012-09-23(Sun)

MongodbのViewerとしてRockMongoを試す

MongodbのViewerとしてRockMongoを利用してみたのでメモる。

RockMongoはPHPベースであり、複雑なインストールは不要なのが
気に入った。

ダウンロード
$ wget http://www.phpmoadmin.com/file/phpmoadmin.zip
$ tar xzvf rockmongo-v1.1.2.zip
$ sudo mv rockmongo /var/www

必要なパッケージをインストール
$ sudo apt-get install php-pear
$ sudo pecl install mongo
Build process completed successfully
Installing '/usr/lib/php5/20090626/mongo.so'
install ok: channel://pecl.php.net/mongo-1.2.12
configuration option "php_ini" is not set to php.ini location
You should add "extension=mongo.so" to php.ini

編集しapache再起動
$ sudo vim /etc/php5/apache2/php.ini
extension=mongo.so

$ sudo /etc/init.d/apache2 restart

アクセスしてみる
http://192.168.1.112/rockmongo/

rockmongo01
ログイン画面が出てくる。
初期値はアカウント、パスワードともにadminだ。
あとDB名を入力してログイン。

rockmongo02
こんな画面が出てきます。
結構使いやすそうです。
いろいろいじってみます。


参考:
mongodbをyumでインストールし、rockmongoでWEBから操作する(CentOS5.7
MongoDB Installation
[PHP] PECLをインストールする
http://www.amazon.co.jp/gp/product/4897978874/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&camp=247&creative=1211&creativeASIN=4897978874&linkCode=as2&tag=kumagonjp-22


スポンサーサイト



2012-09-15(Sat)

MongoDBでmongoimportとmongoexportを使ってみる

MongoDBでmongoimportとmongoexportを使ってみた。
わりと簡単。
(Exportしてみる)
> mongoexport --db testdb --collection test --out output.json
アウトプットはこんな感じ。
$ cat output.json
{ "_id" : { "$oid" : "504a05bba28e3f3a77f44fd5" }, "date" : { "$date" : 1346803260000 } }
{ "_id" : { "$oid" : "504a063ea28e3f3a77f44fd6" }, "date" : { "$date" : 1346803200000 } }

次にpythonでimportするファイルを作ってみる。
ちょっとややこしいのは日付が1970年からの日数になっているところで
上記のように{"date": "$date": シリアル番号}
で記載する。
>>> import json
>>> import datetime
>>> start=datetime.datetime(1970, 1, 1)
>>> now=datetime.datetime(2012, 9, 5)
>>> dd=now-start
>>> m=dd.days
>>> vserial_date=m * 3600 * 24
>>> S_DT="""{"date":{"$date":%s}, "date1":%s}¥n"""
>>> s_dt=S_DT % (serial_date*1000, serial_date*1000)
>>> fp=open('output.json','w')
>>> fp.writelines(s_dt)
>>> fp.writelines(s_dt)
>>> fp.close()

これで 2012-09-05のoutput.jsonに出力できた。

(Inportしてみる)
$ ./mongoimport --db testdb --collection test --file output.json --journal


確認してみる
> db.test.find()
{ "_id" : ObjectId("504a19d3f6262c75e97214d0"), "date" : ISODate("2012-09-05T00:00:00Z"), "date1" : NumberLong("1346803200000") }
{ "_id" : ObjectId("504a19d3f6262c75e97214d1"), "date" : ISODate("2012-09-05T00:00:00Z"), "date1" : NumberLong("1346803200000") }



参考:
MongoDBデータのインポートとエクスポート
mongoimportマニュアル
mongodumpマニュアル

2012-09-09(Sun)

MongoDBでユーザー認証してみる

MongoDBでユーザーを作成してみる。

ユーザーを作成
> use pharaoh
switched to db pharaoh
> db.addUser('hogeuser', 'hogepass')
{ "n" : 0, "connectionId" : 2, "err" : null, "ok" : 1 }
{
"user" : "hogeuser",
"readOnly" : false,
"pwd" : "b212177e897528fb334f5e6a022d6105",
"_id" : ObjectId("50382c3666db9c3120642bd7")
}
> db.system.users.find() # 確認
{ "_id" : ObjectId("50382c3666db9c3120642bd7"), "user" : "hogeuser", "readOnly" : false, "pwd" : "b212177e897528fb334f5e6a022d6105" }
readOnlyユーザーにする場合は第三引数にtrueを付加する。
> db.addUser('hogeuser', 'hogepass', true)

ユーザーを消す
> db.removeUser( 'hogeuser' )


mongo.confを設定
$ vim /usr/local/mongo/bin/mongo.conf
# Turn on/off security. Off is currently the default
noauth = false
auth = true
-> 認証をtrueにする。


MongoDBを再起動
$ /etc/init.d/mongod restart

参考:
Security and Authentication

2012-09-08(Sat)

mongoの起動方法

MongoDBを触ってみる。

mongoの起動方法
forgroundで起動する。
$ ./mongod --fork --logpath /var/log/mongodb.log --logappend

デーモンとしてbackgroundで起動する。(--forkを使う。)
$ ./mongod -f mongo.conf


mongoの停止方法
foregroundで起動している場合は単純にコンソール上でCrl-Cすればいい。
バックグラウンドで起動している場合は以下の通り。
$ ./mongo
> use admin
> db.shutdownServer()


Configuration File
必要最低限は以下ぐらい。
$ cat mongo.conf
#where to log
logpath=/usr/local/mongo/log/mongod.log
# for debug
verbose=true
logappend=true

# fork and run in background
fork = true

#port = 27017
dbpath=/usr/local/mongo/db


参考:
Starting and Stopping Mongo
File Based Configuration




2012-04-01(Sun)

CentOSにJavaをインストール(with yum)

java open jdkのリストを表示させる。
$ sudo yum list \*java-1\* | grep open
java-1.6.0-openjdk.x86_64 1:1.6.0.0-1.43.1.10.6.el6_2 @updates
java-1.6.0-openjdk-demo.x86_64 1:1.6.0.0-1.43.1.10.6.el6_2 updates
java-1.6.0-openjdk-devel.x86_64 1:1.6.0.0-1.43.1.10.6.el6_2 updates
java-1.6.0-openjdk-javadoc.x86_64 1:1.6.0.0-1.43.1.10.6.el6_2 updates
java-1.6.0-openjdk-src.x86_64 1:1.6.0.0-1.43.1.10.6.el6_2 updates


以下をインストール。
$ sudo yum install java-1.6.0-openjdk.x86_64
$ sudo yum install java-1.6.0-openjdk-devel.x86_64


バージョン確認
$ java -version
java version "1.6.0_22"
OpenJDK Runtime Environment (IcedTea6 1.10.6) (rhel-1.43.1.10.6.el6_2-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)


ちなみに複数のバージョンにまたがるJDKを入れた場合、どのバージョンを使うか選択しなければ
ならない時がある。そういうときは以下のコマンドを使うらしい。
$ alternatives --config java


さて、.bashrcの設定をする。
私は基本的にUbuntuユーザーなのでJAVA_HOMEはUbuntuにあわせておきたい。
$ cd /usr/lib/jvm
$ ln -s java-1.6.0-openjdk.x86_64 java-6-openjdk
$ vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk


これで以下のとおり.bashrcのJAVA_HOMEはUbuntuと合わせれた。


プロフィール

kumagonjp2

Author:kumagonjp2
Python,Django,R,Mongo,MySQL,Struts,Spring,データマイニングなどサーバー関係のメモを残していきます。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
雪が3Dで降るブログパーツ ver2

マウスで見る方向変えられます

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR