zoukankan      html  css  js  c++  java
  • Linux下PHP安装配置MongoDB数据库连接扩展

    说明:

    操作系统:CentOS 5.X 64位

    MongoDB数据库服务器:

    IP地址:192.168.21.130

    Web服务器:

    IP地址:192.168.21.127

    PHP安装路径:/usr/local/php

    实现目的:

    安装PHP的MongoDB数据库扩展,通过PHP程序连接MongoDB数据库

    具体操作:

    一、安装PHP的MongoDB数据库扩展(在Web服务器192.168.21.127上操作)

    下载地址:http://pecl.php.net/get/mongo-1.5.1.tgz

    上传mongo-1.5.1.tgz到/usr/local/src目录

    tar  zxvf mongo-1.5.1.tgz  #解压

    cd mongo-1.5.1

    /usr/local/php/bin/phpize

    ./configure --with-php-config=/usr/local/php/bin/php-config

    make  #编译

    make install  #安装,完成之后出现下面的界面


    /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/

    vi /usr/local/php/etc/php.ini  #编辑,在最后一行添加下面的代码

    extension="mongo.so"

    :wq! #保存退出

    service php-fpm reload  #重新加载php-fpm

    *********************************************

    如果重启service php-fpm restart提示错误,可以创建/etc/php.d/mongo.ini,然后加入extension="mongo.so"保存。

    更简便的安装mongo扩展的方式:pecl install mongo

    *********************************************

    在站点根目录下添加php测试页面

    vi /usr/local/nginx/html/phpinfo.php  #编辑

    <?php

    phpinfo();

    ?>

    :wq!  #保存退出

    打开上面的页面,http://192.168.21.127/phpinfo.php

    如下图所示:


    二、创建测试数据库(在MongoDB数据库服务器操作)

    在mongodb上执行

    cd /usr/local/mongodb/bin/

    ./mongo  #进入数据库

    #创建数据库:osyunweidb,在数据库中新建表,插入数据

    use osyunweidb  #创建数据库osyunweidb 如果什么都不操作离开的话,这个库就会被系统删除

    db.createCollection("osyunweidb_table")  #创建表osyunweidb_table

    show collections  #查看

    db.osyunweidb_table.insert({uid:1,name:"系统运维",url:"http://www.osyunwi.com",content:"系统运维官方网站"})  #插入数据到表osyunweidb_table中

    db.osyunweidb.find();

    show dbs

    三、创建数据库账号(在MongoDB数据库服务器操作)

    ===============================================================

    1、MongoDB数据库默认没有用户名和密码,只要连接上服务,就能登录,进行所有操作。

    2、可以通过配置文件设置,开启登录验证功能。

    3、只有切换到admin数据库,添加的账号才是管理员账号。

    4、管理员账号可以对MongoDB服务器所有数据库进行管理(但是:默认只能管理自己的admin数据库,要管理其他数据库,需要先在admin数据库中进行认证)

    ===============================================================

    #添加普通账号

    cd /usr/local/mongodb/bin/

    ./mongo  #进入数据库

    use osyunweidb

    db.addUser('osyunweidbuser','123456')  #账号:osyunweidbuser 密码:123456 权限:读写

    #db.addUser('osyunweidbuser','123456',true)  #账号:osyunweidbuser 密码:123456 权限:只读

    db.auth('osyunweidbuser','123456') #添加用户认证

    exit #退出

    #添加管理员账号

    cd /usr/local/mongodb/bin/

    ./mongo  #进入数据库

    show dbs  #列出所有数据库

    use admin  #切换到admin数据库,添加的账号才是管理员账号。

    show collections

    db.system.users.find()

    db.addUser('root','123456')  #添加管理员账号:root 密码:123456

    db.auth('root','123456') #添加管理员用户认证,认证之后才能管理所有数据库

    exit  #退出

    ###############################################################

    #删除数据库、删除表操作

    cd /usr/local/mongodb/bin/

    ./mongo

    use osyunweidb #进入数据库

    db.dropDatabase()  #删除数据库

    db.osyunweidb_table.drop() #删除表

    db.removeUser('osyunweidbuser')  #删除用户

    ###############################################################

    四、设置MongoDB配置文件,开启登录验证功能(在MongoDB数据库服务器操作)

    vi /usr/local/mongodb/mongodb.conf  #编辑配置文件

    auth=true  #开启认证

    :wq!  #保存配置

    service mongod stop  #停止

    service mongod start  #启动

    cd /usr/local/mongodb/bin/

    ./mongo -uosyunweidbuser -p123456  127.0.0.1:27017/osyunweidb  #进入mongodb控制台

    exit #退出

    cd /usr/local/mongodb/bin/

    ./mongo  -uroot -p123456 127.0.0.1:27017/admin

    db.system.users.find()

    use osyunweidb

    show collections

    exit  #退出

    五、php连接测试数据库(在Web服务器192.168.21.127上操作)

    vi /usr/local/nginx/html/test.php

    <?php

    $mongo = new Mongo("192.168.21.130:27017");  #连接数据库服务器

    $db = $mongo->selectDB('osyunweidb');  #连接数据库

    $db->authenticate("osyunweidbuser","123456");  #数据库连接账号和密码

    $collection = $db->selectCollection("osyunweidb_table");  #选择数据库中的表

    $result = $collection->find(); #读取数据

    foreach($result as $value){  #输出数据

    print_r($value);

    }

    echo "<br>";

    foreach($result as $value){

    echo "序号:".$value["uid"]."<br>";

    echo "网站名称:".$value["name"]."<br>";

    echo "URL:".$value["url"]."<br>";

    echo "备注:".$value["content"]."<br>";

    }

    $mongo->close();

    ?>

    打开页面http://192.168.21.127/test.php如下图所示,说明数据库连接成功。


    至此,Linux下PHP安装配置MongoDB数据库连接扩展完成。

    扩展阅读:

    MongoDB数据库客户端工具

    MongoVUE,如下图所示:


     

  • 相关阅读:
    沙盒解决方案part1:沙盒解决方案的用途和好处
    session定义使用和丢失问题小结(20120101有更新&&20121026又更)
    普通pc检测维修的一个特例:检测\换板\电源\IDE信道\声卡驱动
    用户sa登录失败,该用户与可信sql server连接无关联
    trycatchfinally(C# 简单学习)
    按钮只能一次提交:ajax页面中调用ascx控件,如何设置ascx中按钮为false
    开始学习:Ajax的全称是:AsynchronousJavaScript+XML
    ajax学习的第一次亲密接触.(虽然还有一点模糊)
    .net2.0 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的
    创建可重复使用的控件ascx-一页只能有一个服务器端 Form 标记?
  • 原文地址:https://www.cnblogs.com/moqiang02/p/4061141.html
Copyright © 2011-2022 走看看