ubuntuphpmongodb的簡單介紹

本文目錄一覽:

ubuntu 15.10 mongodb.service 起不起來解決方案

使用了這個命令關閉mongodb,使得重啟的時候,重啟不了! 需要把mongodb.lock 這個文件刪除掉才能啟動! 而且還會偶爾發生數據丟失的事情,需要repair(./mongod –repair)一下才行! 看了一下文檔,關閉mongodb有兩種: 1.使用客戶端mondo $ ./mongo db.shutdownServer() 2. 直接 kill -2 PID,” or kill -15 PID

如何在ubuntu查看mongodb安裝路徑

運行「locate

mongo」命令查看系統默認把mongo裝到了哪裡,這裡主要關注三個東西.

(1)一個是名為「mongod」的程序的位置(他相當於mongo數據庫的Server,需要一直在後台運行,我的路徑:/usr/bin/mongod);

(2)一個是mongo

數據庫log日誌文件的位置(log日誌文件要查看到具體的文件名,具體用法在後面有介紹,我的路徑:/var/log/mongodb/mongodb.log);

(3)一個是mongo的log日誌的位置(我的路徑:/var/log/mongodb/mongodb.log)。

如何為PHP安裝mongodb的擴展

1.首先下載php的mongodb擴展

從這個網址下載mongodb的擴展源碼包

1

wget

2.解壓安裝包

1

tar zxf mongo-1.4.5.tgz

3.進入解壓目錄,運行phpize進行安裝準備

1

2

cd mongo-1.4.5

/usr/local/php/bin/phpize

4.安裝編譯

上述命令運行完後,在目錄下就生成了configure文件

使用./configure命令進行安裝配置,然後使用make make install進行編譯安裝,命令如下:

1

2

./configure –with-php-config=/usr/local/php/bin/php-config

make make install

5.編輯php.ini增加下述一行添加mongodb擴展

1

extension=mongo.so

重啟web容器,然後查看phpinfo,看到mongodb的內容就說明安裝成功。

怎麼樣在Ubuntu系統中安裝MongoDB及其啟動命令mongod

解壓縮即可執行

tar zxvf mongodb-linux-x86_64-2.0.2.tgz

cd /usr/mongodb-linux-x86_64-2.0.2/bin

但是在運行前,需要創建mongodb需要的存放數據和日誌的目錄:

sudo mkdir -p /data/db/journal

sudo chmod -R 777 /data/db/

啟動mongodb server

./mongod -journal -maxConns=2400 -rest

-journal 代表要寫日誌,-maxConns=2400代表mongodb 可以接受2400個tcp連接,-rest代表可以允許客戶端通過rest API訪問mongdb server.

還可以使用參數—quiet啟動可以指定安靜模式減少記錄的項目數,注意使用該參數必須要同時指定日誌路徑,比如:

—quiet —logpath /data/db/journal/mongdb.log

修改系統允許的最大連接數

上面的最大連接數目的限制原因是Linux系統默認一個進程最大文件打開數目為1024,用ulimit -a 命令檢查,可以看到下面這行:

open files (-n) 1024

修改/etc/security/limits.conf 配置文件。

使用命令:sudo gedit /etc/security/limits.conf

在文件中增加

* soft nofile 3000

* hard nofile 20000

root soft nofile 3000

root hard nofile 20000

* 表示該配置對所有用戶均有效,root用戶要特別加兩行。

硬限制通常是根據系統硬件資源狀況(主要是系統內存)計算出來的系統最多可同時打開的文件數量,軟限制是在這個基礎上進一步的限制。因此軟限制數目要低於硬限制。

nofile表示 max number of open files

重新啟動計算機,然後再用ulimit -a 命令查看:

open files (-n) 3000

已經生效了。現在再啟動mongodb server,問題解決

設置開機啟動

在/etc/init.d/目錄下新建腳本文件mongodb

#!/bin/sh

### BEGIN INIT INFO

# Provides: mongodb

# Required-Start:

