技术交流QQ群:①185473046   ②190706903   ③203744115   网站地图
登录

下次自动登录
现在的位置: 首页MongoDB>正文
Linux下PHP安装配置MongoDB 3.0.x数据库连接扩展
2015年09月25日 MongoDB 暂无评论 ⁄ 被围观 15,927次+

说明:

操作系统:CentOS 6.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.6.11.tgz

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

tar zxvf mongo-1.6.11.tgz #解压

cd mongo-1.6.11

/usr/local/php/bin/phpize

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

make #编译

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

系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容©版权所有,转载请注明出处及原文链

/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

在站点根目录下添加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

exit #退出

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

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

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

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

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

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

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

#添加普通账号

cd /usr/local/mongodb/bin/

./mongo #进入数据库

use osyunweidb

db.createUser({user:"osyunweidbuser",pwd:"123456",roles:[{role:"readWrite",db:"osyunweidb"}]}) #账号:osyunweidbuser 密码:123456 权限:只有该数据库osyunweidb的读写权限

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

exit #退出

/usr/local/mongodb/bin/mongo -u osyunweidbuser -p 123456 --authenticationDatabase osyunweidb #用刚才创建的普通账号进行登录

exit #退出

#添加管理员账号

cd /usr/local/mongodb/bin/

./mongo #进入数据库

show dbs #列出所有数据库

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

show collections

db.system.users.find()

db.createUser({user:"administrator",pwd:"123456",roles:[{role:"root",db:"admin"}]}) #添加管理员账号:administrator 密码:123456 权限:有数据库admin的所有操作权限

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

exit #退出

/usr/local/mongodb/bin/mongo -u administrator -p 123456 --authenticationDatabase admin #用刚才创建的普通账号进行登录

exit #退出

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

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

cd /usr/local/mongodb/bin/

./mongo

use osyunweidb #进入数据库

db.osyunweidb_table.drop() #删除表

db.dropDatabase() #删除数据库

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

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

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

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

auth=true #开启认证

:wq! #保存配置

vi /etc/rc.d/init.d/mongod #编辑

在启动参数db.shutdownServer()和db.stats()前面分别增加:

db.auth('administrator', '123456');

: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 -uadministrator -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 3.0.x数据库连接扩展完成。

扩展阅读:

MongoDB数据库客户端工具

NoSQL Manager for MongoDB Professional,如下图所示:

     

  系统运维技术交流QQ群:①185473046 系统运维技术交流□Ⅰ ②190706903 系统运维技术交流™Ⅱ ③203744115 系统运维技术交流™Ⅲ

给我留言

您必须 [ 登录 ] 才能发表留言!



Copyright© 2011-2024 系统运维 All rights reserved
版权声明:本站所有文章均为作者原创内容,如需转载,请注明出处及原文链接
陕ICP备11001040号-3