CakePHP で MongoDB が使えるようになるまでの各種設定について

プログラミング

以前、 CakePHPMongoDB を使う機会があったので、その時の手順をまとめてみました。

使用した環境について

設定した時の環境は下記の通り。

  • OS : CentOS 6.x
  • PHP : 5.5
  • CakePHP : 2.x
  • MongoDB : 1.x

CakePHPMongoDB についての詳細はこちらを確認してください。

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 が利用できるようにする

CakePHPMongoDB が使えるように PHP の設定を変更します。
php.ini に下記のコードを追記し、 MongoDBPHP から実行できるようにします。

extension=mongo.so

設定が変更できたら、下記コマンドを実行し、 PHP から MongoDB へアクセスできるようにします。

$ /usr/sbin/setsebool -P httpd_can_network_connect 1

※apacheの再起動を忘れずに!!

最後に

普段は MySQL などの RDBMS を利用することが多いのですが、今回は NoSQL である MongoDBCakePHP で利用できるように設定してみました。
いつもの DB への接続手順とかなり違う部分があるので、戸惑うこともあるかもしれませんが、 RDBMS よりも NoSQL の方が簡単に素早く開発できるプロジェクトもあるので、 CakePHP でも MongoDB が使えるということは覚えておきたいですね。

コメント

モバイルバージョンを終了
タイトルとURLをコピーしました