CentOS上安裝Node.js和mongodb簡單介紹

antzone發表於2017-04-06

本章節介紹一下CentOS上安裝Node.js和mongodb筆記,本文講解了Python安裝、Node.js安裝、npm安裝、mongodb驅動安裝、mongodb資料庫操作測試程式碼等內容,需要的朋友可以參考下。

Node.js的安裝步驟算是比較簡單,沒有太多的彎路,主要參考文件:

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager

一.安裝Python:

根據參考文件說明,從原始碼編譯安裝Node.js需要python2.6或者以上,而通過yum install python.x86_64只能得到2.4.3,所以也要通過原始碼編譯安裝python。下面是命令:

[JavaScript] 純文字檢視 複製程式碼
# wget http://www.python.org/ftp/python/3.2.2/Python-3.2.2.tgz 
# tar xzvf Python-3.2.3.tgz  
# cd Python-3.2.2  
# ./configure  
# make  
# make test  
# make install

完成安裝後,執行python命令,可以進入python的命令列視窗。

二. 安裝Node.js:

按照文件上的說明通過git checkout程式碼一直不能成功,無論是使用git://github.com/joyent/node.git還是https://github.com/joyent/node.git。所以只能從github網上上下載後再編譯安裝,具體步驟如下:

[JavaScript] 純文字檢視 複製程式碼
# wget https://nodeload.github.com/joyent/node/tarball/master 
# mv master node.tar.gz  
# tar xzvf node.tar.gz  
# cd joyent-node-84d0b1b  
# ./configure --prefix=/opt/node/  
# make  
# make install  
# cd /usr/bin  
# ln -s /opt/node/bin/node node  
# ln -s /opt/node/bin/node-waf node-waf

三.安裝npm:

npm是用來安裝node.js庫的包管理器,安裝命令相當地簡單:

[JavaScript] 純文字檢視 複製程式碼
# curl http://npmjs.org/install.sh | sh

至此,安裝完畢。

在上面的內容中,只用簡單的幾步就完成了安裝。雖然看起來安裝都是成功的,但是實際如何就要求我們寫一個程式來進行驗證一下。由於最近也在學習MongoDB,所以就寫一個讀取MongoDB資料庫:計算actionId為772的日誌總數。

四.使用安裝mongodb驅動:

[JavaScript] 純文字檢視 複製程式碼
# npm install mongodb  
npm WARN mongodb@0.9.6-23 package.json: bugs['web'] should probably be bugs['url']  
npm WARN nodeunit@0.5.1 package.json: bugs['web'] should probably be bugs['url']  
   
> mongodb@0.9.6-23 install /root/develop/node/node_modules/mongodb  
> bash ./install.sh  
   
================================================================================  
=                                                                              =  
=  To install with C++ bson parser do <npm install mongodb --mongodb:native>   =  
=  the parser only works for node 0.4.X or lower                               =  
=                                                                              =  
================================================================================  
Not building native library for cygwin  
Using GNU make  
mongodb@0.9.6-23 ./node_modules/mongodb

根據提示執行:

[JavaScript] 純文字檢視 複製程式碼
# cd node_modules/mongodb  
# bash ./install.sh

注意:驅動必須安裝在專案所在的目錄下,並不是安裝一次所有專案都可以使用。

五.編寫測試程式碼mongo.js:

[JavaScript] 純文字檢視 複製程式碼
var http = require('http');  
var mongodb = require('mongodb');  
   
http.createServer(function(req, res){  
  res.writeHead(200, {'Content-Type': 'text/plain;charset=utf-8'});  
  mongodb.connect('mongodb://localhost:40202/log', function(err, conn){  
    conn.collection('log', function(err, coll){  
      coll.count({'action': 772}, function(err, count){  
        res.write('The total of action 772 is ' + count + ".\n");  
        res.end();  
      });  
    });  
  });  
}).listen(3000, '127.0.0.1');  
   
console.log('Server running at http://127.0.0.1:3000/');

啟動伺服器:

[JavaScript] 純文字檢視 複製程式碼
# node mongo.js

在瀏覽器訪問http://127.0.0.1:3000,可以看到如下輸出:

相關文章