php使用 mongodb的过程

1 篇文章 0 订阅

项目中要使用mongodb,记录下采坑记录。

先说下本人的环境(安装不讲环境就是耍流氓)

环境:

     PHP版本:7.0

     系统环境:ubantu14.04

一、mongodb的安装。

     按照网上的方法,安装了mongodb3.4,具体安装教程,由于之前是写在新浪的。忘了原文出处,此处请原作者谅解

1、导入包管理系统使用的公钥

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

2、为MongoDB创建一个列表文件

Ubuntu 12.04

echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

Ubuntu 14.04

echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

Ubuntu 16.04

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

3、重新加载本地包数据库

sudo apt-get update

4、安装最新的稳定版本的MongoDB

sudo apt-get install -y mongodb-org

5、启动MongoDB

sudo service mongod start

6、关闭MongoDB

sudo service mongod stop

7、重启MongoDB

sudo service mongod restart

8、卸载MongoDB

  1. sudo service mongod stop

  2.  
  3. sudo apt-get purge mongodb-org*

  4.  
  5. sudo rm -r /var/log/mongodb

  6. sudo rm -r /var/lib/mongodb

9、配置文件

  1. dbpath

  2. /var/lib/mongodb

  3. logpath

  4. /var/log/mongodb

  5. config path

  6. /var/etc/mongo.conf

这里有个小坑:就是安装完后使用mongo命令时,提示如下:

2018-08-02T17:14:00.218+0800 I STORAGE  [initandlisten] 
2018-08-02T17:14:00.218+0800 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-08-02T17:14:00.218+0800 I STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-08-02T17:14:00.522+0800 I CONTROL  [initandlisten] 
2018-08-02T17:14:00.522+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-08-02T17:14:00.522+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2018-08-02T17:14:00.522+0800 I CONTROL  [initandlisten] 
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] 
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] 
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-08-02T17:14:00.523+0800 I CONTROL  [initandlisten] 
 

这个问题是由于没有初始化造成的,按照以下步骤解决:

https://docs.mongodb.com/guides/server/install/

 

二、php的扩展的安装

 这里有坑,按照网上的安装了最新的mongodb扩展后,在php-fpm中的php.ini里添加了扩展后,

phpinfo也看到了mongodb扩展,提示如下:

PHP warning

include(MongoClient.php): failed to open stream: No such file or directory

但是按照目前网上的都使用不了,后来才发现是新的mongdb使用方式已经改变:

具体使用参考如下:

http://php.net/manual/zh/mongodb-driver-manager.construct.php

也就是不能再使用 MongoClient的方式来连接了,而是

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在Homestead中安装MongoDB需要进行以下步骤: 1. 在Homestead.yaml文件中添加配置mongodb: true,并指定IP地址、内存和CPU等参数。\[1\] 2. 使用命令vagrant reload --provision重新加载配置,以便安装MongoDB组件。\[1\] 3. 从Homestead v4.0.4开始,可以直接在Homestead.yml文件中配置mongodb:true,然后在运行vagrant up时自动安装MongoDB,无需手动安装。\[2\] 4. 如果在安装过程中出现gnupg未安装的提示,可以使用命令sudo apt-get install gnupg安装该组件,并按照官方文档的指引进行操作。\[3\] 5. 安装完成后,可以使用sudo service mongod start命令启动MongoDB服务,并使用sudo service mongod status检查服务状态。\[3\] 6. 如果需要安装PHPMongoDB扩展,可以按照官方文档的指引进行操作。\[3\] 总结起来,安装Homestead的MongoDB需要在配置文件中添加mongodb: true,并重新加载配置。然后按照官方文档的指引进行安装和配置。 #### 引用[.reference_title] - *1* *3* [Homestead环境、虚拟机环境等安装Mongodb,以及源的报错处理,以及安装phpMongodb扩展](https://blog.csdn.net/qq_37035946/article/details/103390962)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Homestead中配置MongoDB](https://blog.csdn.net/u010295877/article/details/80473342)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值