以前、 CakePHP
で MongoDB
を使う機会があったので、その時の手順をまとめてみました。
使用した環境について
設定した時の環境は下記の通り。
- OS : CentOS 6.x
- PHP : 5.5
- CakePHP : 2.x
- MongoDB : 1.x
CakePHP
と MongoDB
についての詳細はこちらを確認してください。
CakePHP
https://cakephp.org/jp/
MongoDB
https://www.mongodb.com/ja-jp
yum のリポジトリに mongodb.repo を作成する
まずは MongoDB
をインストールするための前準備として、 MongoDB
のリポジトリファイルを作成します。
下記のパスにファイルを作成します。
$ sudo vi /etc/yum.repos.d/mongodb.repo
先ほど作成した mongodb.repo
という名前のファイルに下記の内容を入力してください。
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
※ baseurl は使用している環境に応じて書き換えてください。
MongoDB のインストール
MongoDB
をインストールしていきたいと思います。
下記コマンドを実行し、 MongoDB
をインストールします。
$ sudo yum -y install mongodb-org
MongoDB自動実行設定
このままだとサーバを再起動したときに毎回 MongoDB
を起動しないといけなくなるので、
下記コマンドを実行し、サーバ再起動時に MongoDB
が起動するように設定します。
$ sudo chkconfig mongod on
PHP で MongoDB が利用できるようにする
CakePHP
で MongoDB
が使えるように PHP
の設定を変更します。
php.ini
に下記のコードを追記し、 MongoDB
が PHP
から実行できるようにします。
extension=mongo.so
設定が変更できたら、下記コマンドを実行し、 PHP
から MongoDB
へアクセスできるようにします。
$ /usr/sbin/setsebool -P httpd_can_network_connect 1
※apacheの再起動を忘れずに!!
最後に
普段は MySQL
などの RDBMS
を利用することが多いのですが、今回は NoSQL
である MongoDB
を CakePHP
で利用できるように設定してみました。
いつもの DB
への接続手順とかなり違う部分があるので、戸惑うこともあるかもしれませんが、 RDBMS
よりも NoSQL
の方が簡単に素早く開発できるプロジェクトもあるので、 CakePHP
でも MongoDB
が使えるということは覚えておきたいですね。
コメント