华为云用户手册
-
恢复方案 DDS支持多种数据恢复方案,您可以根据业务需要选择合适的恢复方法。 支持版本号没有说明的,默认支持全部版本:3.2、3.4、4.0、4.2和4.4版本。 表1 恢复方案 恢复类型 支持的实例类型和版本 使用场景 恢复备份到新实例 集群 副本集 单节点 使用已有的自动备份文件或手动备份文件恢复实例数据到新建实例。 恢复备份到当前实例 集群 副本集 单节点 使用已有的自动备份文件或手动备份文件恢复实例数据到当前实例。 恢复实例备份到指定时间点 集群(4.0及以上版本) 副本集(4.0及以上版本) 适用于实例级数据恢复场景,将数据还原至某个指定的时间点。 恢复库表到指定时间点 副本集(4.0及以上版本) 集群(4.0及以上版本) 适用于库表级数据恢复场景,将数据还原至某个指定的时间点。 恢复备份数据到本地自建数据库 集群(3.4、4.0版本支持) 副本集(3.4、4.0版本支持) 单节点(3.4、4.0版本支持) 您可以将DDS的备份文件下载到本地,将数据恢复至本地自建数据库。 通过mongorestore工具恢复数据 集群 副本集 单节点 您可以通过MongoDB客户端自带的备份恢复工具恢复数据。 通过mongoimport工具恢复数据 集群 副本集 单节点 您可以通过MongoDB客户端自带的备份恢复工具恢复数据。 父主题: 数据恢复
-
使用须知 回收站策略机制默认开启,且不可关闭,默认保留天数为7天,该功能免费。 如果用户同时删除100个实例,且回收站内存放有之前删除的实例,那么这100个实例可以被删除成功,但是只有部分实例能进入回收站。回收站只允许加入100个实例,超过该配额的实例将无法添加至回收站中。 修改回收站保留天数,仅对修改后新进入回收站的实例生效,对于修改前已经存在的实例,仍保持原来的回收策略,请您谨慎操作。 节点脱节状态下无法做回收备份。
-
使用须知 账户需要有足够的余额,才可进行扩容。 对于集群实例,仅支持对shard节点进行磁盘扩容,dds mongos节点、config节点和只读节点不能进行磁盘扩容。 选择磁盘加密的实例,新扩容的磁盘空间依然会使用原加密密钥进行加密。 实例处于以下状态时不可扩容: 创建中 规格变更中 节点扩容中 删除节点 小版本升级 磁盘扩容期间,服务不中断。DDS服务只支持扩容磁盘存储空间大小,不支持变更存储类型。
-
使用须知 该方法仅适用于集群实例。 目前仅支持3.4和4.0版本,4.2及以上版本暂不支持通过该方式在本地进行恢复。 操作步骤中的目录,IP地址和端口信息,可按照实际恢复环境配置。 configsvr节点备份文件有一个,shardsrv的备份文件有多个,依据实际shardsvr数量而定。 备份文件下载完成后,需要解压(需要安装lz4解压工具)。参考命令:lz4 -d $1 | tar -xC $2 $1:下载下来的备份文件。 $2:备份文件解压至的目标路径。 如果需要完成数据库、集合级别的数据迁移,请参见通过mongodump和mongorestore工具迁移数据。
-
配置文件说明 configsvr副本集的单节点配置文件及三个节点的配置文件 /compile/mongodb/mongodb-src-4.0.3/restoreconfig/single_40303.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/configsvr_40303.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/configsvr_40304.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/configsvr_40305.yaml shardsvr1副本集的单节点配置文件及三个节点的配置文件 /compile/mongodb/mongodb-src-4.0.3/restoreconfig/single_40306.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/shardsvr_40306.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/shardsvr_40307.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/shardsvr_40308.yaml shardsvr2副本集的单节点配置文件及三个节点的配置文件 /compile/mongodb/mongodb-src-4.0.3/restoreconfig/single_40309.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/shardsvr_40309.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/shardsvr_40310.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/shardsvr_40311.yaml dds mongos节点的配置文件 /compile/mongodb/mongodb-src-4.0.3/restoreconfig/mongos_40301.yaml /compile/mongodb/mongodb-src-4.0.3/restoreconfig/mongos_40302.yaml
-
configsvr的三个节点的数据目录和日志目录 /compile/cluster-restore/cfg1/data/db /compile/cluster-restore/cfg1/log /compile/cluster-restore/cfg2/data/db /compile/cluster-restore/cfg2/log /compile/cluster-restore/cfg3/data/db /compile/cluster-restore/cfg3/log
-
shardsvr2的三个节点的数据目录和日志目录 /compile/cluster-restore/shd21/data/db /compile/cluster-restore/shd21/log /compile/cluster-restore/shd22/data/db /compile/cluster-restore/shd22/log /compile/cluster-restore/shd23/data/db /compile/cluster-restore/shd23/log
-
shardsvr1的三个节点的数据目录和日志目录 /compile/cluster-restore/shd11/data/db /compile/cluster-restore/shd11/log /compile/cluster-restore/shd12/data/db /compile/cluster-restore/shd12/log /compile/cluster-restore/shd13/data/db /compile/cluster-restore/shd13/log
-
恢复dds mongos节点 准备dds mongos节点的配置文件和目录。 rm -rf /compile/cluster-restore/mgs* mkdir -p /compile/cluster-restore/mgs1/log mkdir -p /compile/cluster-restore/mgs2/log 配置文件(restoreconfig/mongos_40301.yaml)。 net: bindIp: 127.0.0.1 port: 40301 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/mgs1/mongos.pid} sharding: {configDB: 'config/127.0.0.1:40303,127.0.0.1:40304,127.0.0.1:40305'} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/mgs1/log/mongos.log} 配置文件(restoreconfig/mongos_40302.yaml)。 net: bindIp: 127.0.0.1 port: 40302 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/mgs2/mongos.pid} sharding: {configDB: 'config/127.0.0.1:40303,127.0.0.1:40304,127.0.0.1:40305'} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/mgs2/log/mongos.log} 启动mongo节点。 ./mongos -f restoreconfig/mongos_40301.yaml ./mongos -f restoreconfig/mongos_40302.yaml 父主题: 恢复集群备份到本地自建数据库
-
操作步骤 准备单节点配置文件和目录,以单节点方式启动进程。 配置文件如下(restoreconfig/single_40309.yaml)。 net: bindIp: 127.0.0.1 port: 40309 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd21/mongod.pid} storage: dbPath: /compile/cluster-restore/shd21/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd21/log/mongod.log} 准备数据,将解压后的shardsvr2文件拷贝到单节点dbPath目录下。 cp -aR /compile/download/backups/cac1efc8e65e42ecad8953352321bfeein02_92b196d2401041a7af869a2a3cab7079no02/* /compile/cluster-restore/shd21/data/db/ 启动进程。 ./mongod -f restoreconfig/single_40309.yaml 连接单节点,执行配置命令。 连接命令:./mongo --host 127.0.0.1 --port 40309 执行如下命令,修改副本集配置信息。 var cf=db.getSiblingDB('local').system.replset.findOne(); cf['members'][0]['host']='127.0.0.1:40309'; cf['members'][1]['host']='127.0.0.1:40310'; cf['members'][2]['host']='127.0.0.1:40311'; cf['members'][0]['hidden']=false; cf['members'][1]['hidden']=false; cf['members'][2]['hidden']=false; cf['members'][0]['priority']=1; cf['members'][1]['priority']=1; cf['members'][2]['priority']=1; db.getSiblingDB('local').system.replset.remove({}); db.getSiblingDB('local').system.replset.insert(cf) 执行如下命令,清理内置账号。 db.getSiblingDB('admin').dropAllUsers(); db.getSiblingDB('admin').dropAllRoles(); 执行如下命令,更新configsvr信息。 var vs = db.getSiblingDB('admin').system.version.find(); while (vs.hasNext()) { var curr = vs.next(); if (curr.hasOwnProperty('configsvrConnectionString')) { db.getSiblingDB('admin').system.version.update({'_id' : curr._id}, {$set: {'configsvrConnectionString': 'config/127.0.0.1:40303,127.0.0.1:40304,127.0.0.1:40305'}}); } } 执行如下命令,关闭单节点进程。 db.getSiblingDB('admin').shutdownServer(); 搭建shardsvr2副本集。 准备副本集配置文件和目录,将shardsvr2节点的dbPath文件拷贝到其他两个节点目录下。 cp -aR /compile/cluster-restore/shd21/data/db/ /compile/cluster-restore/shd22/data/db/ cp -aR /compile/cluster-restore/shd21/data/db/ /compile/cluster-restore/shd23/data/db/ 修改shardsvr2-1节点配置文件,增加副本集配置属性(restoreconfig/shardsvr_40309.yaml)。 --- replication.replSetName 的值,参考该章节中的shard的_id信息。 net: bindIp: 127.0.0.1 port: 40309 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd21/mongod.pid} replication: {replSetName: shard_2} sharding: {archiveMovedChunks: false, clusterRole: shardsvr} storage: dbPath: /compile/cluster-restore/shd21/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd21/log/mongod.log} 启动进程。 ./mongod -f restoreconfig/shardsvr_40309.yaml 修改shardsvr2-2节点配置文件,增加副本集配置属性(restoreconfig/shardsvr_40310.yaml)。 --- replication.replSetName 的值,参考该章节中的shard的_id信息。 net: bindIp: 127.0.0.1 port: 40310 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd22/mongod.pid} replication: {replSetName: shard_2} sharding: {archiveMovedChunks: false, clusterRole: shardsvr} storage: dbPath: /compile/cluster-restore/shd22/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd22/log/mongod.log} 启动进程。 ./mongod -f restoreconfig/shardsvr_40310.yaml 修改shardsvr2-3节点配置文件,增加副本集配置属性(restoreconfig/shardsvr_40311.yaml)。 --- replication.replSetName 的值,参考该章节中的shard的_id信息。 net: bindIp: 127.0.0.1 port: 40311 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd23/mongod.pid} replication: {replSetName: shard_2} sharding: {archiveMovedChunks: false, clusterRole: shardsvr} storage: dbPath: /compile/cluster-restore/shd23/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd23/log/mongod.log} 启动进程。 ./mongod -f restoreconfig/shardsvr_40311.yaml 等待选主成功。 ./mongo --host 127.0.0.1 --port 40309 执行命令rs.status(),查看是否已存在主节点Primary。
-
准备目录 rm -rf /compile/cluster-restore/shd2* mkdir -p /compile/cluster-restore/shd21/data/db mkdir -p /compile/cluster-restore/shd21/log mkdir -p /compile/cluster-restore/shd22/data/db mkdir -p /compile/cluster-restore/shd22/log mkdir -p /compile/cluster-restore/shd23/data/db mkdir -p /compile/cluster-restore/shd23/log
-
操作步骤 准备单节点配置文件和目录,以单节点方式启动进程。 配置文件如下(restoreconfig/single_40306.yaml)。 net: bindIp: 127.0.0.1 port: 40306 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd11/mongod.pid} storage: dbPath: /compile/cluster-restore/shd11/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd11/log/mongod.log} 准备数据,将解压后的shardsvr1文件拷贝到单节点dbPath目录下。 cp -aR /compile/download/backups/cac1efc8e65e42ecad8953352321bfeein02_6cfa6167d4114d7c8cec5b47f9a78dc5no02/* /compile/cluster-restore/shd11/data/db/ 启动进程。 ./mongod -f restoreconfig/single_40306.yaml 连接单节点,执行配置命令。 连接命令:./mongo --host 127.0.0.1 --port 40306 执行如下命令,修改副本集配置信息。 var cf=db.getSiblingDB('local').system.replset.findOne(); cf['members'][0]['host']='127.0.0.1:40306'; cf['members'][1]['host']='127.0.0.1:40307'; cf['members'][2]['host']='127.0.0.1:40308'; cf['members'][0]['hidden']=false; cf['members'][1]['hidden']=false; cf['members'][2]['hidden']=false; cf['members'][0]['priority']=1; cf['members'][1]['priority']=1; cf['members'][2]['priority']=1; db.getSiblingDB('local').system.replset.remove({}); db.getSiblingDB('local').system.replset.insert(cf) 执行如下命令,清理内置账号。 db.getSiblingDB('admin').dropAllUsers(); db.getSiblingDB('admin').dropAllRoles(); 执行如下命令,更新configsvr信息。 连接命令:./mongo --host 127.0.0.1 --port 40306 var vs = db.getSiblingDB('admin').system.version.find(); while (vs.hasNext()) { var curr = vs.next(); if (curr.hasOwnProperty('configsvrConnectionString')) { db.getSiblingDB('admin').system.version.update({'_id' : curr._id}, {$set: {'configsvrConnectionString': 'config/127.0.0.1:40303,127.0.0.1:40304,127.0.0.1:40305'}}); } } 执行如下命令,关闭单节点进程。 db.getSiblingDB('admin').shutdownServer(); 搭建shardsvr1副本集。 准备副本集配置文件和目录,将shardsvr1节点的dbPath文件拷贝到其他两个节点目录下。 cp -aR /compile/cluster-restore/shd11/data/db/ /compile/cluster-restore/shd12/data/db/ cp -aR /compile/cluster-restore/shd11/data/db/ /compile/cluster-restore/shd13/data/db/ 修改shardsvr1-1节点配置文件,增加副本集配置属性(restoreconfig/shardsvr_40306.yaml)。 --- replication.replSetName 的值,参考该章节中的shard的_id信息。 net: bindIp: 127.0.0.1 port: 40306 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd11/mongod.pid} replication: {replSetName: shard_1} sharding: {archiveMovedChunks: false, clusterRole: shardsvr} storage: dbPath: /compile/cluster-restore/shd11/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd11/log/mongod.log} 启动进程。 ./mongod -f restoreconfig/shardsvr_40306.yaml 修改shardsvr1-2节点配置文件,增加副本集配置属性(restoreconfig/shardsvr_40307.yaml)。 --- replication.replSetName 的值,参考该章节中的shard的_id信息。 net: bindIp: 127.0.0.1 port: 40307 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd12/mongod.pid} replication: {replSetName: shard_1} sharding: {archiveMovedChunks: false, clusterRole: shardsvr} storage: dbPath: /compile/cluster-restore/shd12/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd12/log/mongod.log} 启动进程。 ./mongod -f restoreconfig/shardsvr_40307.yaml 修改shardsvr1-3节点配置文件,增加副本集配置属性(restoreconfig/shardsvr_40308.yaml)。 --- replication.replSetName 的值,参考该章节中的shard的_id信息。 net: bindIp: 127.0.0.1 port: 40308 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/shd13/mongod.pid} replication: {replSetName: shard_1} sharding: {archiveMovedChunks: false, clusterRole: shardsvr} storage: dbPath: /compile/cluster-restore/shd13/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/shd13/log/mongod.log} 启动进程。 ./mongod -f restoreconfig/shardsvr_40308.yaml 等待选主成功。 ./mongo --host 127.0.0.1 --port 40306 执行命令rs.status(),查看是否已存在主节点Primary。
-
准备目录 rm -rf /compile/cluster-restore/shd1* mkdir -p /compile/cluster-restore/shd11/data/db mkdir -p /compile/cluster-restore/shd11/log mkdir -p /compile/cluster-restore/shd12/data/db mkdir -p /compile/cluster-restore/shd12/log mkdir -p /compile/cluster-restore/shd13/data/db mkdir -p /compile/cluster-restore/shd13/log
-
准备目录 rm -rf /compile/cluster-restore/cfg* mkdir -p /compile/cluster-restore/cfg1/data/db mkdir -p /compile/cluster-restore/cfg1/log mkdir -p /compile/cluster-restore/cfg2/data/db mkdir -p /compile/cluster-restore/cfg2/log mkdir -p /compile/cluster-restore/cfg3/data/db mkdir -p /compile/cluster-restore/cfg3/log
-
操作步骤 准备单节点配置文件和数据目录,以单节点方式启动进程。 配置文件如下(restoreconfig/single_40303.yaml)。 net: bindIp: 127.0.0.1 port: 40303 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/cfg1/configsvr.pid} storage: dbPath: /compile/cluster-restore/cfg1/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/cfg1/log/configsingle.log} 准备数据,将解压后的configsvr文件拷贝到单节点dbPath目录下。 cp -aR /compile/download/backups/cac1efc8e65e42ecad8953352321bfeein02_41c8a32fb10245899708dea453a8c5c9no02/* /compile/cluster-restore/cfg1/data/db/ 启动进程。 ./mongod -f restoreconfig/single_40303.yaml 连接单节点,执行配置命令。 连接命令:./mongo --host 127.0.0.1 --port 40303 执行如下命令,修改副本集配置信息。 var cf=db.getSiblingDB('local').system.replset.findOne(); cf['members'][0]['host']='127.0.0.1:40303'; cf['members'][1]['host']='127.0.0.1:40304'; cf['members'][2]['host']='127.0.0.1:40305'; cf['members'][0]['hidden']=false; cf['members'][1]['hidden']=false; cf['members'][2]['hidden']=false; cf['members'][0]['priority']=1; cf['members'][1]['priority']=1; cf['members'][2]['priority']=1; db.getSiblingDB('local').system.replset.remove({}); db.getSiblingDB('local').system.replset.insert(cf) 执行如下命令,清理内置账号。 db.getSiblingDB('admin').dropAllUsers(); db.getSiblingDB('admin').dropAllRoles(); 执行如下命令,更新dds mongos和shard信息。 db.getSiblingDB('config').mongos.remove({}); 先查询config.shards表中的多个shard的_id信息,用于下面语句的_id的查询条件。逐个更新每条记录。 db.getSiblingDB('config').shards.update({'_id' : 'shard_1'},{$set: {'host': 'shard_1/127.0.0.1:40306,127.0.0.1:40307,127.0.0.1:40308'}}) db.getSiblingDB('config').shards.update({'_id' : 'shard_2'},{$set: {'host': 'shard_2/127.0.0.1:40309,127.0.0.1:40310,127.0.0.1:40311'}}) db.getSiblingDB('config').mongos.find({}); db.getSiblingDB('config').shards.find({}); 执行如下命令,关闭单节点进程。 db.getSiblingDB('admin').shutdownServer(); 搭建configsvr副本集。 准备副本集配置文件和目录,将configsvr1节点的dbPath文件拷贝到其他两个节点目录下。 cp -aR /compile/cluster-restore/cfg1/data/db/ /compile/cluster-restore/cfg2/data/db/ cp -aR /compile/cluster-restore/cfg1/data/db/ /compile/cluster-restore/cfg3/data/db/ 修改configsvr-1节点配置文件,增加副本集配置属性(restoreconfig/configsvr_40303.yaml)。 net: bindIp: 127.0.0.1 port: 40303 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/cfg1/configsvr.pid} replication: {replSetName: config} sharding: {archiveMovedChunks: false, clusterRole: configsvr} storage: dbPath: /compile/cluster-restore/cfg1/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/cfg1/log/configsvr.log} 启动进程。 ./mongod -f restoreconfig/configsvr_40303.yaml 修改configsvr-2节点配置文件,增加副本集配置属性(restoreconfig/configsvr_40304.yaml)。 net: bindIp: 127.0.0.1 port: 40304 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/cfg2/configsvr.pid} replication: {replSetName: config} sharding: {archiveMovedChunks: false, clusterRole: configsvr} storage: dbPath: /compile/cluster-restore/cfg2/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/cfg2/log/configsvr.log} 启动进程 ./mongod -f restoreconfig/configsvr_40304.yaml 修改configsvr-3节点配置文件,增加副本集配置属性(restoreconfig/configsvr_40305.yaml)。 net: bindIp: 127.0.0.1 port: 40305 unixDomainSocket: {enabled: false} processManagement: {fork: true, pidFilePath: /compile/cluster-restore/cfg3/configsvr.pid} replication: {replSetName: config} sharding: {archiveMovedChunks: false, clusterRole: configsvr} storage: dbPath: /compile/cluster-restore/cfg3/data/db/ directoryPerDB: true engine: wiredTiger wiredTiger: collectionConfig: {blockCompressor: snappy} engineConfig: {directoryForIndexes: true, journalCompressor: snappy} indexConfig: {prefixCompression: true} systemLog: {destination: file, logAppend: true, logRotate: reopen, path: /compile/cluster-restore/cfg3/log/configsvr.log} 启动进程。 ./mongod -f restoreconfig/configsvr_40305.yaml 等待选主成功。 ./mongo --host 127.0.0.1 --port 40303 执行命令rs.status(),查看是否已存在主节点Primary。
-
参数模板注意事项 系统提供的默认参数模板不允许修改,只可单击参数模板名称进行查看。如果出现参数设置不合理导致数据库无法启动,可参考默认参数模板重新配置。 对于某些运行参数修改,您需在实例列表中,查看实例状态,如果显示“参数模板变更,等待重启”,则需重启关联的实例使之生效。 在数据库参数模板内设置参数不恰当可能会产生意外的不利影响,包括性能降低和系统不稳定。修改数据库参数时应始终保持谨慎,且修改数据库参数模板前要备份数据。将参数模板更改应用于生产数据库实例前,您应当在测试数据库实例上试用这些参数模板设置更改。
-
参数模板类型 创建数据库实例时可以指定数据库参数模板为默认参数模板或已有参数模板。实例创建成功后也可以变更实例关联的参数模板。 默认参数模板 默认组包含针对运行的数据库实例进行优化的引擎默认值和数据库服务系统默认值。 自定义参数模板 如果希望数据库实例以客户自定义的引擎配置值运行,可轻松地创建一个新数据库参数模板,修改所需参数并应用到数据库实例,用以使用新数据库参数模板。 数据库参数模板与实例建立关联后,如果修改了参数模板中的参数,那么使用该参数模板的所有实例,都将获得该参数模板中对应参数的更新。
-
使用须知 开启或关闭SSL会导致实例重启,请谨慎操作。 在开启或关闭SSL时,文档数据库服务会进行一次重启,重启过程中每个节点会有一次约30秒的闪断,建议您安排好业务并确保应用有重连机制。 开启SSL,可以通过SSL方式连接数据库,具有更高的安全性。 目前已禁用不安全的加密算法,支持的安全加密算法对应的加密套件参考如下。 版本 支持的TLS版本 支持的加密算法套件 3.4 TLS 1.2 AES256-GCM-SHA384 AES128-GCM-SHA256 4.0 TLS 1.2 DHE-RSA-AES256-GCM-SHA384 DHE-RSA-AES128-GCM-SHA256 用户的客户端所在服务器需要支持对应的TLS版本以及对应的加密算法套件,否则会连接失败。 关闭SSL,可以采用非SSL方式连接数据库。
-
使用须知 文档数据库服务的审计日志功能默认是关闭的,您可以根据业务需要开启审计日志,开启后系统记录读写操作的审计信息。根据业务模型的不同,会造成不同的性能影响,开启后若出现性能瓶颈,需要考虑临时关闭审计日志或者进行规格扩容。 开启审计日志会收取一定费用,收费详情请参见产品价格详情。 文档数据库服务会去检测已生成的审计日志,若审计日志超过用户自定义的保留天数,则将其删除。建议审计日志保存180天以上,用于审计回溯和问题分析等场景。 审计策略修改后,文档数据库服务将按照新的策略执行审计,原审计日志的保留天数以修改后审计策略的保留天数为准。 审计日志不建议删除,如需删除,请先确保审计日志删除后仍然符合您所在地或者企业的安全合规要求,建议删除前下载日志文件在本地备份。审计日志删除后不可恢复,请谨慎操作。 您可以通过文档数据库服务查看、下载和删除DDS实例审计日志,详情请参见通过文档数据库服务查看审计日志;也可以按照日志配置管理配置后,在LTS服务查看DDS实例审计日志的详细信息,包括搜索日志、日志可视化、下载日志和查看实时日志等功能,详情请参见通过 云日志 服务查看审计日志。 审计日志默认每小时生成一次,如果日志大小超过最大限制10MB,则会额外生成新的审计日志。 客户数据需要使用UTF-8编码格式,对于非UTF-8格式数据,对应语句的审计结果可能会有缺失、遗漏或乱码等非预期现象。 文档数据库服务使用的 对象存储服务 上的审计日志文件,对用户不可见,它们只对后台管理系统可见。
-
事件样例 如下提供了查询副本集状态信息的样例,详细的字段解释可参考事件结构。 { "atype": "query", "ts": { "$date": "2025-02-27T12:35:40.512+0000" }, "local": { "ip": "192.168.30.90", "port": 8635 }, "remote": { "ip": "192.168.26.20", "port": 43818 }, "users": [ { "user": "rwuser", "db": "admin" } ], "roles": [ { "role": "root", "db": "admin" } ], "param": { "command": "query", "ns": "test.a", "args": { "find": "a", "filter": { }, "lsid": { "id": { "$binary": "7kwKmFh9TxGStjtn5Urt2w==", "$type": "04" } }, "$clusterTime": { "clusterTime": { "$timestamp": { "t": 1740659738, "i": 2 } }, "signature": { "hash": { "$binary": "t2eFI3gB9ZruNYf5Y0FIgAZRCr4=", "$type": "00" }, "keyId": { "$numberLong": "7472645695153897501" } } }, "$db": "test" } }, "result": 0 "sessionId": "1641365", "username": "rwuser", "clientname": "MongoDB Shell", "affectRows": "0", "startTime": "1740659740512716", "endTime": "1740659740513937", "docsExamined": "0", "keysExamined": "0", "returnNum": "0", "success": true }
-
策略语法 给用户组选择策略时,单击策略下方的,可以查看策略的详细内容,以“DDS Administrator”为例,说明RBAC策略的语法。 图2 DDS Administrator策略 { "Version": "1.0", "Statement": [ { "Effect": "Allow", "Action": [ "DDS:DDS:*" ], "Resource": [ "DDS:*:*:instanceName:dds-*" ], } ], "Depends": [ { "catalog": "BASE", "display_name": "Server Administrator" }, { "catalog": "BASE", "display_name": "Tenant Guest" } ] } 表1 参数说明 参数 含义 值 Version 策略的版本 固定为“1.0”。 Statement Action 定义对DDS的具体操作。 格式为:服务名:资源类型:操作 "DDS:DDS:*",表示对DDS的所有操作,其中DDS为服务名称;“*”为通配符,表示对DDS资源可以执行所有操作。 Effect 定义Action中所包含的具体操作是否允许执行。 Allow:允许执行。 Deny:不允许执行。 Resource 定义资源粒度的鉴权 非必传,“DDS:*:*:instanceName:dds-*”表示对所有dds-开头的实例拥有配置的action权限,如果没有配置,那么默认拥有所有实例的权限 Depends catalog 依赖的策略的所属服务。 服务名称 例如:BASE display_name 依赖的策略的名称。 权限名称 例如:Server Administrator
-
DDS自定义策略样例 示例1:授权用户创建文档数据库实例 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "dds:instance:create" ] } ] } 示例2:拒绝用户删除文档数据库实例 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则。 如果您给用户授予DDS FullAccess的系统策略,但不希望用户拥有DDS FullAccess中定义的删除文档数据库实例权限,您可以创建一条拒绝删除文档数据库实例的自定义策略,然后同时将DDS FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对DDS执行除了删除文档数据库实例外的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [ { "Effect": "Deny" "Action": [ "dds:instance:deleteInstance" ], } ] } 示例3:多个授权项策略 一个自定义策略中可以包含多个授权项,且除了可以包含本服务的授权项外,还可以包含其他服务的授权项,可以包含的其他服务必须跟本服务同属性,即都是项目级服务或都是全局级服务。多个授权语句策略描述如下: { "Version": "1.1", "Statement": [ { "Action": [ "dds:instance:create", "dds:instance:modify", "dds:instance:deleteInstance", "vpc:publicIps:list", "vpc:publicIps:update" ], "Effect": "Allow" } ] } 实例4:授权资源策略 一个自定义策略可以设置资源策略,表示在当前的action下面,拥有哪些资源的操作权限,目前支持实例名称的配置,可以用*来表示通配符。授权资源策略的描述如下: { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "dds:instance:list" ] }, { "Effect": "Allow", "Action": [ "dds:instance:modify" ], "Resource": [ "DDS:*:*:instanceName:dds-*" ] } ] }
-
账户密码等级设置 文档数据库服务在控制台侧管理员密码的安全策略: 密码长度为8~32个字符。 密码必须为英文大小写字母、数字、特殊字符~!@#%^*-_=+?()$的组合。 文档数据库对在客户端新创的数据库用户,设置了密码安全策略: 密码长度为8~32个字符。 密码为英文大小写字母、数字、特殊字符~@#%-_!*+=^?的组合。 创建实例数据库以及设置密码时,安全起见,为用户提供了密码复杂度校验,如果不满足要求,请根据提示信息调整密码复杂度。
-
账户说明 为了给文档数据库实例提供管理服务,您在创建数据库实例时,文档数据库服务会自动为实例创建根账户root(或admin)、监控账户monitor和备份账户backup,这些账户属于华为云实例管理平台,您不能操作或者使用。如果试图删掉、重命名、修改这些账户的密码和权限,会导致出错。 对于数据库管理员账户rwuser,以及您所创建的账户,允许修改账户的密码。 默认账户rwuser以及通过rwuser创建的账户,对系统库admin和config权限受限,无法进行正常操作。对自身创建的库表,具有充分的操作权限。 MongoDB的User一般是在某个固定的认证库下创建的。连接数据库时,需要通过参数--authenticationDatabase来明确指定对应的认证库。 DDS实例中,默认的rwuser用户的认证库,是admin。 账户密码连续5次输入错误,账户会被锁定10s。
-
创建账户 选择admin数据库。 use admin 以user1账户为例,创建数据库账户。 db.createUser({user: "user1", pwd: "****", passwordDigestor:"server", roles:[{role: "root", db: "admin"}]}) “server”是指在服务端加密密码,为固定值,无需修改。 “****”是新密码,长度8~32位,且必须为英文大小写字母、数字以及特殊字符~@#%-_!*+=^?的组合。 “roles”限制了该账户所具有的权限。若指定一个空数组,表示该账户不具有任何权限。 查看创建结果。 显示如下信息,说明创建成功。 Successfully added user: { "user" : "user1", "passwordDigestor" : "server", "roles" : [ { "role" : "root", "db" : "admin" } ] }
-
支持的迁移对象范围 在使用DRS进行迁移时,不同类型的迁移任务,支持的迁移对象范围不同,详细情况可参考表2。DRS会根据用户选择,在“预检查”阶段对迁移对象进行自动检查。 表2 支持的迁移对象 类型名称 使用须知 迁移对象范围 迁移对象选择维度:支持选择表级、库级或实例级(全部迁移)。 支持的迁移对象: 相互关联的数据对象要确保同时迁移,避免迁移因关联对象缺失,导致迁移失败。常见的关联关系:视图引用集合、视图引用视图等。 副本集:目前只支持集合(包括验证器,是否是固定集合),索引和视图的迁移。 集群:目前只支持集合(包括验证器,是否是固定集合),分片键,索引和视图的迁移。 单节点:目前只支持集合(包括验证器,是否是固定集合),索引和视图的迁移。 只支持迁移用户数据和源数据库的账号信息,不支持迁移系统库(如local、admin、config等)和系统集合,如果业务数据在系统库下,则需要先将业务数据移动到用户数据库下,可以使用renameCollection命令进行移出。 不支持视图的创建语句中有正则表达式。 不支持_id字段没有索引的集合。 不支持BinData()的第一个参数为2。 不支持范围分片的情况下maxKey当主键。 说明: 支持迁移的对象有如下限制: 源数据库的库名不能包含/\."$和空格,集合名和视图名中不能包含$字符或以system.开头。
-
迁移场景 全量迁移 该模式为数据库一次性迁移,适用于可中断业务的数据库迁移场景,全量迁移将非系统数据库的全部数据库对象和数据一次性迁移至目标端数据库,包括:表、视图、存储过程等。选择“全量迁移”模式,建议停止对源数据库的操作,否则迁移过程中源数据库产生的新数据不会同步到目标数据库。 全量+增量迁移 该模式为数据库持续性迁移,适用于对业务中断敏感的场景,通过全量迁移过程中完成的目标端数据库的初始化后,增量迁移阶段通过解析日志等技术,将源端和目标端数据库保持数据持续一致。选择“全量+增量”迁移模式,增量迁移可以在全量迁移完成的基础上实现数据的持续同步,无需中断业务,实现迁移过程中源业务和数据库继续对外提供访问。
-
数据库账号权限要求 在使用DRS进行迁移时,连接源库和目标库的数据库账号需要满足以下权限要求,才能启动实时迁移任务。不同类型的迁移任务,需要的账号权限也不同,详细可参考表3进行赋权。DRS会在“预检查”阶段对数据库账号权限进行自动检查,并给出处理建议。 建议创建单独用于DRS任务连接的数据库账号,避免因为数据库账号密码修改,导致的任务连接失败。 连接源和目标数据库的账号密码修改后,请尽快修改DRS任务中的连接信息,避免任务连接失败后自动重试,导致数据库账号被锁定影响使用。 表3 数据库账号权限 类型名称 全量迁移 全量+增量迁移 源数据库连接账号 副本集:连接源数据库的用户需要有admin库的readAnyDatabase权限。 单节点:连接源数据库的用户需要有admin库的readAnyDatabase权限。 集群:连接源数据库的用户需要有admin库的readAnyDatabase权限,有config库的read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库和目标库数据库的用户需要有admin数据库的系统表system.users、system.roles的read权限。 副本集:连接源数据库的用户需要有admin库的readAnyDatabase权限,有local库的read权限。 单节点:连接源数据库的用户需要有admin库的readAnyDatabase权限,有local库的read权限。 集群:连接源数据库dds mongos节点的用户需要有admin库的readAnyDatabase权限,有config库的read权限,连接源数据库分片节点的用户需要有admin库的readAnyDatabase权限,有local库的read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库和目标库数据库的用户需要有admin数据库的系统表system.users、system.roles的read权限。 目标数据库连接账号 连接目标数据库的用户需要有admin库的dbAdminAnyDatabase权限,有目标数据库的readWrite权限。 对于目标数据库是集群的实例,迁移账号还要有admin库的clusterManager权限。 用户赋权参考语句:如连接源数据库的用户需要有admin库的readAnyDatabase权限和config库的read权限。 db.grantRolesToUser("用户名",[{role:"readAnyDatabase",db:"admin"}, {role:"read",db:"config"}])
-
使用须知 mongodump和mongorestore工具仅支持全量数据迁移。为保障数据一致性,迁移操作开始前请停止源数据库的相关业务,并停止数据写入。 建议您尽量选择在业务低峰期迁移数据,避免在迁移过程中对业务造成影响。 不支持迁移系统库admin和local。 mongodump导出文件为BSON二进制文件,mongorestore使用mongodump导出的二进制备份文件将数据还原到实例中。 确保源库中系统库admin和local没有创建业务集合,如果已经有业务集合,必须在迁移前将这些业务集合从admin和local库中迁移出来。 导入数据之前,确保源端有必要的索引,即在迁移前删除不需要的索引,创建好必要的索引。 如果选择迁移分片集群,必须在目标库创建好要分片的集合,并配置数据分片。同时,迁移前必须要创建好索引。 如果使用mongodump工具备份失败(示例:备份进度至97%时报错),建议您尝试增大备份失败虚拟机的磁盘空间,预留部分冗余空间,再重新执行备份。 客户侧使用的是rwuser账号,仅支持操作客户业务库表。所以,在使用时建议指定库和表,仅对业务数据执行导入导出。不指定库表,全量进行导入导出,可能会遇到权限不足的问题。 如果需要恢复备份到本地自建数据库,请参见恢复备份到本地自建数据库。
-
前提条件 准备弹性云服务器或可访问DDS的设备。 通过内网连接文档数据库实例,需要创建并登录弹性云服务器,请参见购买弹性云服务器和登录弹性云服务器。 通过公网地址连接文档数据库实例,需具备以下条件。 为实例中的节点绑定公网地址,如何绑定公网地址,请参见《文档数据库服务快速入门》通过公网连接实例下“绑定弹性公网IP”的内容。 保证本地设备可以访问文档数据库绑定的公网地址。 在已准备的弹性云服务器或可访问DDS的设备上,安装数据迁移工具。 安装数据迁移工具,请参见安装MongoDB迁移工具。 MongoDB客户端版本须和实例相匹配,若版本不匹配则会有兼容性问题出现。
共100000条
- 1
- ...
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- ...
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333