8 - Готовим CentOS 7. Установка и настройка стабильной версии MongoDB
Создадим файл
nano -w /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=0
enabled=1Установим
yum -y install mongodb-org
semanage port -a -t mongod_port_t -p tcp 27017Запустим
systemctl start mongodПроверим
mongo
> db.version()
> exitПредупреждение 1
WARNING: Readahead for /var/lib/mongo is set to 4096KB
Предупреждение 2
WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'
Предупреждение 3
WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
Предупреждение 4
WARNING: soft rlimits too low. rlimits set to 4096 processes, 64000 files.
Сейчас это будем исправлять
nano -w /etc/init.d/mongodПеред Starting mongod вставляем
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fiПерезапускаем
systemctl restart mongod
systemctl daemon-reloaddf -h
blockdev --report
blockdev --setra 256 /dev/mapper/centos-rootДобавляем в автозагрузку
nano -w /etc/rc.localblockdev --setra 256 /dev/mapper/centos-rootПерезагружаем
systemctl restart mongodПочитать про предпочтительные лимиты для монго можно здесь https://docs.mongodb.org/manual/reference/ulimit/
ls /etc/security/limits.d/nano -w /etc/security/limits.d/20-nproc.conf проставляем как просит монго 64000
Перезапустим
systemctl restart mongodПроверим
systemctl status mongodДобавим в автозагрузку
systemctl enable mongod
mongo
exitнастройки /etc/mongod.conf
доставим поддержку mongo в нашем php
yum install php70-php-pecl-mongodb -yперезепустим php
systemctl restart php70-php-fpmПроверяем что расширение установлено и доступно
php70 -m | grep -i mongodbВ ответ получить должны
mongodb
Создаем файл
nano -w /var/www/test.dev/mongo.phpи пишем в него
<?php $m = new MongoDB\Driver\Manager("mongodb://localhost:27017");Выполняем, если ошибки нет, то все хорошо.