# Required-Stop:

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: mongodb

# Description: mongo db server

### END INIT INFO

. /lib/lsb/init-functions

PROGRAM=/usr/mongodb-linux-x86_64-2.0.2/bin/mongod

MONGOPID=`ps -ef | grep ‘mongod’ | grep -v grep | awk ‘{print $2}’`

test -x $PROGRAM || exit 0

case “$1” in

start)

ulimit -n 3000

log_begin_msg “Starting MongoDB server”

$PROGRAM –fork –quiet -journal -maxConns=2400 -rest –logpath /data/db/journal/mongdb.log

log_end_msg 0

;;

stop)

log_begin_msg “Stopping MongoDB server”

if [ ! -z “$MONGOPID” ]; then

kill -15 $MONGOPID

fi

log_end_msg 0

;;

status)

;;

*)

log_success_msg “Usage: /etc/init.d/mongodb {start|stop|status}”

exit 1

esac

exit 0

請注意,用sudo chmod +x /etc/init.d/mongodb 命令允許該腳本可被執行

接着運行下面的命令註冊開機腳本:

update-rc.d mongodb defaults

Adding system startup for /etc/init.d/mongodb …

/etc/rc0.d/K20mongodb – ../init.d/mongodb

/etc/rc1.d/K20mongodb – ../init.d/mongodb

/etc/rc6.d/K20mongodb – ../init.d/mongodb

/etc/rc2.d/S20mongodb – ../init.d/mongodb

/etc/rc3.d/S20mongodb – ../init.d/mongodb

/etc/rc4.d/S20mongodb – ../init.d/mongodb

/etc/rc5.d/S20mongodb – ../init.d/mongodb

你也可以通過update-rc.d -f mongodb remove 刪除

重新啟動,通過ps -def | grep mongod 可以查看到自啟動的服務進程,然後可以通過下面的命令關閉/啟動服務

sudo service mongodb stop

sudo service mongodb start

客戶端登錄服務器

啟動日誌如上,服務端啟動如上,現在我們在另外一個終端測試服務器是否正常。

進入/usr/local/mongodb-linux-x86_64-2.0.2/bin,執行./mongo

出現

MongoDB shell version: 2.0.2

connecting to: test

執行

db.foo.save({1 : 「Hello world」})

然後查找

db.foo.find();

看到

{ “_id” : ObjectId(“4e4b395986738efa2d0718b9”), “1” : “hello world” }

執行到這裡恭喜你,成功安裝好了mongodb

也可以通過下面這種方式連接遠程的mongodb server,默認端口為27017,比如

./mongo 192.168.30.25

創建數據庫

如果沒有mydb數據庫的話,在客戶端中使用命令:

use mydb

將創建mydb數據庫,而且當前數據庫切換為mydb.

此時show dbs不顯示該數據庫名稱。使用db.stats()命令檢查當前數據庫狀態。

標準檢查流程

1.首先檢查 ulimit -a

查看open files (-n) 是否為設置的值

2.

ps -def | grep mongod

查看該服務是否啟動

3.

cd /data/db/journal/

cat mongdb.log

查看服務器是否正確

4.進入

看服務器是否啟動正常

5.進入/usr/mongodb-linux-x86_64-2.0.2/bin,執行./mongo

看看是否能夠登錄

安裝PHP MongoDB擴展

sudo apt-get install php5-dev php5-cli php-pear

sudo pecl install mongo

在php.ini中加入

extension=mongo.so

Mongodb啟動命令mongod參數說明

mongod的主要參數有:

–quiet # 安靜輸出

–port arg # 指定服務端口號,默認端口27017

–bind_ip arg # 綁定服務IP,若綁定127.0.0.1,則只能本機訪問,不指定默認本地所有IP

–logpath arg # 指定MongoDB日誌文件,注意是指定文件不是目錄

–logappend # 使用追加的方式寫日誌

–pidfilepath arg # PID File 的完整路徑,如果沒有設置,則沒有PID文件

