乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      主流NOSQL數(shù)據(jù)庫之MongoDB快速入門

       深海問道 2017-05-24

        【IT168 專稿】目前,NOSQL在業(yè)界正發(fā)展的如火如荼,其中Mongodb是其中十分優(yōu)秀的一員,MongoDB是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫,由C++語言編寫,旨在為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。在本系列教程中,將分三部分指導(dǎo)對(duì)Mongodb的學(xué)習(xí),在第一部分中,將簡單介紹Mongodb的安裝和基本使用方法,在第二部分中,將介紹Java對(duì)Mongodb的編程操作,在第三部分中,將介紹Spring對(duì)Mongodb的編程操作。

        Mongodb在Windows上的安裝

        首先,我們到Mongodb的官方網(wǎng)站http://www./downloads下載,下載的版本目前是1.8.1,下載后,解壓到文件夾,比如C:\mongodb-win32-1.8.1。接下來,我們可以觀察下,該文件夾下有如下文件:

      主流NOSQL數(shù)據(jù)庫之MongoDB快速入門

        可以看到,mongodb可謂十分簡單,只有10個(gè)文件。接下來,我們創(chuàng)建一個(gè)數(shù)據(jù)庫文件存放的目錄,這里設(shè)定為c:\mymongodb。然后可以在命令行方式下啟動(dòng)mongodb了,運(yùn)行如下命令:

      C:\mongodb-win32-1.8.1\bin>mongod --dbpath "c:\mymongodb"
      當(dāng)出現(xiàn)如下提示信息時(shí),即代表已經(jīng)成功啟動(dòng)了mongodb

      Fri Apr 29 17:15:34 [initandlisten] MongoDB starting :
      pid=5280 port=27017 dbpath=c:\mymongodb 32-bi
      ...
      Fri Apr 29 17:15:34 [initandlisten] waiting for connections on port 27017
      Fri Apr 29 17:15:34 [websvr] web admin interface listening on port 28017

         在上面的信息中,我們注意到,mongodb在端口27017進(jìn)行了監(jiān)聽來自客戶端的連接,而在28017端口,則啟用了web界面的管理工具,因此我們可以通過http://localhost:28017進(jìn)行訪問,可以看到如下的界面:

      主流NOSQL數(shù)據(jù)庫之MongoDB快速入門
      ▲點(diǎn)擊查看大圖

        接下來,我們學(xué)習(xí)下,如何將mongodb安裝成windows 中的服務(wù),首先我們?cè)趍ongodb下,可以通過—help選項(xiàng),查看相關(guān)的幫助指令,如下:

         C:\MongoDB\bin>mongod --help

      Windows Service Control Manager options:
        --install                install mongodb service
        --remove              remove mongodb service
        --reinstall             reinstall mongodb service (equivilant of mongod
                                   --remove followed by mongod --install)
        --serviceName arg           windows service name
        --serviceDisplayName arg windows service display name
        --serviceDescription arg    windows service description
        --serviceUser arg              user name service executes as
        --servicePassword arg       password used to authenticate serviceUser

         可以看到,--install和—remove兩個(gè)參數(shù)正是我們需要的。因此,將mongodb安裝成windows服務(wù)的命令如下:

        mongod --dbpath "c:\mymongodb" --logpath "c:\mymongodb\logs.txt" --install --serviceName "MongoDB"

         上面的命令行中,用—dbpath參數(shù)指出了數(shù)據(jù)庫的目錄,--logpath則指出了日志存放的目錄,而—serviceName參數(shù)則指出了,命名安裝的服務(wù)名為MongoDB,運(yùn)行后有如下提示:

      all output going to: c:\mymongodb\logs.txt
      Creating service MongoDB.
      Service creation successful.
      Service can be started from the command line via 'net start "MongoDB"'.

         并且可以在windows的控制面板中的服務(wù)中,看到該服務(wù)。而卸載服務(wù)的命令也很簡單,如下:

      mongod --remove --serviceName "MongoDB"

        在Ubuntu上安裝Mongodb

        Ubuntu是目前十分受歡迎的UNIX系統(tǒng)的之一,本文將介紹如何在Ubuntu上進(jìn)行安裝mongodb。步驟如下:

        1) 首先將如下的語句添加到/etc/apt/sources.list文件的最末,以便將包含最新版本的mongodb發(fā)行包進(jìn)行下載deb http://downloads-distro./repo/ubuntu-upstart dist 10gen,修改后的sources.list文件如下:

        #...content omitted ...

      ## This software is not part of Ubuntu, but is offered by third-party
      ## developers who want to ship their latest software.
      deb http://extras.ubuntu.com/ubuntu natty main
      deb-src http://extras.ubuntu.com/ubuntu natty main

      #mongo repo ###############new line
      deb http://downloads-distro./repo/ubuntu-upstart dist 10gen

         2) 更新包

        sudo apt-get update

         3) 增加GPG KEY

        10gen 包需要GPG KEY,因此需要導(dǎo)入:

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

         4)安裝 mongodb-10gen

        一切準(zhǔn)備好后,就可以安裝了,命令如下:

        sudo apt-get install mongodb-10gen

         5) 修改相關(guān)設(shè)置

        在ubuntu下,啟動(dòng)mongodb的腳本文件在/etc/init/mongo和/etc/init.d/mongo中可以找到,同時(shí),會(huì)把mongodb下的所有文件復(fù)制到/usr/bin目錄下。而主要的配置文件mongodb.conf則在/etc/mongodb.conf下,可以根據(jù)需要進(jìn)行一些修改,如下:

      # mongodb.conf

      # 存儲(chǔ)數(shù)據(jù)文件的位置

      # Note: if you run mongodb as a non-root user (recommended) you may
      # need to create and set permissions for this directory manually,
      # e.g., if the parent directory isn't mutable by the mongodb user.
      dbpath=/var/lib/mongodb

      #存放log的地方
      logpath=/var/log/mongodb/mongodb.log

      logappend=true

      #port = 27017
      #......

         6) 驗(yàn)證安裝

        為了驗(yàn)證安裝,只需要在客戶端嘗試連接就可以了,如下:

      $ mongo
      MongoDB shell version: 1.8.1
      connecting to: test
      >

       


        創(chuàng)建Mongodb數(shù)據(jù)庫

        由于Mongodb不是關(guān)系型數(shù)據(jù)庫文件,實(shí)際上,它并不存在傳統(tǒng)關(guān)系型數(shù)據(jù)庫中的所謂“數(shù)據(jù)庫”的概念,但不用擔(dān)心,當(dāng)你第一次新增數(shù)據(jù)時(shí),mongodb就會(huì)以collection集合的形式進(jìn)行保存和新建,而不需要你手工去新建立。下面是例子:

        1)列出當(dāng)前的數(shù)據(jù)庫

      MongoDB shell version: 1.8.1
      connecting to: test
      > show dbs
      admin   0.03125GB
      local   (empty)

         可以使用show dbs 來列出當(dāng)前有多少個(gè)數(shù)據(jù)庫,上面看到的是有兩個(gè),分別是admin和local。

        2) 定義新的數(shù)據(jù)庫名

        我們通過使用“use new-databasename”的語法去使用一個(gè)新的數(shù)據(jù)庫,注意,即使你的數(shù)據(jù)庫還沒建立起來,依然可以這樣使用,因?yàn)閙ongodb會(huì)在真正插入了數(shù)據(jù)后,才會(huì)真正建立起來。

      > use mkyongdb
      switched to db mkyongdb
      > show dbs
      admin   0.03125GB
      local   (empty)

         注意,在use mkyongdb后,mkyongdb實(shí)際上還沒真正建立起來,只是表明目前是在使用mkyongdb了。

        3)保存數(shù)據(jù)

        定義一個(gè)collection,名為“users”,然后插入數(shù)據(jù),如下:

      > db.users.save( {username:"mkyong"} )
      > db.users.find()
      { "_id" : ObjectId("4dbac7bfea37068bd0987573"), "username" : "mkyong" }
      >
      > show dbs
      admin   0.03125GB
      local   (empty)
      mkyongdb        0.03125GB

         可以看到,用db.users.find()可以找出已插入的數(shù)據(jù)。這個(gè)時(shí)候,名為“users”的collection已經(jīng)建立起來了,同時(shí),數(shù)據(jù)庫mkyongdb也建立起來了。

        修復(fù)mongodb數(shù)據(jù)庫

        當(dāng)mongodb發(fā)生問題時(shí),就要修復(fù)其數(shù)據(jù)庫,比如遇到以下的信息:

      **************
      old lock file: \data\db\mongod.lock.  probably means unclean shutdown
      recommend removing file and running --repair
      see: http://dochub./core/repair for more information
      *************
      Mon May 09 12:37:43 [initandlisten] exception in initAndListen std::exception: old lock file,
      terminating
      Mon May 09 12:37:43 dbexit:
      Mon May 09 12:37:43 [initandlisten] shutdown: going to close listening sockets...
      Mon May 09 12:37:43 [initandlisten] shutdown: going to flush diaglog...
      Mon May 09 12:37:43 [initandlisten] shutdown: going to close sockets...
      Mon May 09 12:37:43 [initandlisten] shutdown: waiting for fs preallocator...
      Mon May 09 12:37:43 [initandlisten] shutdown: closing all files...
      Mon May 09 12:37:43 closeAllFiles() finished
      Mon May 09 12:37:43 dbexit: really exiting now

         那么這個(gè)時(shí)候,可以采用如下方法去修復(fù)它:

      找到\data\db\mongod.lock這個(gè)文件,刪除它
      采用mongod –repair命令進(jìn)行修復(fù)
        Mon May 09 12:42:57 [initandlisten] db version v1.8.1, pdfile version 4.5
      //......
      Mon May 09 12:42:57 [initandlisten] shutdown: going to close listening sockets...
      Mon May 09 12:42:57 [initandlisten] shutdown: going to flush diaglog...
      Mon May 09 12:42:57 [initandlisten] shutdown: going to close sockets...
      Mon May 09 12:42:57 [initandlisten] shutdown: waiting for fs preallocator...
      Mon May 09 12:42:57 [initandlisten] shutdown: closing all files...
      Mon May 09 12:42:57 closeAllFiles() finished
      Mon May 09 12:42:57 [initandlisten] shutdown: removing fs lock...
      Mon May 09 12:42:57 dbexit: really exiting now

         小結(jié)

        在本文中,簡單為大家介紹了Mongodb在widnows下和Linux下的安裝和一些基本操作,在下一篇教程中,將學(xué)習(xí)如何使用Java對(duì)Mongodb進(jìn)行操作,敬請(qǐng)期待。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多