zoukankan      html  css  js  c++  java
  • mongo分片集群生产环境操作步骤&&mongo注意事项

    生产环境第一次上线操作步骤(前提代码中需要指定shard_key)

    python 代码示例

    from mongoengine import connect, DynamicDocument, SequenceField, StringField
    connect(host="mongodb://root:passwd@xxxx/db, alias="default", connect=False)
    class UserInfo(DynamicDocument):
        """
        用户信息表
        """
        _id = SequenceField(primary_key=True  # 用户id
        last_login_time = StringField(max_length=200)  # 最后登录时间
        device_id = StringField(max_length=200)  # 设备id
        create_time = StringField(max_length=100)  # 账号创建时间
        city = StringField(max_length=50)  # 城市
        gender = IntField()  # 性别
        province = StringField(max_length=50)  # 省份
        country = StringField(max_length=50)  # 国家
        headimg = StringField(max_length=200)  # 头像
        role = StringField(max_length=100)  # 用户身份
        nick_name = StringField(max_length=100)  # 昵称
        meta = {"collection": "userInfo", "db_alias": "default", "shard_key": ("_id",)}  # 指定shard_key
    

    首先admin用户登录

    1.创建数据库

    use testdb

    2.创建用户出现 Successfully added user 即可

    db.createUser({user:"test1",pwd:"test123",roles:[{role:"readWrite",db:"testdb"}]})

    3.声明为分片库:sh.status() 查看数据库状态{partitioned:true} 表面为分片库

    sh.enableSharding("testdb")

    4.创建分片集合,指定hashed

    sh.shardCollection('testdb', {_id:'hashed'})

    5.查看分片状态

    sh.status()

     mongo注意事项

    • 每条查询必须中索引观看是否有慢查询
    • 建立索引必须为后台索引

     

  • 相关阅读:
    OAuth2.0协议封装类
    FFmpeg学习笔记
    mysql学习笔记(有待增补)
    使用cnpm国内淘宝镜像命令
    mongoDB中的聚合操作示例
    react的学习日常整理
    服务器防止访问超时的一些参数设置
    MongoDB基本语句操作
    CI框架配置多个数据库
    php前后台登录交互明文传输使用base64加密
  • 原文地址:https://www.cnblogs.com/zhaoyingjie/p/14020601.html
Copyright © 2011-2022 走看看