安装
首先下载
# wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.2.tgz
解压
# 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";
}