–keyFile arg # 集群的私鑰的完整路徑,只對於Replica Set 架構有效

–unixSocketPrefix arg # UNIX域套接字替代目錄,(默認為 /tmp)

–fork # 以守護進程的方式運行MongoDB,創建服務器進程

–auth # 啟用驗證

–cpu # 定期顯示CPU的CPU利用率和iowait

–dbpath arg # 指定數據庫路徑

–diaglog arg # diaglog選項 0=off 1=W 2=R 3=both 7=W+some reads

–directoryperdb # 設置每個數據庫將被保存在一個單獨的目錄

–journal # 啟用日誌選項,MongoDB的數據操作將會寫入到journal文件夾的文件里

–journalOptions arg # 啟用日誌診斷選項

–ipv6 # 啟用IPv6選項

–jsonp # 允許JSONP形式通過HTTP訪問(有安全影響)

–maxConns arg # 最大同時連接數 默認2000

–noauth # 不啟用驗證

–nohttpinterface # 關閉http接口,默認關閉27018端口訪問

–noprealloc # 禁用數據文件預分配(往往影響性能)

–noscripting # 禁用腳本引擎

–notablescan # 不允許表掃描

–nounixsocket # 禁用Unix套接字監聽

–nssize arg (=16) # 設置信數據庫.ns文件大小(MB)

–objcheck # 在收到客戶數據,檢查的有效性,

–profile arg # 檔案參數 0=off 1=slow, 2=all

–quota # 限制每個數據庫的文件數,設置默認為8

–quotaFiles arg # number of files allower per db, requires –quota

–rest # 開啟簡單的rest API

–repair # 修復所有數據庫run repair on all dbs

–repairpath arg # 修復庫生成的文件的目錄,默認為目錄名稱dbpath

–slowms arg (=100) # value of slow for profile and console log

–smallfiles # 使用較小的默認文件

–syncdelay arg (=60) # 數據寫入磁盤的時間秒數(0=never,不推薦)

–sysinfo # 打印一些診斷系統信息

–upgrade # 如果需要升級數據庫 * Replicaton 參數

–fastsync # 從一個dbpath里啟用從庫複製服務,該dbpath的數據庫是主庫的快照,可用於快速啟用同步

–autoresync # 如果從庫與主庫同步數據差得多,自動重新同步,

–oplogSize arg # 設置oplog的大小(MB) * 主/從參數

–master # 主庫模式

–slave # 從庫模式

–source arg # 從庫 端口號

–only arg # 指定單一的數據庫複製

–slavedelay arg # 設置從庫同步主庫的延遲時間 * Replica set(副本集)選項:

–replSet arg # 設置副本集名稱 * Sharding(分片)選項

–configsvr # 聲明這是一個集群的config服務,默認端口27019,默認目錄/data/configdb

–shardsvr # 聲明這是一個集群的分片,默認端口27018

–noMoveParanoia # 關閉偏執為moveChunk數據保存

# 上述參數都可以寫入 mongod.conf 配置文檔里例如:

dbpath = /data/mongodb

logpath = /data/mongodb/mongodb.log

logappend = true

port = 27017

fork = true

auth = true

e.g:

代碼如下:

./mongod -shardsvr -replSet shard1 -port 16161 -dbpath /data/mongodb/data/shard1a -oplogSize 100 -logpath /data/mongodb/logs/shard1a.log -logappend -fork -rest

如何在Ubuntu 14.04上備份,恢復及遷移MongoDB數據庫

1、冷備份與恢復——創建數據文件副本(前提要停止MongoDB服務器)直接copy

MongoDB所數據都存儲數據目錄默認/data/db/(WindowsC:\data\db\)啟MongoDB用–dbpath指定我自設置數據存儲目錄

備份MongoDB數據:要簡單創建數據存儲目錄副本直接copy份

恢復MongoDB數據:MongoDB啟用–dbpath指定數據存儲目錄副本位置

