搭建LNAMP環境(六)- PHP7源碼安裝MongoDB和MongoDB拓展

來源:互聯網
上載者:User

標籤:amp   _id   and   exec   lte   wms   exe   啟用   mongodb   

上一篇:搭建LNAMP環境(五)- PHP7源碼安裝Redis和Redis拓展

一、安裝MongoDB

1.建立mongodb使用者組和使用者

groupadd mongodbuseradd -r -g mongodb -s /sbin/nologin -M mongodb

2.下載mongodb源碼包,並將源碼包放到/usr/local/src/目錄下
下載頁面:https://www.mongodb.com/download-center?jmp=nav
這裡用的是 mongodb-linux-x86_64-rhel62-3.2.10.tgz
:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.10.tgz

3.進入src/目錄

cd /usr/local/src/

 4.解壓源碼包

tar -zxf mongodb-linux-x86_64-rhel62-3.2.10.tgz

5.建立mongodb檔案目錄

mkdir -p /usr/local/mongodb/datamkdir -p /usr/local/mongodb/confmkdir -p /var/run/mongodbmkdir -p /var/log/mongodb

6.將檔案複製到mongodb/目錄

cp -R /usr/local/src/mongodb-linux-x86_64-rhel62-3.2.10/. /usr/local/mongodb

 7.建立mongodb設定檔mongodb.conf

vim /usr/local/mongodb/conf/mongodb.conf

8.添加下面內容,儲存退出

dbpath=/usr/local/mongodb/data #資料目錄存在位置logpath=/var/log/mongodb/mongodb.log #記錄檔存放目錄logappend=true #寫日誌的模式:設定為true為追加fork=true  #以精靈的方式啟用,即在後台運行verbose=truevvvv=true #啟動verbose冗長資訊,它的層級有 vv~vvvvv,v越多層級越高,在記錄檔中記錄的資訊越詳細maxConns=20000 #預設值:取決於系統(即的ulimit和檔案描述符)限制。MongoDB中不會限制其自身的串連pidfilepath=/var/run/mongodb/mongodb.piddirectoryperdb=true #資料目錄存放模式,如果直接修改原來的資料會不見了profile=0 #資料庫分析等級設定,0 關 2 開。包括所有操作。 1 開。僅包括慢操作slowms=200 #記錄profile分析的慢查詢的時間,預設是100毫秒quiet=truesyncdelay=60 #刷寫資料到日誌的頻率,通過fsync操作資料。預設60秒#port=27017  #連接埠#bind_ip = 10.1.146.163 #IP#auth=true  #開始認證#nohttpinterface=false #28017 連接埠開啟的服務。預設false,支援#notablescan=false#不禁止表掃描操作#cpu=true #設定為true會強制mongodb每4s報告cpu利用率和io等待,把日誌資訊寫到標準輸出或記錄檔

9.修改mongodb目錄許可權

chown -R mongodb:mongodb /usr/local/mongodbchown -R mongodb:mongodb /var/run/mongodbchown -R mongodb:mongodb /var/log/mongodb

10.將mongodb命令加入環境變數,修改profile檔案

vim /etc/profile

11.修改為下面內容,儲存退出

PATH=/usr/local/mysql/bin:/usr/local/php/bin:/usr/local/redis/bin:/usr/local/mongodb/bin:$PATH

12.使/etc/profile裡的配置立即生效

source /etc/profile

13.將mongodb服務指令碼加入到init.d/目錄,建立mongod檔案

vim /etc/init.d/mongod

14.加入下面內容,儲存退出

