centos上的mongodb的安装以及php如何扩展mongodb
admin
2023-04-11 22:23:36
0

下面要使用curl,如果你没有安装curl,要先安装curl

ubuntu中安装curl:
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl
curl -O -L https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.4.tgz
tar -zxvf mongodb-linux-x86_64-3.0.4.tgz 
cd mongodb-linux-x86_64-3.0.4
mkdir -p /usr/local/mongodb
cp -r bin /usr/local/mongodb
ln -s /usr/local/mongodb/bin/mongod /usr/local/sbin/mongod
mkdir -p /usr/local/mongodb/data
vi /usr/local/mongodb/config.conf

 要编辑的内容如下

{

dbpath=/usr/local/mongodb/data

logpath=/usr/local/mongodb/mongdb.log

port=27017

fork=true

logappend=true

}

mongod -f /usr/local/mongodb/config.conf //启动mongodb

让php支持mongodb

首先可在http://pecl.php.net/package/mongo下载相应的扩展包,下面是我的安装操作

wget -c http://pecl.php.net/get/mongo-1.6.10.tgz
tar -zxvf mongo-1.6.10.tgz
cd mongo-1.6.10
/usr/local/php/bin/phpize
./configure --enable-mongo=share --with-php-config=/usr/local/php/bin/php-config
make
make install
vi /etc/php.ini

在其中添加

[MongoDB]

extension=mongo.so

再重新启动php-fpm即可





MongoDB 3.0 用户创建

一般没有admin
所以可以执行下面的命令
创建admin

mongo

use admin

db.createUser(
...   {
...     user: "nodebs",
...     pwd: "123qwe",
...     roles: [ { role: "dbAdmin", db: "nodebb" } ]
...   }
... )

user:用户名

pwd:密码

roles:指定用户的角色,可以用一个空数组给新用户设定空角色;在roles字段,可以指定内置角色和用户定义的角色。role里的角色可以选:
Built-In Roles(内置角色):
    1. 数据库用户角色:read、readWrite;
    2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
    3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
    4. 备份恢复角色:backup、restore;
    5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
    6. 超级用户角色:root  
    // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
    7. 内部角色:__system


Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限



db.createUser(
...  {
...    user: "zhoujinyi",
...    pwd: "zhoujinyi",
...    roles: [
...       { role: "root", db: "admin" }      #超级root帐号  可以对集合进行任意操作
...    ]
...  }
... )

相关内容

热门资讯

徐巧芯剖析赖清德:最怕自己丢掉... 海峡导报综合报道 大罢免投票一周年纪念活动26日举行,台北市长蒋万安出席并怒轰,民进党一年过后仍没有...
中国红十字会总会紧急向广东调拨... 记者从中国红十字会总会了解到,针对台风“红霞”给广东造成的灾情,中国红十字会总会启动四级应急响应,紧...
这些少年,正被“毒蛋”围猎 李梦抽了几口电子烟,吐出了白色的烟雾,有一股浓烈的水果香味。随后,她看着自己握电子烟的手,跟身边人说...
蒋万安号召“倒阁”,卢秀燕认为... 海峡导报综合报道 台北市长蒋万安27日抛出震撼议题,表示多名民代向他提议推动“倒阁”,要求台行政机构...
特朗普将在白宫会见两位重要客人 俄乌战争仍未结束,美伊冲突又有升级风险。在此背景下,美国总统特朗普将在白宫接见乌克兰和以色列领导人。...
新租客打扫卧室柜子上掉落4万元... 近日,莲前西路某小区内,张倩签下一套房子的租赁合同。当天上午,她带着12岁的大女儿周馨怡和11岁的小...
六部门通告:禁止涉军队退役报废... 关于禁止涉军队退役报废装备销售活动的通告近年来,部分经营者在线上线下公开销售涉及我军退役报废装备(指...
九寨沟景区发生泥石流,部分道路... 7月26日,九寨沟风景名胜区管理局发布泥石流灾害通报:2026年7月26日15时50分,九寨沟景区局...
空调26度不凉是什么原因 从空调内部元器件来说,不凉的原因有可能是温度传感器出现故障了,也有可能是空调压缩机或者铜管出现问题,...
鲸鸿动能携手香港国际机场、鸿蒙...   2026 年 7 月 25 日,十余位鸿蒙车主组成的车队从珠海出发,经港珠澳大桥通关抵达香港国际...