服務器運行情況直接copy風險能copy數據已經遭破壞種式創建數據目錄副本需要關閉MongoDB服務器前提數據目錄存儲關閉刻數據快照服務器重新啟前複製目錄作備份

,

ubuntu mongodb怎麼用

1.安裝最新的MongoDB

a.修改Ubuntu下載包路徑:doc.codesky.net

sudo vim /etc/apt/sources.list

sudo vim /etc/apt/sources.list

在最後一行加入:

代碼

deb dist 10gen

deb dist 10gen b.加入GPG Key:

代碼

sudo apt-key adv –keyserver keyserver.ubuntu.com –recv 7F0CEB10

sudo apt-key adv –keyserver keyserver.ubuntu.com –recv 7F0CEB10 c.執行自動安裝命令:

先更新安裝包路徑

代碼

sudo apt-get update

sudo apt-get update 執行自動安裝

Java代碼

sudo apt-get install mongodb-10gen

sudo apt-get install mongodb-10gen

2.自動安裝MongoDB

Java代碼

sudo apt-get install mongodb

sudo apt-get install mongodb 安裝完成後我們發現安裝的是1.4版本,很out了,現在MongoDB都已經:MongoDB shell version: 2.0.1

1.6版本後MongoDB才推出副本集,分片功能。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/293482.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-26 13:14
下一篇 2024-12-26 13:14

相關推薦

  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • Python海龜代碼簡單畫圖

    本文將介紹如何使用Python的海龜庫進行簡單畫圖,並提供相關示例代碼。 一、基礎用法 使用Python的海龜庫,我們可以控制一個小海龜在窗口中移動,並利用它的「畫筆」在窗口中繪製…

    編程 2025-04-29
  • Python櫻花樹代碼簡單

    本文將對Python櫻花樹代碼進行詳細的闡述和講解,幫助讀者更好地理解該代碼的實現方法。 一、簡介 櫻花樹是一種圖形效果,它的實現方法比較簡單。Python中可以通過turtle這…

    編程 2025-04-28
  • Python大神作品:讓編程變得更加簡單

    Python作為一種高級的解釋性編程語言,一直被廣泛地運用於各個領域,從Web開發、遊戲開發到人工智能,Python都扮演着重要的角色。Python的代碼簡潔明了,易於閱讀和維護,…

    編程 2025-04-28
  • 用Python實現簡單爬蟲程序

    在當今時代,互聯網上的信息量是爆炸式增長的,其中很多信息可以被利用。對於數據分析、數據挖掘或者其他一些需要大量數據的任務,我們可以使用爬蟲技術從各個網站獲取需要的信息。而Pytho…

    編程 2025-04-28
  • 如何製作一個簡單的換裝遊戲

    本文將從以下幾個方面,為大家介紹如何製作一個簡單的換裝遊戲: 1. 遊戲需求和界面設計 2. 使用HTML、CSS和JavaScript開發遊戲 3. 實現遊戲的基本功能:拖拽交互…

    編程 2025-04-27
  • Guava Limiter——限流器的簡單易用

    本文將從多個維度對Guava Limiter進行詳細闡述,介紹其定義、使用方法、工作原理和案例應用等方面,並給出完整的代碼示例,希望能夠幫助讀者更好地了解和使用該庫。 一、定義 G…

    編程 2025-04-27
  • 2的32次方-1:一個看似簡單卻又複雜的數字

    對於計算機領域的人來說,2的32次方-1(也就是十進制下的4294967295)這個數字並不陌生。它經常被用來表示IPv4地址或者無符號32位整數的最大值。但實際上,這個數字卻包含…

    編程 2025-04-27
  • 製作一個簡單的管理系統的成本及實現

    想要製作一個簡單的管理系統,需要進行技術選型、開發、測試等過程,那麼這個過程會花費多少錢呢?我們將從多個方面來闡述製作一個簡單的管理系統的成本及實現。 一、技術選型 當我們開始思考…

    編程 2025-04-27

發表回復

登錄後才能評論