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注意事项

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

     

  • 相关阅读:
    C# 动态创建SQL数据库(一)
    在Winform中菜单动态添加“最近使用文件”
    转(C# 类似右键菜单弹出窗体)
    为什么不能用Abort退出线程
    C# GDI绘制波形图
    转(C# 实现生产者消费者队列)
    为字段设置初始值
    闲话资源管理
    正确使用 new 修饰符
    减少装箱与拆箱
  • 原文地址:https://www.cnblogs.com/zhaoyingjie/p/14020601.html
Copyright © 2011-2022 走看看