• Linux平台安装MongoDB及使用Docker安装MongoDB


    一、Linux平台安装MongoDB

    MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包。

    下载地址:https://www.mongodb.com/download-center#community

    1.下载安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。

    curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz    # 下载
    tar -zxvf mongodb-linux-x86_64-3.0.6.tgz                                   # 解压
    
    mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb                         # 将解压包拷贝到指定目录
    

    2、创建mongodb安装文件夹、数据文件夹和日志文件(mongodb、data、logs);

    # cd /

    # mkdir /usr/local/mongodb

    # mkdir /usr/local/mongodb/data

    # touch /usr/local/mongodb/logs

    3、将mongodb移动到/usr/local/mongdb文件夹下并重命名为mongodb2.0.4

    # mv mongodb-linux-x86_64-2.0.4 /usr/local/mongodb mongodb2.0.4

    ​4、设置开机自启动,将mongodb启动项目追加入rc.local保证mongodb在服务器开机时启动;

    # echo "/usr/local/mongodb/mongodb2.0.4/bin/mongod 

     --dbpath=/usr/local/mongodb/data 

    --logpath=/usr/local/mongodb/logs 

     --logappend  --auth --port=27017" >> /etc/rc.local

    5、启动mongodb,cd到mongodb2.0.4目录下的bin文件夹启动Mongodb

    # ./mongod --dbpath=/usr/local/mongodb/data 

    --logpath=/usr/local/mongodb/logs 

    --logappend --port=27017 --fork

    如下图:

    参数解释: 

    --dbpath 数据库路径(数据文件)

    --logpath 日志文件路径

    --logappend 日志文件末尾添加

    --port 启用端口号

    --fork 在后台运行

    注:若启动报异常error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory,执行以下命令:

    for 32bit

    [root@localhost bin]# ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so.6

    [root@localhost bin]# ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so.6

    for 64bit

    [root@localhost bin]# ln -sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6

    [root@localhost bin]# ln -sf /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6

    6、进入数据库的CLI管理界面,cd到mongodb目录下的bin文件夹,执行命令./mongo

    运行如下:

    [root@localhost ~]# cd /usr/local

    [root@localhost local]# cd mongodb/mongodb2.0.4/bin

    [root@localhost bin]# ./mongo

    MongoDB shell version: 2.0.4

    connecting to: test

    > use test

    switched to db test

    如下图:

    二、使用Docker安装MongoDB

    查找Docker Hub上的mongo镜像

    runoob@runoob:~/mongo$ docker search mongo
    NAME                              DESCRIPTION                      STARS     OFFICIAL   AUTOMATED
    mongo                             MongoDB document databases ...   1989      [OK]       
    mongo-express                     Web-based MongoDB admin int...   22        [OK]       
    mvertes/alpine-mongo              light MongoDB container          19                   [OK]
    mongooseim/mongooseim-docker      MongooseIM server the lates...   9                    [OK]
    torusware/speedus-mongo           Always updated official Mon...   9                    [OK]
    jacksoncage/mongo                 Instant MongoDB sharded cluster  6                    [OK]
    mongoclient/mongoclient           Official docker image for M...   4                    [OK]
    jadsonlourenco/mongo-rocks        Percona Mongodb with Rocksd...   4                    [OK]
    asteris/apache-php-mongo          Apache2.4 + PHP + Mongo + m...   2                    [OK]
    19hz/mongo-container              Mongodb replicaset for coreos    1                    [OK]
    nitra/mongo                       Mongo3 centos7                   1                    [OK]
    ackee/mongo                       MongoDB with fixed Bluemix p...  1                    [OK]
    kobotoolbox/mongo                 https://github.com/kobotoolb...  1                    [OK]
    valtlfelipe/mongo                 Docker Image based on the la...  1                    [OK]

    这里我们拉取官方的镜像,标签为3.2

    runoob@runoob:~/mongo$ docker pull mongo:3.2

    等待下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为mongo,标签为3.2的镜像

    使用mongo镜像

    运行容器

    runoob@runoob:~/mongo$ docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo:3.2
    cda8830cad5fe35e9c4aed037bbd5434b69b19bf2075c8626911e6ebb08cad51
    runoob@runoob:~/mongo$

    命令说明:

    -p 27017:27017 :将容器的27017 端口映射到主机的27017 端口

    -v $PWD/db:/data/db :将主机中当前目录下的db挂载到容器的/data/db,作为mongo数据存储目录

    查看容器启动情况

    runoob@runoob:~/mongo$ docker ps 
    CONTAINER ID   IMAGE        COMMAND                   ...    PORTS                      NAMES
    cda8830cad5f   mongo:3.2    "/entrypoint.sh mongo"    ...    0.0.0.0:27017->27017/tcp   suspicious_goodall

    使用mongo镜像执行mongo 命令连接到刚启动的容器,主机IP为172.17.0.1

    runoob@runoob:~/mongo$ docker run -it mongo:3.2 mongo --host 172.17.0.1
    MongoDB shell version: 3.2.7
    connecting to: 172.17.0.1:27017/test
    Welcome to the MongoDB shell.
    For interactive help, type "help".
    For more comprehensive documentation, see
      http://docs.mongodb.org/
    Questions? Try the support group
      http://groups.google.com/group/mongodb-user
    >
  • 相关阅读:
    idea 提示不能打开cmd.exe,idea 编译项目 CreateProcess error=740, 请求的操作需要提升 --->如何设置cmd以管理员身份运行
    Maven之--安装nexus 私服
    如何生成effective-pom
    maven之---资源过滤 在java/main/resourse/*.xml ,*.properties引用maven属性${db.username}
    使用JavaMailSender 发送邮件
    spring 读取account-service中的值
    spring web.xml 标签<param-name>contextConfigLocation</param-name>
    application.properties案例
    解决mybatis-plus的updateById报错的问题
    postman百度云下载
  • 原文地址:https://www.cnblogs.com/xuwendong/p/9003635.html
Copyright © 2020-2023  润新知