#!/bin/sh  # chkconfig: 2345 93 18# description:MongoDB  #預設參數設定#mongodb 家目錄MONGODB_HOME=/usr/local/mongodb#mongodb 啟動命令MONGODB_BIN=$MONGODB_HOME/bin/mongod#mongodb 設定檔MONGODB_CONF=$MONGODB_HOME/conf/mongodb.confMONGODB_PID=/var/run/mongodb/mongodb.pid#最大檔案開啟數量限制SYSTEM_MAXFD=65535#mongodb 名字  MONGODB_NAME="mongodb". /etc/rc.d/init.d/functionsif [ ! -f $MONGODB_BIN ]then    echo "$MONGODB_NAME startup: $MONGODB_BIN not exists! "      exitfistart(){    ulimit -HSn $SYSTEM_MAXFD    $MONGODB_BIN --config="$MONGODB_CONF"      ret=$?    if [ $ret -eq 0 ]; then        action $"Starting $MONGODB_NAME: " /bin/true    else        action $"Starting $MONGODB_NAME: " /bin/false    fi}stop(){    PID=$(ps aux |grep "$MONGODB_NAME" |grep "$MONGODB_CONF" |grep -v grep |wc -l)     if [[ $PID -eq 0  ]];then        action $"Stopping $MONGODB_NAME: " /bin/false        exit    fi    kill -HUP `cat $MONGODB_PID`    ret=$?    if [ $ret -eq 0 ]; then        action $"Stopping $MONGODB_NAME: " /bin/true        rm -f $MONGODB_PID    else           action $"Stopping $MONGODB_NAME: " /bin/false    fi}restart(){    stop    sleep 2    start}case "$1" in    start)        start        ;;    stop)        stop        ;;    status)    status $prog        ;;    restart)        restart        ;;    *)        echo $"Usage: $0 {start|stop|status|restart}"esac
View Code

15.為mongod添加可執行許可權

chmod +x /etc/init.d/mongod

16.將mongodb加入系統服務

chkconfig --add mongod

17.設定開機啟動

chkconfig mongod on

18.啟動mongodb

service mongod start
二、PHP7安裝MongoDB拓展

1.下載php7 mongodb拓展包,並將源碼包放到/usr/local/src/目錄下

下載頁面:http://pecl.php.net/package/mongodb
這裡用的是 mongodb-1.1.9.tgz
:http://pecl.php.net/get/mongodb-1.1.9.tgz

2.進入src/目錄

cd /usr/local/src/

3.解壓拓展包

tar -zxf mongodb-1.1.9.tgz

4.進入mongodb拓展目錄,編譯安裝拓展

cd mongodb-1.1.9/phpize./configure --with-php-config=/usr/local/php/bin/php-configmake && make install

5.修改php.ini檔案

vim /usr/local/php/etc/php.ini

6.添加mongodb.so擴充配置,儲存退出

extension=mongodb.so;

7.重啟Apache或php-fpm

service httpd restartservice php-fpm restart

8.在web目錄下添加php檔案,如/usr/local/apache/htdocs/mongodb.php 或 /usr/local/nginx/html/mongodb.php

<?php$manager = new MongoDB\Driver\Manager("mongodb://127.0.0.1:27017");$bulk = new MongoDB\Driver\BulkWrite;$bulk->insert([‘x‘ => 1, ‘class‘=>‘toefl‘, ‘num‘ => ‘18‘]);$bulk->insert([‘x‘ => 2, ‘class‘=>‘ielts‘, ‘num‘ => ‘26‘]);$bulk->insert([‘x‘ => 3, ‘class‘=>‘sat‘, ‘num‘ => ‘35‘]);$manager->executeBulkWrite(‘test.log‘, $bulk);$filter = [‘x‘ => [‘$gt‘ => 1]];$options = [    ‘projection‘ => [‘_id‘ => 0],    ‘sort‘ => [‘x‘ => -1],];$query = new MongoDB\Driver\Query($filter, $options);$cursor = $manager->executeQuery(‘test.log‘, $query);foreach ($cursor as $document) {    print_r($document);}

訪問URL,如:http://192.168.8.9/mongodb.php
頁面顯示正常,則配置成功

MongoDB安裝完畢!

搭建LNAMP環境(六)- PHP7源碼安裝MongoDB和MongoDB拓展

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.