mongodb主從環境搭建

來源:互聯網
上載者:User

標籤:keepalived mongodb mongo mongodb主從

      MongoDB是一個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫的。他支援的資料結構非常鬆散,是類似json的bson格式,因此可以儲存比較複雜的資料類型。Mongo最大的特點是他支援的查詢語言非常強大,其文法有點類似於物件導向的查詢語言,幾乎可以實作類別似關聯式資料庫單表查詢的絕大部分功能,而且還支援對資料建立索引。

    它的特點是高效能、易部署、易使用,儲存資料非常方便。主要功能特性有:

    *面向集合儲存,易儲存物件類型的資料。

    *模式自由。

    *支援動態查詢。

    *支援完全索引,包含內部對象。

    *支援查詢。

    *支援複製和故障恢複。

    *使用高效的位元據儲存,包括大型物件(如視頻等)。

    *自動處理片段,以支援雲端運算層次的擴充性。

    *支援RUBY,PYTHON,JAVA,C++,PHP,C#等多種語言。

    *檔案儲存體格式為BSON(一種JSON的擴充)。

    *可通過網路訪問。----------------以上內容摘自好搜百科

一、下載keepalived和mongodb源碼包

    http://yunpan.cn/cLnMGSt7v2X4s  訪問密碼 956a

二、安裝keepalived

         [[email protected] ~]yum -y install gccopenssl-devel popt popt-devel libnl libnl-devel                          kernel-devel                        #所需依賴包                       

         [[email protected]~]# tar -zxvf keepalived-1.2.7.tar.gz

         [[email protected]~]# cd keepalived-1.2.7.tar.gz

         [[email protected]]# ./configure         #安裝三部曲

         [[email protected]]# make

         [[email protected]]# make install

三、拷貝設定檔和啟動指令碼    

         [[email protected]~]# cp /usr/local/etc/rc.d/init.d/keepalived  /etc/rc.d/init.d/

         [[email protected]~]# cp /usr/local/etc/sysconfig/keepalived  /etc/sysconfig

         [[email protected]~]# mkdir /etc/keepalived

         [[email protected]~]# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/

         [[email protected]~]# cp /usr/local/sbin/keepalived /usr/sbin/

四、添加開機啟動

         [[email protected]~]#chkconfig --add keepalived          #添加服務

                       [[email protected]~]#chkconfig keepalived on             #開機啟動

五、設定檔

         [[email protected]~]#cat /etc/keepalived/keepalived.conf

        

         !Configuration File for keepalived

         vrrp_instanceMG_1 {

                state MASTER                                  #mongodb2為BACKUP

                interfaceeth 0

                virtual_router_id 55

                priority 100                                  #優先順序,備份為90

                advert_int 1

                #nopreempt                                     #不搶佔資源

                authentication {

                    auth_type PASS

                    auth_pass 1111

                }     

                virtual_ipaddress {

            192.168.0.10                                        #虛擬IP

             }

         }


六、[[email protected] ~]# service keepalived start

         正在啟動 keepalived:                                      [確定]

七、以上配置,在從伺服器上除了設定檔的微小差別,其它內容完全相同!

八、命令ip a可查看虛擬IP,成功則顯示虛擬IP。

九、安裝mongodb

         [[email protected] ~]# tar -zxvfmongodb-linux-x86_64-2.4.9.tgz  -C  /usr/local/

         [[email protected] local]# mv mongodb-linux-x86_64-2.4.9/ mongodb

         [[email protected] local]# cd mongodb/

         [[email protected] mongodb]# mkdir db

         [[email protected] mongodb]# mkdir logs

         [[email protected] mongodb]# cd bin

         [[email protected] bin]# cat mongodb.conf

                   dbpath=/usr/local/mongodb/db                    #資料庫目錄

                   logpath=/usr/local/mongodb/logs/mongodb.log     #日誌

                   port=27017                                      #連接埠

                   fork=true

                   nohttpinterface=true

                   master=true                                     #主伺服器

                   auth=true                                       #開啟使用者驗證

十、從伺服器設定檔

        [[email protected] bin]# cat mongodb.conf

                   dbpath=/usr/local/mongodb/db

                   logpath=/usr/local/mongodb/logs/mongodb.log

                   port=27017

                   fork=true

                   nohttpinterface=true

                   slave=true                                       #從伺服器

                   source=192.168.0.100:27017                       #從主伺服器複製

                   autoresync=true                                  #自動同步

                   auth=true

十一、啟動mongodb(兩台都啟動)---命令路徑可添加在bashrc中,如果不會,請百度,百度不到,請找你老大。

    [[email protected] bin]/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf

十二、報錯資訊:當查看從伺服器mongodb日誌時顯示以下資訊,如果你在配置過程當中沒有認證使用者,主從搭建成功,請忽略報錯,如果是其他報錯,請百度。

650) this.width=650;" src="http://s1.51cto.com/wyfs02/M02/76/50/wKiom1ZO3pex_LgIAAB80hnPgco952.png" title="QQ圖片20151120164901.png" alt="wKiom1ZO3pex_LgIAAB80hnPgco952.png" />

十三、幾經波折,找到原因,對兩台進行使用者認證。

       [[email protected] bin]/usr/local/mongodb/bin/mongo          #進入資料庫

        >use local

        >db.addUser(‘reql‘,‘reql‘)

      當使用者認證之後,從伺服器連上主伺服器,顯示OK,但在OK後顯示errmsg:unauthorized,此為未授權

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/76/4F/wKioL1ZO4SzwK7goAABGU1pJbzQ174.png" title="QQ圖片20151120165647.png" alt="wKioL1ZO4SzwK7goAABGU1pJbzQ174.png" />

十四、經分析,普通使用者認證許可權小,所以再進行管理員賬戶認證。(只在主伺服器上認證)注意:在設定檔中的auth=true請注釋掉,並重啟mongodb

     [[email protected] bin]/usr/local/mongodb/bin/mongo          #進入資料庫 

        >use admin    

        >db.addUser(‘tank‘,‘test‘)

        >db.auth(‘tank‘,‘test‘)                               #資料庫認證,必須做




本文出自 “系統營運之道” 部落格,謝絕轉載!

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.