(离线环境下)Linux安装mongoDB数据库记录

我这里针对的是linux不能联网的环境下一系列安装教程,如果你的平台可以联网,那下载mongoDB、安装相关依赖可以直接apt-get

1.下载mongoDB安装包:mongodb-linux-x86_64-ubuntu2204-8.0.5.tgz

https://www.mongodb.com/try/download/community

2.解压文件并创建必要的目录

# 创建安装目录

# 创建安装目录
mkdir -p /usr/local/mongodb
sudo tar -zxvf mongodb-linux-x86_64-ubuntu2204-7.0.5.tgz -C /usr/local/mongodb

#添加环境变量
echo 'export PATH=/usr/local/mongodb/mongodb-linux-x86_64-ubuntu2204-8.0.5/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

mkdir -p /data/db /data/configdb /var/log/mongodb
chmod -R 777 /data/db /var/log/mongodb

3.创建配置文件

mkdir -p /etc/mongodb
cat > /etc/mongodb/mongod.conf << EOF
storage:
  dbPath: /data/db

systemLog:
  destination: file
  path: /var/log/mongodb/mongod.log
  logAppend: true

net:
  port: 27017
  bindIp: 0.0.0.0

processManagement:
  fork: true
EOF

4.启动mongoDB前需要安装依赖项(在本地docker下载之后上传)

apt-get download \
    libcurl4 \
    libnghttp2-14 \
    librtmp1 \
    libssh-4 \
    libpsl5 \
    libbrotli1 \
    libldap-2.5-0 \
    libgssapi-krb5-2 \
    libkrb5-3 \
    libk5crypto3 \
    libkrb5support0 \
    libssh2-1 \
    libgnutls30 \
    libsasl2-2 \
    libhogweed6 \
    libnettle8 \
    libgmp10 \
    libidn2-0 \
    libunistring2 \
    libp11-kit0 \
    libtasn1-6 \
    libffi8 \
    libsasl2-modules-db \
    libdb5.3 \
    libssl3 \
    libcom-err2 \
    libkeyutils1
    
#按顺序安装:
dpkg -i \
    libcom-err2*.deb \
    libkeyutils1*.deb \
    libkrb5support0*.deb \
    libk5crypto3*.deb \
    libkrb5-3*.deb \
    libgssapi-krb5-2*.deb \
    libssl3*.deb
    
dpkg -i libdb5.3*.deb

dpkg -i \
    libsasl2-modules-db*.deb \
    libsasl2-2*.deb

5.启动mongoDB服务

mongod --config /etc/mongodb/mongod.conf

6.如果想要终止服务

# 查找 MongoDB 进程
ps aux | grep mongod

# 使用进程号终止
kill -9 xxx

7. 我喜欢通过python库进行访问,给个示例:

from pymongo import MongoClient
import json,time

def connect_to_mongodb(host='localhost', port=27017):
    """连接到MongoDB"""
    client = MongoClient(host, port)
    return client

def import_json_to_mongodb(file_path, database_name, collection_name):
    """从JSON文件导入数据到MongoDB"""
    # 连接数据库
    client = connect_to_mongodb()
    db = client[database_name]
    collection = db[collection_name]
    
    # 读取JSON文件
    with open(file_path, 'r', encoding='utf-8') as file:
        data = json.load(file)
    
    # 如果数据是列表,使用insert_many,否则使用insert_one
    if isinstance(data, list):
        collection.insert_many(data)
    else:
        collection.insert_one(data)
    
    print(f"数据已成功导入到 {database_name}.{collection_name}")


# 使用示例
if __name__ == '__main__':
    # 配置信息
    DB_NAME = '数据库名字'
    COLLECTION_NAME = '数据表名字'
    JSON_FILE_PATH = '数据表的json路径'
    
    # 如果是第一次使用,需要导入json文件,之后运行则无需导入,直接注释掉即可
    import_json_to_mongodb(JSON_FILE_PATH, DB_NAME, COLLECTION_NAME)
    
    # 连接数据库
    client = connect_to_mongodb()
    db = client[DB_NAME]
    collection = db[COLLECTION_NAME]

    collection.create_index("实体")
    
    print(list(collection.find({'实体': '吴京'}))) #返回json list


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值