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

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

     

  • 相关阅读:
    深入浅出Win32多线程程序设计【2】线程控制
    深入浅出Win32多线程程序设计【1】基本概念
    在两个ASP.NET页面之间传递值
    Javascript基础
    DataGrid的几个小技巧
    推荐取代Visio的中国人的软件——Edraw
    ASP.NET如何防范SQL注入攻击
    软件版本号规定原则
    三层体系结构总结(三)
    .Net工具 .NET文档生成工具2.2
  • 原文地址:https://www.cnblogs.com/zhaoyingjie/p/14020601.html
Copyright © 2011-2022 走看看