zoukankan      html  css  js  c++  java
  • ubuntu16.04 下Mongo数据库搭建

    一 数据库安装

    1.下载自己需要的数据库版本和系统,下载地址:https://www.mongodb.com/download-center/community 。

    本文下载的为ubuntu 16.04 4.0的数据库。包名mongodb-linux-x86_64-ubuntu1604-4.0.1.tgz

    2.解压

    tar -zxvf ./mongodb-linux-x86_64-ubuntu1604-4.0.1.tgz  

    解压后 会出现一个  mongodb-linux-x86_64-ubuntu1604-4.0.1 的文件夹,此文件夹内有mongo的可执行程序等。可以重命名也可以用此文件夹名。

    3.将文件夹移到想要的位置  没有则创建

    mv -r ./mongodb-linux-x86_64-ubuntu1604-4.0.1 /usr/local/mongodb

    4.bin目录下为可执行文件

    5.创建用于存放数据和日志文件的文件夹,并修改其权限增加读写权限 目录可以db路径可以自己定义,可以选择空间大的区。此处在当前路径的data下

    cd /usr/local/mongodb
    sudo mkdir -p data/db
    sudo chmod -r 777 data/db sudo mkdir logs cd logs touch mongodb.log

    6. 创建配置文件到/etc 下

    sudo vim /etc/mongodb.conf

    在里边添加如下内容:

    #数据文件

    dbpath=/usr/local/mongodb/data/db

    ## 日志文件
    logpath=/usr/local/mongodb/log/mongodb.log

    ## 错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不
    是从新创建一个新文件
    logappend=true

    ## 启用日志文件,默认启用
    journal=true

    ## 这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
    quiet=true

    ## 端口号 默认为27017
    port=27017

    ##
    bind_ip=0.0.0.0

    # 是否用密码
    auth=false
                

    wq 保存退出即可

    7.添加开机自启动

    sudo vim /etc/rc.local

    添加一行:  /usr/local/mongodb/bin/mongod --config /etc/mongodb.conf --wiredTigerCacheSizeGB 4 &
    保存退出即可

    二 数据库添加用户名密码

    cd /usr/local/mongodb/bin

    ./mongo

    > use admin
    switched to db admin
    > show dbs;
    admin       0.000GB
    alleyesweb  0.339GB
    config      0.000GB
    local       0.000GB
    mydb1       0.000GB
    > db.createUser({user:"root",pwd:"root123",roles:[{role:"userAdminAnyDatabase",db:"admin"},{role:"dbOwner",db:"alleyesweb"},{role:"dbAdminAnyDatabase",db:"admin"}]})
    Successfully added user: {
        "user" : "root",
        "roles" : [
            {
                "role" : "userAdminAnyDatabase",
                "db" : "admin"
            },
            {
                "role" : "dbOwner",
                "db" : "alleyesweb"
            },
            {
                "role" : "dbAdminAnyDatabase",
                "db" : "admin"
            }
        ]
    }

    给admin 和alleyesweb 添加了 用户名和密码分别为root  和root123的权限。

    修改配置文件

    # 是否用密码
    auth=true 

    重启数据库生效。

    内建角色

    • Read:允许用户读取指定数据库
    • readWrite:允许用户读写指定数据库
    • dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
    • userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
    • clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
    • readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
    • readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
    • userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
    • dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
    • root:只在admin数据库中可用。超级账号,超级权限
    • 数据库用户角色(Database User Roles)

        read:授予User只读数据的权限
        readWrite:授予User读写数据的权限

    • 数据库管理角色(Database Administration Roles):

        dbAdmin:在当前dB中执行管理操作
        dbOwner:在当前DB中执行任意操作
        userAdmin:在当前DB中管理User

    • 备份和还原角色(Backup and Restoration Roles):

        backup
        restore

    • 跨库角色(All-Database Roles):

        readAnyDatabase:授予在所有数据库上读取数据的权限
        readWriteAnyDatabase:授予在所有数据库上读写数据的权限
        userAdminAnyDatabase:授予在所有数据库上管理User的权限
        dbAdminAnyDatabase:授予管理所有数据库的权限

    • 集群管理角色(Cluster Administration Roles):

        clusterAdmin:授予管理集群的最高权限
        clusterManager:授予管理和监控集群的权限,A user with this role can access the config and local databases, which are used in sharding and replication, respectively.
        clusterMonitor:授予监控集群的权限,对监控工具具有readonly的权限
        hostManager:管理Server

    三 改数据库访问网络,只可本机操作和可以远程操作

    配置文件里

    ##
    bind_ip=0.0.0.0    // 此代表所有ip的机器可以访问,将此句前边的加#注释掉后  只可本机访问数据库

    修改后 重启数据库生效。

     
  • 相关阅读:
    团队管理-每日站会,代码审查,结对编程
    Linux awk命令详解
    【Vegas原创】Excel中,日期和时间用&连接后格式不正确的解决方法
    SQLServer 数据库变成单个用户后无法访问问题的解决方法
    【Vegas原创】查询SQL Server更改记录的语句
    【Vegas原创】SQL Server 只安装客户端的方法
    IT? 挨踢
    64位Windows无法打开会声会影X5的解决方法
    小型IT部门建设之我见
    要熟练掌握的七个人生工具
  • 原文地址:https://www.cnblogs.com/wenhuakulv1989/p/10881861.html
Copyright © 2011-2022 走看看