您的位置:首页 > 数据库 > Mongodb

linux\windows上mongodb的安装与配置,以及开启php扩展

2017-05-31 12:24 866 查看

安装

首先下载

# wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.2.tgz[/code] 

解压

# tar -zxvf mongodb-linux-i686-1.8.2.tgz


移动到自己定义的目录

# mv mongodb-linux-i686-1.8.2 /usr/local/mongodb


创建数据库和日志文件夹

# mkdir /usr/local/mongodb/data
# touch /usr/local/mongodb/logs


配置

–logpath 日志文件路径

–dbpath 数据库文件路径

–logappend 日志文件末尾添加

–port 启用端口号

–fork 在后台运行

–auth 是否需要验证权限登录(用户名和密码)

安装好了之后,是能够使用的,但是要开2个会话窗口,一个窗口启动mongodb服务,命令:

# /usr/local/server/mongodb/bin/mongod
--dbpath=/usr/server/mongodb/data
--logpath=/usr/local/mongodb/logs
--logappend
--port=27017 --fork


,启动后,你要再开启一个窗口管理shell,才能敲各种命令(创建文档,删除文档,查找等),开启命令:

./usr/local/mongodb/bin/mongo


我们可以把mongodb做成一个服务,就是能用systemctl 这个命令去开启关闭。

首先在/usr/local/mongodb/bin目录下新建一个文件:

vim mongodb.conf


说明:

dbpath:数据库文件路径

logpath:日志文件路径

logappend:是否追加日志

port:端口

fork:是否以后台进程启动

auth:是否启动授权认证

nohttpinterface:是否支持HTTP形式访问,

在文件mongodb.conf里写入:

dbpath=/usr/mongodb/data/db/
logpath=/usr/mongodb/data/log/mongodb.log
logappend=true
port=27017
fork=true
nohttpinterface=true
auth=true


编写自定义服务:

在/lib/systemd/system/目录下新建mongodb.service(后缀一定不能少)文件,内容如下:

Description=mongodb
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target


上面文件因为使用了mongodb.conf,所以要给mongodb.conf加权限,防止使用不 了:

chmod 754 mongodb.conf


这样就能用systemctl去启动关闭mongodb了:

#启动服务
systemctl start mongodb.service
#关闭服务
systemctl stop mongodb.service
#开机启动
systemctl enable mongodb.service


windows安装mongodb并且开启php扩展

1 先去官网下载mongodb的windows版本.

2 然后解压后是个文件夹

3 随便在哪个地方创建一个目录,用来存放数据库的位置,例如这里我创建的是:C:\mongodb\data\db

4 启动mongodb:

4.1 win+r 打开cmd窗口,进入到mongodb的安装目录的bin文件夹下.

4.2 执行命令:mongod.exe –dbpath C:\mongodb\data\db (注:后面的路径就是你第3部配置的数据库路径)

4.3 保持4.2的命令窗口不动,然后再开启一个黑窗口,执行:mongo .这样就可以操作mongodb了.

5 开启php的mongodb扩展:

5.1 先查看phpinfo(),看3个参数:

compiler :看看是vc9还是vc11还是vc14等等,

Thread Safety: 看看是不是enabled,如果是就是ts(线程安全),不是就是nts(非线程安全)

Architecture:看是x86(32位)还是x64(64位).

PHP Extension Build: 看看是ts还是nts,vc9还是vc11

5.2 去网站下载对应的扩展包:http://windows.php.net/downloads/pecl/releases/mongo/

5.3 解压后.把解压包里面的扩展文件php_mongo.dll丢到php的ext文件夹下.

5.4 因为安装mongo扩展需要依赖libsasl.dll(该目录一般是php的根目录), 所以要在系统环境变量中加入该目录(system32下).

5.5 打开php.ini文件,增加一行:extension=php_mongo.dll

5.6 重启apache服务器,看看phpinfo()里面有没有开启mongodb扩展.

注:如果没开启,检查下,是不是mongodb的扩展包下的版本不对.

PHP使用mongod

$m = new MongoClient();    // 连接到mongodb
$db = $m->test;            // 选择一个数据库
$collection = $db->user; // 选择集合
$document = array(
"name" => "jiang",
"sex" => 1
);
$collection->insert($document);
$res = $collection->find();
foreach ($res as $document) {
echo $document["name"] . "\n";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mongodb 数据库