‘MongoDB’ タグのついている投稿

debianにRockMongoを入れる

MongoDBをブラウザのGUIで扱いたかったのですが、何やら管理ツールはたくさんあるみたいで、どれが良いのか正直わかりませんでした。

Admin UIs – MongoDB

とりあえず、コメント欄で盛り上がっていたRockMongoを試してみることにしました。

http://code.google.com/p/rock-php/wiki/rock_mongo_jp#ダウンロード

開発環境のdebian squeezeにRockMongoをインストールしてみました。aptで入るphpMyAdminと同じような構成にしてみることにします。どこのVirtualHostからでも/rockmongoでアクセスできる環境です。

MongoDBはあらかじめインストールしておいてください。

まずはRockMongoを/usr/shareに展開します。

# mkdir /usr/share/rockmongo
# cd /usr/share/rockmongo
# wget http://rockmongo.com/downloads/go?id=6 -O rockmongo-v1.1.2.zip
# unzip ./rockmongo-v1.1.2.zip
# rm ./rockmongo-v1.1.2.zip
# mv ./rockmongo/* .
# rm -R ./rockmongo/

Apache用の設定ファイルを作成します。

# vi /etc/apache2/conf.d/rockmongo.conf

phpMyAdminを参考に以下のようにしておきます。

Alias /rockmongo /usr/share/rockmongo

<Directory /usr/share/rockmongo>
        Options FollowSymLinks
        DirectoryIndex index.php

        <IfModule mod_php5.c>
                AddType application/x-httpd-php .php

                php_flag magic_quotes_gpc Off
                php_flag track_vars On
                php_flag register_globals Off
                php_value include_path .
        </IfModule>
#        <IfModule mod_authn_file.c>
#                AuthType Basic
#                AuthName "RockMongo"
#                AuthUserFile /path/to/.htpasswd
#                Require valid-user
#        </IfModule>

        php_value session.gc_maxlifetime 86400
</Directory>

認証とかIP制限とか付けたければ適当にやってください。

Apacheを再起動します。

# /etc/init.d/apache2 restart

で、ブラウザからサーバの/rockmongoにアクセスすればOKです。

image


DoctrineMongoDBBundleでAbstractDoctrineExtensionのエラー

PHP Fatal error:  Class ‘Symfony\\Bridge\\Doctrine\\DependencyInjection\\AbstractDoctrineExtension’ not found in /home/path/to/Symfony/vendor/bundles/Symfony/Bundle/DoctrineMongoDBBundle/DependencyInjection/DoctrineMongoDBExtension.php on line 31

php – DoctrineMongoDBBundle getting a fatal error in Symfony2 – Stack Overflow

masterリポジトリが書き換えられていて、最新バージョンでは動かないのでdepsファイルにDoctrineMongoDBBundleのレポジトリを指定するときに、バージョン番号を指定する必要があるということでした。
DoctrineMongoDBBundleセクションにversion=v2.0.0を追加すればOKです。

[doctrine-mongodb]
    git=http://github.com/doctrine/mongodb.git

[doctrine-mongodb-odm]
    git=http://github.com/doctrine/mongodb-odm.git

[DoctrineMongoDBBundle]
    git=http://github.com/symfony/DoctrineMongoDBBundle.git
    target=/bundles/Symfony/Bundle/DoctrineMongoDBBundle
    version=v2.0.0