`

Liunx搭建Mongodb开发环境

阅读更多
1.Liunx搭建Mongodb开发环境
【1】官网下载Mongodb安装包:mongodb-linux-x86_64-rhel70-3.6.4.tgz并上传到服务目录:/usr/local/mongodb
【2】进入到服务器:cd /usr/local/mongodb,并入输入tar -xvf 命令解压安装包:tar -xvf mongodb-linux-x86_64-rhel70-3.6.4.tgz
 
[root@bella-master ~]# cd /usr/local/mongodb
[root@bella-master mongodb]# tar -xvf mongodb-linux-x86_64-rhel70-3.6.4.tgz
mongodb-linux-x86_64-rhel70-3.6.4/README
mongodb-linux-x86_64-rhel70-3.6.4/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-rhel70-3.6.4/MPL-2
mongodb-linux-x86_64-rhel70-3.6.4/GNU-AGPL-3.0
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongodump
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongorestore
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongoexport
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongoimport
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongostat
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongotop
mongodb-linux-x86_64-rhel70-3.6.4/bin/bsondump
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongofiles
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongoreplay
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongoperf
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongod
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongos
mongodb-linux-x86_64-rhel70-3.6.4/bin/mongo
mongodb-linux-x86_64-rhel70-3.6.4/bin/install_compass
[root@bella-master mongodb]#
【3】解压之后对解压文件夹进行重命名:mv mongodb-linux-x86_64-rhel70-3.6.4 mongodb-3.6.4
[root@bella-master mongodb]# ll
total 97084
drwxr-xr-x 3 root root     4096 May 10 02:56 mongodb-linux-x86_64-rhel70-3.6.4
-rw-r--r-- 1 root root 99406523 May 10 02:51 mongodb-linux-x86_64-rhel70-3.6.4.tgz
[root@bella-master mongodb]# mv mongodb-linux-x86_64-rhel70-3.6.4 mongodb-3.6.4
[root@bella-master mongodb]# ll
total 97084
drwxr-xr-x 3 root root     4096 May 10 02:56 mongodb-3.6.4
-rw-r--r-- 1 root root 99406523 May 10 02:51 mongodb-linux-x86_64-rhel70-3.6.4.tgz
[root@bella-master mongodb]#
【4】在Mongodb安装目录创建repository文件夹,并且在其文件夹下创建conf,data,logs文件夹:
[root@bella-master mongodb]# mkdir repository
[root@bella-master mongodb]# ll
total 97088
drwxr-xr-x 3 root root     4096 May 10 02:56 mongodb-3.6.4
-rw-r--r-- 1 root root 99406523 May 10 02:51 mongodb-linux-x86_64-rhel70-3.6.4.tgz
drwxr-xr-x 2 root root     4096 May 10 03:03 repository
[root@bella-master mongodb]# cd repository/
[root@bella-master repository]# mkdir data
[root@bella-master repository]# mkdir logs
[root@bella-master repository]# cd data/
[root@bella-master data]# mkdir db
[root@bella-master data]#
【5】配置环境变量:vim /etc/profile
#Seetting MONGODB_HOME
export MONGODB_HOME=/usr/local/mongodb/mongodb-3.6.4
export PATH=${PATH}:${MONGODB_HOME}/bin
【6】在conf目录配置Mongodb环境:vim mongodb.conf
systemLog:
    verbosity: 0  
    quiet: false  
    path: /usr/local/mongodb/repository/logs/mongodb.log
    logAppend: false  
    destination: file  
processManagement:  
    fork: true  
    pidFilePath: /usr/local/mongodb/repository/pid/mongodb.pid
net:  
    bindIp: 127.0.0.1  
    port: 27017  
    maxIncomingConnections: 65536  
    wireObjectCheck: true  
    ipv6: false   
storage:  
    dbPath: /usr/local/mongodb/repository/data/db  
    indexBuildRetry: true  
    journal:  
        enabled: true  
    directoryPerDB: false  
    engine: mmapv1  
    syncPeriodSecs: 60   
    mmapv1:  
        quota:  
            enforced: false  
            maxFilesPerDB: 8  
        smallFiles: true      
        journal:  
            commitIntervalMs: 100  
    wiredTiger:  
        engineConfig:  
            cacheSizeGB: 8  
            journalCompressor: snappy  
            directoryForIndexes: false    
        collectionConfig:  
            blockCompressor: snappy  
        indexConfig:  
            prefixCompression: true  
operationProfiling:  
    slowOpThresholdMs: 100  
    mode: off
【7】输入:mongod -f mongodb.conf
[root@bella-master conf]# mongod -f mongodb.conf
2018-05-10T03:53:44.561+0800 W CONTROL  [main] Option: storage.mmapv1.journal.commitIntervalMs is deprecated. Please use storage.journal.commitIntervalMs instead.
about to fork child process, waiting until server is ready for connections.
forked process: 25472
child process started successfully, parent exiting
【8】输入:mongo
[root@bella-master conf]# mongo
MongoDB shell version v3.6.4
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.4
Server has startup warnings:
2018-05-10T03:53:44.610+0800 I STORAGE  [initandlisten]
2018-05-10T03:53:44.610+0800 I STORAGE  [initandlisten] ** WARNING: Readahead for /usr/local/mongodb/repository/data/db is set to 4096KB
2018-05-10T03:53:44.610+0800 I STORAGE  [initandlisten] **          We suggest setting it to 256KB (512 sectors) or less
2018-05-10T03:53:44.610+0800 I STORAGE  [initandlisten] **          http://dochub.mongodb.org/core/readahead
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten]
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten]
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten]
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten]
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten]
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 3895 processes, 65535 files. Number of processes should be at least 32767.5 : 0.5 times number of files.
2018-05-10T03:53:44.852+0800 I CONTROL  [initandlisten]
>
【9】开放端口:27017
[root@bella-master conf]# systemctl start firewalld.service
[root@bella-master conf]# firewall-cmd --list-ports
3306/tcp 6379/tcp 8080/tcp 8081/tcp 15672/tcp 8161/tcp 61616/tcp
[root@bella-master conf]# firewall-cmd --zone=public --add-port=27017/tcp --permanent
success
[root@bella-master conf]# firewall-cmd --reload
success
【10】阿里云新建安全组:27017/27017
【11】数据库授权配置:
【1】创建数据库登录用户名和密码:
   db.createUser({user:"root",pwd:"Bella20180420",roles:[{role:"userAdminAnyDatabase",db:"admin"}]});
2】数据角色:
   具体角色: 
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
【3】授权用户和密码:db.auth('root','Bella20180420');
【4】授权命令:
db.createUser({user:"root",pwd:"Bella20180420", roles:[{role:"readWrite", db:"admin"}]});
db.grantRolesToUser("root", [{role:"readWrite", db:"admin"}]);
db.grantRolesToUser("root", [{role:"dbAdminAnyDatabase", db:"admin"}]);
db.grantRolesToUser("root", [{role:"dbAdminAnyDatabase", db:"admin"}]);
db.grantRolesToUser("root", [{role:"readAnyDatabase", db:"admin"}]);
db.grantRolesToUser("root", [{role:"userAdmin", db:"admin"}]);
db.grantRolesToUser("root", [{role:"dbAdmin", db:"admin"}]);
db.grantRolesToUser("root", [{role:"dbAdmin", db:"admin"}]);
 
db.createUser({user:"root",pwd:"Bella20180420", roles:[{role:"readWrite", db:"config"}]});
db.grantRolesToUser("root", [{role:"readWrite", db:"config"}]);
db.grantRolesToUser("root", [{role:"dbAdminAnyDatabase", db:"config"}]);
db.grantRolesToUser("root", [{role:"dbAdminAnyDatabase", db:"config"}]);
db.grantRolesToUser("root", [{role:"readAnyDatabase", db:"config"}]);
db.grantRolesToUser("root", [{role:"userAdmin", db:"config"}]);
db.grantRolesToUser("root", [{role:"dbAdmin", db:"config"}]);
db.grantRolesToUser("root", [{role:"dbAdmin", db:"config"}]);
 
db.createUser({user:"root",pwd:"Bella20180420", roles:[{role:"readWrite", db:"local"}]});
db.grantRolesToUser("root", [{role:"readWrite", db:"local"}]);
db.grantRolesToUser("root", [{role:"dbAdminAnyDatabase", db:"local"}]);
db.grantRolesToUser("root", [{role:"dbAdminAnyDatabase", db:"local"}]);
db.grantRolesToUser("root", [{role:"readAnyDatabase", db:"local"}]);
db.grantRolesToUser("root", [{role:"userAdmin", db:"local"}]);
db.grantRolesToUser("root", [{role:"dbAdmin", db:"local"}]);

 

db.grantRolesToUser("root", [{role:"dbAdmin", db:"local"}]);
分享到:
评论

相关推荐

    MongoDB学习笔记—Linux下搭建MongoDB环境

    在Linux环境下搭建MongoDB,需要先下载MongoDB的Linux包,通常可以从MongoDB官方网站获取。在准备工作中,确保你有虚拟机(如Vmware)、Linux操作系统(例如CentOS)、Xshell和Xftp等工具。然后,通过XShell连接到...

    Linux_64位 MongoDB集群软件及详细步骤

    在Linux 64位环境下搭建MongoDB集群,能够实现数据的高可用性和可扩展性。以下是对"Linux_64位 MongoDB集群软件及详细步骤"的详细解析。 1. **MongoDB简介** MongoDB是一种NoSQL数据库,它采用键值对、文档、集合...

    搭建Nosql MongoDB高可用集群

    搭建MongoDB高可用集群的第一步通常是配置单实例MongoDB,这对于开发测试环境来说是足够的。通过在Linux环境下安装MongoDB,可以快速搭建一个基本的单实例环境。安装时,需要创建数据存储的文件夹,下载安装包,解压...

    onenote linux 开发环境

    在Linux环境下搭建OneNote开发环境是一项技术性较强的工作,它涉及到多个方面,包括对Linux操作系统的基本操作、开发工具的选择与配置、数据库的管理和OneNote的跨平台应用等。以下将详细解析这些知识点。 首先,...

    前端 Vue+Node+MongoDB高级全栈开发

    1. **搭建环境**:首先需要安装 Node.js 和 MongoDB。对于 Vue.js,可以通过 Vue CLI 工具快速创建项目。 2. **设计数据模型**:在 MongoDB 中定义数据模型,例如用户、博客等。 3. **API 设计**:使用 Node.js 创建...

    mongodb-linux-x86_64-4.0.13.tgz

    MongoDB是一款开源、高性能、无模式的分布式文档型数据库,被广泛应用于Web开发、数据分析、存储海量数据等场景。在Linux平台上,对于x86_64架构的系统,我们通常会下载对应的二进制包进行安装。"mongodb-linux-x86_...

    mongodb 4.0.5 我的第一次数据库集群(linux).zip

    首先,安装 MongoDB 需要在 Linux 环境下进行。通过 putty 远程连接到 Linux 服务器,这是常见的运维操作,putty 是一个常用的 SSH 客户端工具,允许用户通过终端窗口与远程主机进行交互。在这个过程中,你需要有...

    在win7中搭建Linux+PHP 开发环境

    在Windows 7操作系统中搭建一个Linux(以Arch Linux为例)+PHP的开发环境,主要涉及以下知识点: 1. **虚拟化技术**:由于要在Windows环境下运行Linux,通常会选择使用虚拟机软件,例如VirtualBox。虚拟机允许你在...

    mongodb+spring+maven环境搭建

    通过以上步骤,你已经成功地搭建了一个基于MongoDB、Spring MVC和Maven的开发环境。这个环境可以支持你快速开发和部署处理非结构化数据的应用程序。随着项目的进展,你还可以进一步探索Spring Data MongoDB的高级...

    MongoDB+Nginx配置

    本文将以CentOS为例,详细介绍如何搭建MongoDB+Nginx的服务环境,旨在帮助读者快速完成功能搭建。 #### 二、MongoDB安装配置 ##### 2.1 安装依赖包 首先确保系统已安装必要的依赖包。可以通过以下命令来安装: ``...

    mongodb-linux-x86_64-rhel70-v3.4-latest.tgz

    MongoDB 是一个高性能、开源、无模式的分布式文档数据库,被广泛...安装和配置MongoDB需要对Linux系统管理、数据库原理有一定了解,但通过遵循官方文档和上述步骤,可以顺利地在CentOS 7.0上搭建和管理MongoDB实例。

    mongodb集群搭建

    在开始搭建 MongoDB 集群之前,你需要确保你的环境中已经安装了 Linux 操作系统,因为提供的压缩包文件中包含了在 Linux 上安装 MongoDB 的相关资料。MongoDB 在 Linux 上的安装通常包括以下步骤: 1. 下载 MongoDB...

    redhat6.3+mongodb+openssl资源

    在RHEL 6.3环境下搭建MongoDB并利用OpenSSL进行加密通信,是保证企业级数据库安全的关键步骤。了解这些技术的详细知识,能够帮助管理员更好地管理和维护他们的数据库系统。通过遵循上述指南,你可以成功地在RHEL 6.3...

    mongodb使用文档集

    2. 易于开发:JSON格式的数据模型和动态模式适应快速迭代的开发环境。 3. 分布式特性:天然支持分布式架构,适合大数据和云计算环境。 4. 强大的查询能力:MQL提供了类似于SQL的查询功能,同时具备文档级别的操作。 ...

    windows下Node.js开发环境 搭建

    ### Windows 下 Node.js 开发环境搭建详述 在Windows环境下构建一个完整的Node.js开发环境,不仅需要安装Node.js本身,还需要一系列辅助工具来提升开发效率、数据库管理以及跨平台调试等能力。根据提供的文件信息,...

    C#开发的Mongodb集群自动部署工具

    本项目是用C#语言开发的一个MongoDB集群自动部署工具,它的主要目标是简化在Linux服务器上部署和管理MongoDB副本集的过程。C#是一种通用的、面向对象的编程语言,通常用于Windows平台,但通过.NET框架和开源库,也...

    MongoDB权威指南:MongoDB:The Definitive Guide

    首先,书中会详细介绍MongoDB的安装和配置过程,无论是Windows、Linux还是macOS平台,都有详尽的步骤指导,帮助读者快速搭建开发环境。同时,还会涉及MongoDB的命令行工具,如mongo shell的使用,以及如何通过可视化...

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...

Global site tag (gtag.js) - Google Analytics