学习笔记—在laravel4.2中配置mongodb

原创 2016年05月31日 01:36:39

因为公司的需求, 在原先Laravel的框架上需要储存大量的用户操作记录。所以选择了mongodb来进行存储。 相比于SGBDR,laravel自带强大的Eloquent之并不直接支持Nosql。但是网上有很多已经成熟的插件很好的将Nosql集成到Laravel之中。

在Elasticsearch 和 mongodb进行比较之后。我们选择了Mongodb。

Extension是:jenssegers/laravel-mongodb (MongoLid也是一个功能相近的插件用于集成)。
Laravel版本:4.2

系统:ubuntu 14.04


1.mongodb 的安装。

切记不能直接在没有安装过mongodb的机器上直接安装 apt-get install mongodb。

如果安装了 利用 apt-get purge mongodb 来卸载

1.http://phphub.org/topics/309

其中包涵了mongodb 的安装方法 和 mongodb drive的安装方法。


2.Laravel MongoDB的安装方法:

首先确定自己使用的 laravel版本:

Laravel Package
4.2.x 2.0.x
5.0.x 2.1.x
5.1.x 2.2.x or 3.0.x
5.2.x 2.3.x or 3.0.x

因为这里使用的为laravel4.2 所以安装时不能直接使用默认的

composer require jenssegers/mongodb

修改 project_dir/composer.json文件

"require":{

"Laravel/framework":"4.2.*",


...

"jenssegers/mongodb":"~2.0"

},


之后在config/app.php中加入

“Jenssegers\Mongodb\MongodbServiceProvider”


在Model中创建新的User

use Jenssegers\Mongodb\Model as Eloquent;

class User extends Eloquent {}

注意:此处是4.2版本 所以路径为

 Jenssegers\Mongodb\Model

如果使用的为5.*版本 则可以直接使用composer命令

composer require jenssegers/mongodb


但目录则是:

use Jenssegers\Mongodb\Eloquent\Model as Eloquent;

class User extends Eloquent {}

之后在app/config/database中新建数据库

‘mongodb’=>array(

'driver' => 'mongodb',

'host'=> 'localhost'

'database' =>27017

'username'=>

'password'=>

'database'=>

)


之后在工程路径重新加载 composer update 就完成了


遇到的问题 : couldn't find mongoclient

1.保证第一步安装时能正确的现实 mangodb support :enable

其中要确定自己所使用的到底是哪个php.ini

有时候在cli和apache2中都需要修改:extension = mongo.so 此处是mongo.so 不是mongodb.so!!!!

查看apache的php.ini

在工程文件夹下新建 file.php

<?php echo phpinfo(); >


查看cli的php.ini

php -i | grep 'php.ini'

php -i | grep 'mongo'用于查看 mongodb driver是否正确执行。


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

从PHP5到PHP7自我封装MongoDB以及平滑升级

一.序言使用PHP+MongoDB的企业级用户很多,因为MongoDB对非结构化数据的存储很方便。在PHP5及以前,官方提供了两个扩展,Mongo和MongoDB,其中Mongo是对以MongoCli...
  • byr_wy
  • byr_wy
  • 2017-04-26 00:50
  • 1315

在laravel框架中使用mongodb数据库

在laravel框架中使用mongodb,前提是你已经安装好了mongodb及mongodb的php扩展。 没有安装的,具体可以参照博客http://blog.csdn.net/turtleo/a...

MongoDB+laravel 查询mongodb集合中数组个数

{$match: {'process.0': {$exists: true}}},  {$unwind: '$process'},  {$match: {'process.correct': 1}...

Centos7下安装mongodb数据库

一、安装mongodb在/etc/yum.repos.d目录下添加mongodb源 新建mongodb-org-3.0.repo文件[mongodb-org-3.0] name=MongoDB Re...

12.Laravel5学习笔记:使用mongodb开发LBS应用

随着近几年各类移动终端的迅速普及,基于地理位置的服务(LBS)和相关应用也越来越多,而支撑这些应用的最基础技术之一,就是基于地理位置信息的处理。我所在的项目也正从事相关系统的开发,我们使用的是Lara...

PHP操作mongodb数据库操作类

最近的项目开发中使用的数据库是mongodb数据库,因为小编的公司也是刚刚使用mongodb数据库,所以之前没有封装好的mongodb数据库操作类拿来使用,所以小编在项目中自己封装了一个mongodb...

NTFS文件系统结构--从零开始追踪一个文件的位置

前言:最近由于项目需要,研究了一下NTFS文件系统,NTFS文件系统是windows使用的文件系统,包括NT,2000,xp系列。无奈万恶资本主义的windows将自家的东西全部藏在阴暗的角落,NTF...

Laravel学习笔记(一)安装配置开发环境

摘要 Laravel的目标是给开发者创造一个愉快的开发过程,并且不牺牲应用的功能性。快乐的开发者才能创造最棒的代码!为了这个目的,开发者博取众框架之长处集中到Laravel中,这些框架甚至是基于...

laravel5.2学习笔记一:配置

1、介绍 Laravel 的所有配置文件都存放在 config 目录下,每个配置项都有注释,以保证浏览任意配置文件的配置项都能直观了解该配置项的作用及用法。 2、访问配置值 你可以使...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)