mongodb官方安装文档:https://www.mongodb.com/download-center
下面是centos环境安装mongodb3.2的步骤
1.
sudo rpm --import https://www.mongodb.org/static/pgp/server-3.2.asc
- sudo rpm --import https://www.mongodb.org/static/pgp/server-3.2.asc
sudo rpm --import https://www.mongodb.org/static/pgp/server-3.2.asc
touch /etc/yum.repos.d/mongodb-org-3.2.repo
- touch /etc/yum.repos.d/mongodb-org-3.2.repo
touch /etc/yum.repos.d/mongodb-org-3.2.repo
vim /etc/yum.repos.d/mongodb-org-3.2.repo 添加内容如下: [mongodb-org-3.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1
- vim /etc/yum.repos.d/mongodb-org-3.2.repo
- 添加内容如下:
- [mongodb-org-3.2]
- name=MongoDB Repository
- baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
- gpgcheck=1
- enabled=1
vim /etc/yum.repos.d/mongodb-org-3.2.repo 添加内容如下: [mongodb-org-3.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1
sudo yum install -y mongodb-org
- sudo yum install -y mongodb-org
sudo yum install -y mongodb-org
2. vim /etc/selinux/config
SELINUX=disabled
- SELINUX=disabled
SELINUX=disabled
3. mongodb 安装完成,可以启动mongodb了
sudo service mongod start
- sudo service mongod start
sudo service mongod start
当然,我上面配置的是一个简单的mongodb,没有配置复制集和分片
安全ip连接设置:vim /etc/mongod.conf
net:port: 27017bindIp: 127.0.0.1
- net:
- port: 27017
- bindIp: 127.0.0.1
net:port: 27017bindIp: 127.0.0.1
port代表开放的访问端口,bindIp这个是一个安全ip配置,允许那些ip连接mongodb,如果设置成bind_ip = 0.0.0.0,代表任意ip,建议只写连接的ip,如果是本机,就填写127.0.0.1即可。
这个是一个安全设置,线上系统一定要注意,iptables设置,只允许部分ip访问该端口,其他的pass掉,而且mongodb也要设置。
另外,对于线上系统,最好是使用账号密码的方式连接,进一步增强安全性。
4.安装mongodb的php扩展 ext-mongodb
注意:Fecshop 支持php7,需要安装ext-mongodb扩展,注意,这是两个扩展,ext-mongo扩展只能在php5中使用, ext-mongodb可以在php5和php7中使用,php7不能使用ext-mongo扩展。
4.1安装php的ext-mongodb扩展(兼容php7,fecshop需要安装ext-mongodb扩展,而不是ext-mongo扩展,ext-mongo只能在php5中使用,ext-mongodb可以在php5,php7,VVMH中使用,这里只安装ext-mongodb扩展)
https://pecl.php.net/package/mongodb下载mongodb的安装包,我的安装步骤如下:
wget https://pecl.php.net/get/mongodb-1.2.5.tgz tar zxvf mongodb-1.2.5.tgz cd mongodb-1.2.5 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install
- wget https://pecl.php.net/get/mongodb-1.2.5.tgz
- tar zxvf mongodb-1.2.5.tgz
- cd mongodb-1.2.5
- /usr/local/php/bin/phpize
- ./configure --with-php-config=/usr/local/php/bin/php-config
- make && make install
wget https://pecl.php.net/get/mongodb-1.2.5.tgz tar zxvf mongodb-1.2.5.tgz cd mongodb-1.2.5 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install
*php.ini中加入:
extension=mongodb.so
- extension=mongodb.so
extension=mongodb.so
重启php
对于mongodb的GUI,不要使用rockmongo了,现在有更好的工具:
你可以使用 RoboMongo
GUI工具连接mongodb,下载地址 , 因为mongodb默认设置无密码,只允许127.0.0.1登录, 因此,可以使用RoboMongo
的ssh方式登录,填写您的主机的ssh信息即可登录。(robomongo支持很多方式连接mongodb)
5.安装yii2-mongodb的扩展(如果您在安装fecshop,下面的步骤不需要操作)
插件地址:https://github.com/yiisoft/yii2-mongodb
在yii2的根目录下面运行:(已经安装composer)
composer require --prefer-dist yiisoft/yii2-mongodb
- composer require --prefer-dist yiisoft/yii2-mongodb
composer require --prefer-dist yiisoft/yii2-mongodb
完成后,mongodb的yii2扩展安装完成
6.配置
'mongodb' => ['class' => 'yii\mongodb\Connection',//'class' => 'backend\models\core\mongodb\Mconnection',# 有账户的配置//'dsn' => 'mongodb://demofancyecommerce:fdaVBDFS#fdfdtyg423DF23#$@localhost:27017/demofancyecommerce',# 无账户的配置'dsn' => 'mongodb://127.0.0.1:27017/market',//'dsn' => 'mongodb://10.10.10.252:10001/erp,mongodb://10.10.10.252:10002/erp,mongodb://10.10.10.252:10004/erp?replicaSet=terry&readPreference=primaryPreferred',],