华为云用户手册
-
步骤二:创建并绑定组织 登录CraftArts IPDCenter控制台。 在左侧菜单栏选择“工业仿真云平台SIM Space”,进入“工业仿真云平台SIM Space”页面。 在“工业仿真云平台SIM Space”页面,创建组织。 在“工业仿真云平台SIM Space”页面的“组织管理”区域,单击“创建组织”。 图6 创建组织入口 在“创建组织”弹窗页面,输入组织名称。 名称由1~60个中文、英文、数字及合法字符组成。 设置组织的 域名 。 域名是指网址 (如www.example.com) 中“www”之后的内容,以及电子邮件地址 (如《用户名》@example.com)中“@”符号之后的内容。 没有域名,可以输入组织简称,使用2~30位字母、数字和.-或它们的组合,如abc,后缀名为固定的.orgid.top,如图7所示。 图7 设置组织域名 已有域名,单击“使用自有域名”,输入自有域名,如example.com,如图8所示。 图8 使用自有域名 域名设置后管理员为组织创建成员时,成员的管理式华为账号默认带有域名后缀,如设置的组织域名为abc.orgid.top,创建的成员账号为xxx@abc.orgid.top,设置的组织域名为example.com,添加的成员账号为xxx@example.com。 阅读并勾选相关服务协议,然后单击“创建”创建组织。 在“工业仿真云平台SIM Space”页面,绑定组织。 在“工业仿真云平台SIM Space”页面的“组织管理”区域,单击“组织”后的下拉框,选择需要绑定的组织,单击“绑定组织”。 图9 选择组织 在弹出的警告框中,单击“确定”。 绑定组织成功后,弹窗提示绑定成功。 图10 确认绑定组织
-
步骤一:购买服务 进入工业仿真云平台购买页面。 在购买页面,参考表2,配置工业仿真管理服务购买信息。 图1 配置仿真管理服务购买信息 表2 购买仿真管理服务配置说明 类型 配置项 配置说明 基本配置 (工业仿真管理服务) 区域 选择工业仿真云平台所属的区域,请选择最靠近您的区域,可减少网络时延,提高访问速度。 计费模式 目前仅支持包年/包月。 部署位置 工业仿真云平台的部署位置,目前仅支持“公有云”。 企业项目 仅对开通企业项目的企业客户账号显示。如需使用该功能,请联系客服申请开通。 企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理,默认项目为default。了解更多企业项目相关信息,请参见企业项目管理。 服务选择 目前仅支持选择“仿真管理服务-基础版”。 购买量 用户数 设置您需要购买用户的数量,最小配额为1,最大配额为300。 购买时长 不同购买时长的收费不同,目前支持选择按月和年购买。 自动续费:勾选自动续费后,到期前7日会自动续费服务。按月购买时自动续费时长为1个月,按年购买时自动续费时长为1年。 单击“下一步”,进入工业仿真计算服务购买配置页面。 在仿真计算服务购买配置页面,参考表3,配置工业仿真计算服务购买信息。 图2 配置仿真计算服务购买信息 表3 购买仿真计算服务配置说明 类型 配置项 配置说明 基本配置(仿真计算服务) 计算集群名称 仿真计算服务的集群名称。必填项,只能由中文字符、英文字母、数字及特殊字符“-”、“_”组成,长度不能超过100个字符。 集群描述 集群描述信息,长度不能超过200个字符。 区域 选择仿真计算服务所属的区域,请选择最靠近您的区域,可减少网络时延,提高访问速度。 计费模式 目前仅支持包年/包月。 规格选择 规格 选择计算资源的规格,目前仅支持选择“仿真求解增强AC型”,规格为64核512GB。 节点数量 设置需要购买的节点数量,最小配额为1,最大配额为100。 购买量 购买时长 设置仿真计算服务的购买时长,目前仅支持选择“与仿真管理服务保持一致”。 配置完成后,单击“下一步”,进入确认配置页面。 在确认配置页面,确认好上一步填写的配置信息,并阅读和勾选协议许可。 图3 购买配置确认 确认无误后,单击“去支付”。 如果还需要修改配置信息,单击“上一步”修改配置信息。 在支付页面,确认订单信息,选择付款方式,单击“确认付款”完成支付。 支付成功后,进入“订单支付成功”页面。单击“返回硬件开发工具链平台云服务控制台”,跳转至CraftArts IPDCenter控制台页面。 图4 返回控制台 在CraftArts IPDCenter控制台的“工业仿真云平台SIM Space”页面,可查看“仿真管理服务-基础版”和“仿真计算服务”的开通状态。当服务状态变为“运行中”如图5所示,表示服务开通成功,可以开始创建并绑定组织。 图5 服务开通成功状态
-
操作流程 表1 使用SIM Space提交作业进行仿真求解计算操作流程 操作步骤 说明 准备工作 在开通工业仿真云平台前,您需要 注册华为账号 并开通华为云、完成实名认证、为账户充值。由于目前工业仿真云平台处于公测阶段,您需要先申请公测并通过人工审核后才可购买。 步骤一:购买服务 在控制台购买工业仿真云平台。 步骤二:创建并绑定组织 创建一个组织来管理团队成员,并且绑定组织和工业仿真云平台。 步骤三:创建角色桌面 在开通SIM Space平台后使用SIM Space平台前,租户管理员(SIM Space平台开通者)需先进入IPDCenter基础服务创建SIM Space角色桌面模板并将模板设置为公开状态,其他用户才可以打开SIM Space角色桌面模板进入SIM Space平台。 步骤四:创建用户并授权 SIM Space使用IPDCenter基础服务用户管理能力,租户管理员(SIM Space平台开通者)需先进入IPDCenter基础服务创建用户,并对用户进行登录授权和操作授权后,用户才可正常登录和使用SIM Space平台。 步骤五:创建资源队列 资源队列是作业被调度器调度时的通道,作业只有被提交到某个队列后才可以被调度器调度,在提交仿真求解作业前需要租户管理员先创建资源队。 步骤六:提交仿真计算求解作业 SIM Space平台支持打开已订购的仿真求解计算类应用软件,提交求解作业。
-
步骤5:创建线体 在“工厂建模”页面的“工厂结构定义”页签左侧工厂结构树中,选中车间节点“Workshop[A车间]”,单击其右侧的,或者单击“新增线体”。 在弹出的“创建线体/作业区”窗口中,填写表4信息。 表4 创建线体/作业区参数 参数 说明 线体种类 填写线体的种类。 示例:“ALine” 线体编号 线体编号自动生成。生成规则:线体种类+三位流水号,例如ALine001。 线体名称 填写线体的名称。 示例:“A线体” 线体描述 可选参数,可不填写。 生产单元类别 选择“line(生产线体)”。 部门 可选参数,可不填写。 位置 可选参数,可不填写。 业务负责人 填写线体的业务负责人。 示例:“张三” 车间 可选参数,关联已创建的车间。如果不填写该参数,默认将该线体添加到被选中车间的节点“Workshop[A车间]”下。 示例:“A车间” 是否生效 默认“是”。有效的线体数据才能被其他功能模块引用。 信息填写完成后,单击“保存后关闭”。 本示例创建的工厂模型的结构树如图2所示。 图2 工厂结构树
-
步骤3:创建工厂 在“公司注册”页面左侧公司列表中选中公司记录“虚拟A”,单击“添加工厂”。 在弹出的“添加工厂”窗口中,填写表2信息。 表2 添加工厂参数 参数 说明 工厂编号 填写工厂编号,需为系统唯一值。 示例:“GC1001” 公司编号 选中公司后添加工厂时系统自动填充公司编号。 时区 选择“(UTC+08:00)北京,重庆,香港特别行政区,乌鲁木齐”。 中文描述 可选参数,可不填写。 英文描述 可选参数,可不填写。 中文缩写 填写工厂的中文缩写。 示例:“A工厂” 英文缩写 可选参数,可不填写。 区域 可选参数,可不填写。 是否有效 默认“是”。有效的工厂下才能创建车间。 单击“保存”。
-
操作步骤 进入购买CraftArts IPDCenter页面。 选择商品及商品配置项。 表1 商品及商品配置项 商品 配置项 说明 IPDCenter基础服务 区域 资源所在区域。 计费模式 商品的计费模式。 环境名称 根据您的使用场景,对用户环境进行标志,比如:xx研发生产环境,xx研发测试环境等。只能包含中文、英文字母、数字、“_”、“-”,最大长度64字符。 企业项目 此处调取您所在组织设置的企业项目信息,用于订单的费用管理。 用户数 最小配额为100,最大配额为8000。 购买时长 提供包月、包年多种规格,您可按需选择。支持自动续费。 单击“立即购买”,查看订单信息,确认无误后,按照界面提示选择支付方式完成付款。
-
SDK列表 在开始使用之前,请确保您安装的是最新版本的SDK。使用过时的版本可能会导致兼容性问题或无法使用最新功能。您可以在 SDK中心 查询版本信息。 表1提供了 CES 服务支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3 Go SDK使用指导 .NET huaweicloud-sdk-net-v3 .Net SDK使用指导 PHP huaweicloud-sdk-php-v3 PHP SDK使用指导 NodeJS huaweicloud-sdk-nodejs-v3 NodeJS SDK使用指导
-
免Agent方式审计数据库 部分数据库类型及版本支持免安装Agent方式,如表1所示。 表1 支持免Agent安装的关系型数据库 数据库类型 支持的版本 GaussDB for MySQL 默认都支持 RDS for SQLServer (华为云审计实例:23.02.27.182148 及其之后的版本支持) 默认都支持 RDS for MySQL 5.6(5.6.51.1及以上版本) 5.7(5.7.29.2及以上版本) 8.0(8.0.20.3及以上版本) DDS 4.0 PostgreSQL (华为云审计实例:23.04.17.123301 及其之后的版本支持) 须知: 当SQL语句大小超过4KB审计时会被截断,会导致审计到的SQL语句不完整。 14(14.4及以上版本) 13(13.6及以上版本) 12(12.10及上版本) 11(11.15及以上版本) 9.6(9.6.24及以上版本) 9.5(9.5.25及以上版本) RDS for MariaDB 默认都支持 免安装Agent模式配置简单、易操作,但较之安装了Agent的DBSS实例,支持的功能上存在如下差异: 统计会话数量时,无法统计成功登录、与失败登录的会话个数。 无法获取数据库访问时客户端的端口号。 由于GaussDB(DWS)服务具有日志审计开关的权限控制策略,只有华为云账号或拥有Security Administrator权限的用户才能开启或者关闭DWS数据库审计开关。 GaussDB默认不开启ddl,用户需要参照GaussDB用户手册操作开启如下配置: audit_system_object = 130023423,操作请参考:GaussDB开发指南。 datastyle=ISO,YMD,保证日期格式为yyyy-MM-dd HH:mm:ss+Z。 图1 免Agent安装流程 表2 快速使用数据库安全审计操作步骤 步骤 配置操作 说明 1 添加数据库 购买数据库安全审计后,您需要将待审计的数据库添加到数据库安全审计实例。 申请数据库安全审计后,您需要将待审计的数据库添加到数据库安全审计实例。 2 开启数据库安全审计 您需要开启数据库安全审计功能,将添加的数据库连接到数据库安全审计实例,才能使用数据库安全审计功能。 3 查看审计结果 数据库安全审计默认提供一条“全审计规则”的审计范围,可以对连接数据库安全审计实例的所有数据库进行审计。开启数据库安全审计后,您可以在数据库安全审计界面查看被添加的数据库的审计结果。 须知: 您可以根据业务需求设置数据库审计规则。有关配置审计规则的详细操作,请参见配置审计规则。
-
背景信息 数据库安全审计支持对华为云上的E CS /BMS自建数据库和RDS关系型数据库进行审计。 数据库安全审计不支持跨区域(Region)使用。待审计的数据库必须和购买申请的数据库安全审计实例在同一区域。 数据库开启SSL时,将不能使用数据库安全审计功能。如果您需要使用数据库安全审计功能,请关闭数据库的SSL。关闭数据库SSL的详细操作,请参见如何关闭数据库SSL?。 有关审计数据的保存说明,请参见数据库安全审计的审计数据可以保存多久?。
-
通过Agent方式审计数据库 非表1中的数据库类型及版本,需采用安装Agent方式开启DBSS服务。 图2 快速使用数据库安全审计流程图 表3 快速使用数据库安全审计操作步骤 步骤 配置操作 说明 1 添加数据库 购买数据库安全审计后,您需要将待审计的数据库添加到数据库安全审计实例。 2 添加Agent 添加的数据库开启审计功能后,您需要为添加的数据库选择Agent的添加方式。 数据库安全审计支持对华为云上的ECS/BMS自建数据库和RDS关系型数据库进行审计,请根据您在华为云上实际部署的数据库选择Agent添加方式。 3 添加安全组规则 Agent添加完成后,您还需要为数据库安全审计实例所在的安全组添加入方向规则TCP协议(8000端口)和UDP协议(7000-7100端口),使Agent与审计实例之间的网络连通,数据库安全审计才能对添加的数据库进行审计。 4 安装Agent(Linux操作系统) 安全组规则添加完成后,您还需要下载Agent,并根据Agent的添加方式在数据库端或应用端安装Agent。 5 开启数据库安全审计 Agent安装成功后,您还需要开启数据库安全审计功能,将添加的数据库连接到数据库安全审计实例,才能使用数据库安全审计功能。 6 查看审计结果 数据库安全审计默认提供一条“全审计规则”的审计范围,可以对连接数据库安全审计实例的所有数据库进行审计。开启数据库安全审计后,您可以在数据库安全审计界面查看被添加的数据库的审计结果。 须知: 您可以根据业务需求设置数据库审计规则。有关配置审计规则的详细操作,请参见配置审计规则。
-
免Agent方式审计数据库 部分数据库类型及版本支持免安装Agent方式,如表1所示。 表1 支持免Agent安装的关系型数据库 数据库类型 支持的版本 GaussDB for MySQL 默认都支持 RDS for SQLServer (华为云审计实例:23.02.27.182148 及其之后的版本支持) 默认都支持 RDS for MySQL 5.6(5.6.51.1及以上版本) 5.7(5.7.29.2及以上版本) 8.0(8.0.20.3及以上版本) DDS 4.0 PostgreSQL (华为云审计实例:23.04.17.123301 及其之后的版本支持) 须知: 当SQL语句大小超过4KB审计时会被截断,会导致审计到的SQL语句不完整。 14(14.4及以上版本) 13(13.6及以上版本) 12(12.10及上版本) 11(11.15及以上版本) 9.6(9.6.24及以上版本) 9.5(9.5.25及以上版本) RDS for MariaDB 默认都支持 免安装Agent模式配置简单、易操作,但较之安装了Agent的DBSS实例,支持的功能上存在如下差异: 统计会话数量时,无法统计成功登录、与失败登录的会话个数。 无法获取数据库访问时客户端的端口号。 由于GaussDB(DWS)服务具有日志审计开关的权限控制策略,只有华为云账号或拥有Security Administrator权限的用户才能开启或者关闭DWS数据库审计开关。 GaussDB默认不开启ddl,用户需要参照GaussDB用户手册操作开启如下配置: audit_system_object = 130023423,操作请参考:GaussDB开发指南。 datastyle=ISO,YMD,保证日期格式为yyyy-MM-dd HH:mm:ss+Z。 图1 免Agent安装流程 表2 快速使用数据库安全审计操作步骤 步骤 配置操作 说明 1 添加数据库 购买数据库安全审计后,您需要将待审计的数据库添加到数据库安全审计实例。 申请数据库安全审计后,您需要将待审计的数据库添加到数据库安全审计实例。 2 开启数据库安全审计 您需要开启数据库安全审计功能,将添加的数据库连接到数据库安全审计实例,才能使用数据库安全审计功能。 3 查看审计结果 数据库安全审计默认提供一条“全审计规则”的审计范围,可以对连接数据库安全审计实例的所有数据库进行审计。开启数据库安全审计后,您可以在数据库安全审计界面查看被添加的数据库的审计结果。 须知: 您可以根据业务需求设置数据库审计规则。有关配置审计规则的详细操作,请参见配置审计规则。
-
步骤三:查看审计结果 您可参照本节内容在总览界面查看审计结果信息,同时也可根据需求在报表界面进行设置,生成报表、下载或预览报表。 查看总览信息。 进入总览入口,如图7所示,查看总览信息。 在总览界面,展示了该实例的审计时长、SQL语句总量、风险总量以及今日语句、今日风险、今日会话量 您可以选择“语句”或“会话”页签,分别查看SQL语句信息和会话分布图。 图7 进入总览入口 生成报表、下载或预览报表。 参照图8进入报表管理界面。 图8 进入报表管理入口 在左侧导航树中,选择“报表”。 在“选择实例”下拉列表框中,选择需要生成审计报表的实例。选择“报表管理”页签。 在需要生成报表的模板所在行的“操作”列,单击“立即生成报表”。 在弹出的对话框中,单击,设置报表的开始时间和结束时间,选择生成报表的数据库。 单击“确定”。 系统跳转到“报表结果”页面,您可以查看报表的生成进度。报表生成后,您可以“预览”或“下载”报表,如图9所示。 如果您需要在线预览报表,请使用Google Chrome或Mozilla FireFox浏览器。 图9 预览或下载报表
-
方案概述 本文档介绍了如何对关系型数据库(应用部署于ECS)进行安全审计。对于部分关系型数据库,DBSS服务支持免安装Agent模式,无需安装Agent,即可开启数据库安全审计。 如果您需要安全审计的数据库类型如表1所示,请参见本节内容。 表1 支持免Agent安装的关系型数据库 数据库类型 支持的版本 GaussDB for MySQL 默认都支持 RDS for SQLServer (华为云审计实例:23.02.27.182148 及其之后的版本支持) 默认都支持 RDS for MySQL 5.6(5.6.51.1及以上版本) 5.7(5.7.29.2及以上版本) 8.0(8.0.20.3及以上版本) GaussDB(DWS) 8.2.0.100及以上版本 PostgreSQL (华为云审计实例:23.04.17.123301 及其之后的版本支持) 须知: 当SQL语句大小超过4KB审计时会被截断,会导致审计到的SQL语句不完整。 14(14.4及以上版本) 13(13.6及以上版本) 12(12.10及上版本) 11(11.15及以上版本) 9.6(9.6.24及以上版本) 9.5(9.5.25及以上版本) RDS for MariaDB 默认都支持 如果您需要安全审计的数据库类型不在表1范围内,请参见审计RDS关系型数据库(安装Agent)。 免安装Agent模式配置简单、易操作,但较之安装了Agent的DBSS实例,支持的功能上存在如下差异: 统计会话数量时,无法统计成功登录、与失败登录的会话个数。 无法获取数据库访问时客户端的端口号。 由于GaussDB(DWS)服务具有日志审计开关的权限控制策略,只有华为云账号或拥有Security Administrator权限的用户才能开启或者关闭DWS数据库审计开关。 GaussDB默认不开启ddl,用户需要需按GaussDB用户手册开启(audit_system_object = 130023423 )配置,同时该配置页中需保证日期格式为yyyy-MM-dd HH:mm:ss+Z(datastyle=ISO,YMD),操作请参考:GaussDB开发指南。
-
方案架构 数据库(GaussDB for MySQL或RDS for MySQL指定版本)将日志传送给DBSS,经过日志数据解析保存至DBSS实例日志库中,进行安全分析、聚合统计、合规分析等操作,实现对数据库的安全审计。 图1 审计RDS关系型数据库(免安装Agent)架构图 本文以GaussDB for MySQL为例,详细信息如表2所示,您需要对该数据库内部违规和不正当操作进行定位追责,满足等保测评数据库审计需求。本节详细介绍该场景下开启数据库安全审计功能和验证审计结果的具体操作。 表2 数据库示例信息说明 数据库类别 RDS数据库 数据库类型 GaussDB for MySQL 兼容的数据库版本 MySQL 8.0 数据库IP地址 192.168.0.237 数据库端口 3306
-
SDK列表 表1提供了GaussDB支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3 Go SDK使用指导
-
迁移准备 权限准备: 当使用 DRS 将本地数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表2所示: 表2 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库的权限设置: 需要确保源数据库MongoDB的账号具备表2的权限,若权限不足,需要在源数据库端创建高权限的账号。 目标数据库的权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库的网络设置: 本地MongoDB数据库实时迁移至本云DDS的场景,一般可以使用VPN网络和公网网络两种方式进行迁移,您可以根据实际情况为本地MongoDB数据库开放公网访问或建立VPN访问。一般推荐使用公网网络进行迁移,该方式下的数据迁移过程较为方便和经济。 目标数据库的网络设置: 若通过VPN访问,请先开通VPN服务,确保源数据库和目标DDS网络互通。 若通过公网网络访问,目标DDS不需要进行设置。 安全规则准备: 源数据库的白名单设置: 若通过公网网络进行迁移,源数据库MongoDB实例需要将具体的DRS迁移实例的弹性公网IP添加到其网络白名单中,确保源数据库MongoDB实例可以与上述弹性公网IP连通。在设置网络白名单之前需要获取DRS迁移实例,具体方法如下: 迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的弹性公网IP。如图4所示: 图4 迁移实例公网弹性IP 以上讲述的是精细配置白名单的方法,还有一种简单设置白名单的方法,在安全允许的情况下,可以将源数据库MongoDB实例的网络白名单设置为0.0.0.0/0,代表允许任何IP地址访问该实例。 若通过VPN网络进行迁移,源库需要将DRS迁移实例的私有IP添加到其网络白名单内,确保源端和目标端网络互通。 上述的网络白名单是为了进行数据迁移设置的,迁移结束后可以删除。 目标数据库安全组规则设置: 目标数据库默认与DRS迁移实例处在同一个VPC,网络是互通的,DRS可以直接写入数据到目标数据库,不需要进行任何设置。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的用户信息以及相关参数,需要自行将上述信息导出后手动添加到目标DDS中。
-
资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 本地MongoDB 数据库版本 MongoDB 4.4 自定义,易理解可识别。 DDS DDS 实例名 dds-test 自定义,易理解可识别。 数据库引擎 DDS - 兼容的数据库版本 4.4 - 可用区类型 单可用区 - 可用区 可用区一 - 性能规格 增强Ⅱ型 - CPU架构 X86 8 vCPUs | 32GB - DRS迁移任务 迁移任务名 DRS-dds 自定义。 源数据库引擎 MongoDB 本示例中源数据库为自建MongoDB,即在华为云弹性云服务器上安装社区版MongoDB。 目标数据库引擎 DDS 本示例中目标数据库为华为云DDS实例。 网络类型 公用网络 本示例中采用公用网络。
-
GaussDB(for MySQL)产品优势 性能强悍:采用计算与存储分离,日志即数据架构,RDMA网络。对于某些业务负载,吞吐量最高可提升至开源MySQL7倍。 弹性扩展:1写15只读节点,分钟级添加只读实例,规格升降级。 高可靠性:跨AZ部署,数据三副本,共享分布式存储,RPO为0,秒级故障倒换。 安全防护:采用共享分布式存储,故障秒级恢复,数据0丢失;采用VPC、安全组、SSL连接和 数据加密 等严格控制安全访问。 高兼容性:兼容MySQL,应用无需改造即可轻松迁移上云。 海量存储:华为自研DFV分布式存储,容量高达128TB,。
-
方案架构 本示例中,数据库源端为ECS自建MySQL,目的端为GaussDB(for MySQL)实例,同时假设ECS和GaussDB(for MySQL)实例在同一个VPC中。部署架构如图1所示。 如果自建MySQL和GaussDB(for MySQL)实例不在同一个VPC内,相比于相同VPC的情况,需要配置两个VPC的对等连接,部署架构图如图2所示。 图1 同一VPC的部署架构 图2 不同VPC场景的部署架构
-
迁移准备 权限准备: 当使用 DRS 将本地数据库的数据迁移到本云云数据库 RDS for MySQL 实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表1所示: 表1 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 SELECT、SHOW VIEW、EVENT。 SELECT、SHOW VIEW、EVENT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。 目标数据库 SELECT、CREATE、ALTER、DROP、DELETE、INSERT、UPDATE、INDEX、EVENT、CREATE VIEW、CREATE ROUTINE、TRIGGER、REFERENCES、WITH GRANT OPTION。 当目标库为8.0.14-8.0.18版本时,还需要有SESSION_VARIABLES_ADMIN权限。 用户迁移时,需要有mysql库的SELECT、INSERT、UPDATE、DELETE权限。 源数据库的权限设置: 需要确保源数据库MySQL的账号具备表1的权限,若权限不足,需要在源数据库端创建高权限的账号。 目标数据库的权限设置: 本云云数据库 RDS for MySQL使用初始账号即可。 网络准备: 源数据库的网络设置: 本地MySQL数据库实时迁移至本云云数据库 RDS for MySQL的场景,一般可以使用VPN网络和公网网络两种方式进行迁移,您可以根据实际情况为本地MySQL数据库开放公网访问或建立VPN访问。一般推荐使用公网网络进行迁移,该方式下的数据迁移过程较为方便和经济。 目标数据库的网络设置: 若通过VPN访问,请先开通华为VPN服务,确保源数据库MySQL和目标端本云云数据库 RDS for MySQL的网络互通。 若通过公网网络访问,本云云数据库 RDS for MySQ L实例 不需要进行任何设置。 安全规则准备: 源数据库的安全规则设置: 若通过公网网络进行迁移,源数据库MySQL需要将DRS迁移实例的弹性公网IP添加到其网络白名单内,使源数据库与本云的网络互通。在设置网络白名单之前,需要获取DRS迁移实例的弹性公网IP,具体方法如下: DRS迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的弹性公网IP。 图4 迁移实例EIP 若通过VPN网络进行迁移,源数据库MySQL需要将DRS迁移实例的私有IP添加到其网络白名单内,使源数据库与本云的网络互通。DRS迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的私有IP。 以上白名单是为了进行迁移针对性设置的,迁移结束后可以删除。 目标数据库安全组规则设置: 目标数据库默认与DRS迁移实例处在同一个VPC,网络是互通的,DRS可以直接写入数据到目标数据库,不需要进行任何设置。 其他事项准备。 DRS支持部分与业务和性能强相关的参数迁移,具体参数列表请参见参数列表。若涉及其他参数需要根据用户具体的业务进行手动设置。
-
资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 其他云MongoDB 数据库版本 MongoDB 4.4 - IP地址 192.168.0.1 仅作为示例。 端口 8635 仅作为示例。 DDS实例 实例名称 dds-test 自定义,易理解可识别。 数据库版本 DDS 4.4 - 可用区类型 单可用区 仅作为示例。 可用区 可用区一 本示例中为可用区一。 性能规格 增强Ⅱ型 4 vCPUs | 16 GB 本示例中选择的规格。实际选择的规格需要结合业务场景选择。 DRS迁移任务 迁移任务名 DRS-test-migrate 自定义。 源数据库引擎 MongoDB - 目标数据库引擎 DDS - 网络类型 公网网络 本示例中采用公网网络。
-
迁移准备 权限准备: 当使用 DRS 将其他云MongoDB数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表2: 表2 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库权限设置: 需要确保源数据库MongoDB的账号权限具备表2的要求。若权限不足,需要在源数据库端开通高权限的账号。 目标数据库权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库需要开放公网访问。 源数据库的网络设置: 源数据库MongoDB实例需要开放公网域名的访问。 目标数据库的网络设置:目标端不需要进行设置。 安全规则准备: 源数据库安全组规则设置: 源数据库MongoDB实例需要将具体的DRS迁移实例的弹性公网IP添加到其网络白名单中,确保源数据库MongoDB实例可以与上述弹性公网IP连通。 在设置网络白名单之前,需要先获取DRS迁移实例的弹性公网IP,具体操作如下: 迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的弹性公网IP。如图4所示: 图4 迁移实例公网弹性IP 以上讲述的是精细配置白名单的方法,还有一种简单设置白名单的方法,在安全允许的情况下,可以将源数据库MongoDB实例的网络白名单设置为0.0.0.0/0,代表允许任何IP地址访问该实例。 上述的网络白名单是为了进行数据迁移设置的,迁移结束后可以删除。 目标数据库安全组规则设置: 目标数据库默认与DRS迁移实例处在同一个VPC,网络是互通的,DRS可以直接写入数据到目标数据库,不需要进行任何设置。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的用户信息以及相关参数,需要自行将上述信息导出后手动添加到目标DDS中。
-
创建RDS for MySQL实例 进入购买云数据库RDS页面。 选择区域“华东-上海一”。填选实例信息后,单击“立即购买”。 图1 选择引擎版本信息 图2 选择规格信息 图3 选择已规划的网络信息 图4 高级配置 进行规格确认。 如果需要重新选择实例规格,单击“上一步”,回到上个页面修改实例信息。 如果规格确认无误,单击“提交”,完成购买实例的申请。 参考如下步骤,在RDS实例管理界面,为3创建的RDS实例绑定弹性公网IP。 在“实例管理”页面,选择指定的实例,单击实例名称,进入实例概览页面。 图5 实例管理 选择“连接管理”页签,单击“公网地址”处的“绑定”。 在弹出框中,显示“未绑定”状态的弹性公网IP,选择已规划的弹性公网IP,单击“是”,提交绑定任务。 图6 绑定弹性公网IP
-
通过DRS迁移MySQL分库分表总流程 本实践的主要任务流如图1所示: 图1 操作流程 表1 迁移流程 序号 步骤 说明 1 迁移前构造数据 迁移前在源端数据库构造数据,供迁移后查看是否迁移成功。 2 目标端DDM准备 创建VPC和安全组:为创建实例准备网络资源。 创建DDM实例:创建目标端DDM实例。 创建RDS for MySQL实例:创建DDM下关联的RDS for MySQL实例。 创建DDM账号:创建连接DDM逻辑库的账号。 创建逻辑库并关联RDS for MySQL实例:关联DDM与RDS for MySQL实例。 创建目标库表结构:在目标库创建表结构,供迁移数据使用。 3 迁移数据库 介绍创建DRS迁移任务和迁移的整体流程。 4 迁移后进行数据校验 通过DRS数据对比功能验证数据迁移结果。 父主题: MySQL分库分表迁移到DDM
-
资源规划 表1 资源规划 类别 子类 规划 备注 RDS RDS实例名 rds-mysql 自定义,易理解可识别。 数据库版本 MySQL 5.7 - 实例类型 单机 本示例中为单机。 实际使用时,为提升业务可靠性,推荐选择主备RDS实例。 存储类型 SSD云盘 - 可用区 可用区3 本示例中为单机。 实际业务场景推荐选择主备RDS实例,此时建议将两个实例创建在不同的可用区,提升业务可靠性。 规格 通用性 4 vCPUs | 8GB - DRS迁移任务 迁移任务名 DRS-mysql 自定义 源数据库引擎 MySQL 本示例中源数据库为自建MySQL,即在华为云弹性云服务器上安装社区版MySQL。 目标数据库引擎 MySQL 本示例中目标数据库也是MySQL,使用的云数据库 RDS for MySQL实例。 网络类型 VPC网络 本示例中采用“VPC网络”。 父主题: 自建MySQL迁移到RDS for MySQL
-
迁移准备 权限准备: 当使用 DRS 将ECS自建MongoDB数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表2: 表2 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库权限设置: 需要确保源数据库MongoDB的账号权限具备表2的要求。若权限不足,需要在源数据库端开通高权限的账号。 目标数据库权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库所在的region需要和目标DDS所在的region保持一致。 源数据库可以与目标DDS实例在同一个VPC,也可以不在同一个VPC。 当不在同一个VPC的时候,要求源数据库实例和目标端DDS实例所处的子网处于不同网段,此时需要通过建立对等连接实现网络互通。 具体操作请参见《虚拟私有云用户指南》中“VPC对等连接”章节。 当在同一VPC的时候,网络默认是互通的。 安全规则准备: 同一VPC场景下,默认网络是连通的,不需要单独设置安全组。 不同VPC场景下,通过建立对等连接就可以实现网络互通,不需要单独设置安全组。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的用户信息以及相关参数,需要自行将上述信息导出后,手动添加到目标DDS中。
-
资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 ECS ECS名称 ecs-mongodb 自定义,易理解可识别。 规格 s6.xlarge.2 4vCPUs|8GiB 本示例中选择的规格。 实际选择的规格需要结合业务场景选择,请参考弹性云服务器的实例规格。 操作系统 CentOS 7.6 64 - 系统盘 通用型SSD 40GiB - 数据盘 超高IO 100GiB - 弹性IP 现在购买 因为迁移任务会选择“公网网络”,因此此处需要购买弹性IP。 DDS DDS 实例名 dds-test 自定义,易理解可识别。 数据库引擎 DDS - 兼容的数据库版本 4.4 - 可用区类型 单可用区 - 可用区 可用区一 - 性能规格 增强Ⅱ型 - CPU架构 X86 8 vCPUs | 32GB - DRS迁移任务 迁移任务名 DRS-dds 自定义。 源数据库引擎 MongoDB 本示例中源数据库为自建MongoDB,即在华为云弹性云服务器上安装社区版MongoDB。 目标数据库引擎 DDS 本示例中目标数据库为华为云DDS实例。 网络类型 公用网络 本示例中采用公用网络。
-
数据采集 在使用 APM 服务过程中用户开启APM数据采集开关后,APM仅采集应用性能指标及调用链相关数据,不涉及个人隐私数据。所采集的数据仅用于应用的性能分析和故障诊断,不会用于其他商业目的。 APM服务针对用户数据上报设置租户级限流,分别对性能指标数据、调用链数据、事务数据、链路追踪指标数据、Profiler数据设置不同的限流阈值。超过阈值则触发限流,停止上报,返回429状态码。 表1 限流阈值 数据类型 性能指标数据 调用链数据 事务数据 链路追踪指标数据 Profiler数据 限流阈值 1000000笔/10秒/租户 1000000笔/10秒/租户 1000000笔/10秒/租户 500000笔/分钟/租户 1000000笔/10秒/租户 表2 数据采集 数据类型 采集数据 传输方式 存储方式 数据用途 时限 性能指标数据 JVM相关数据、异常、数据库、SQL语句以及中间件调用相关的数据。 通过WSS方式传输 APM服务端按照租户隔离存储 指标查看页面展示 免费版7天,企业版30天,到期彻底删除。 调用链数据 调用链event数据,包含中间件调用的相关数据。 通过WSS方式传输 APM服务端按照租户隔离存储 调用链前台查询展示 免费版7天,企业版30天,到期彻底删除。 资源信息 服务类型、服务名称、创建时间、删除时间、所在节点地址和服务发布端口。 通过WSS方式传输 APM服务端按照租户隔离存储 资源库前台查询展示 免费版7天,企业版30天,到期彻底删除。 资源属性 系统类型、系统启动事件、CPU个数、服务执行用户名称、服务进程id、服务的PodID、CPU标志、系统版本、服务使用的Web框架、JVM版本、时区、系统名称、采集器版本以及LastMail的Url。 通过WSS方式传输 APM服务端按照租户隔离存储 资源库前台查询展示 免费版7天,企业版30天,到期彻底删除。 链路追踪指标数据 分布式应用的完整调用链路,提供了拓扑、接口调用、数据库、异常等数据。 通过grpc方式传输 APM服务端按照租户隔离存储 链路追踪前台查看页面展示 链路追踪调用链公测期间仅支持2天存储,到期彻底删除。 其他采集数据存储时限:免费版7天,企业版30天,到期彻底删除。 前端性能指标数据 页面加载性能、JS错误数、服务流量、API请求相关数据。 通过https方式传输 APM服务端按照租户隔离存储 前端监控前台查看页面展示 免费版7天,企业版30天,到期彻底删除。 Profiler 应用程序运行过程中CPU、内存和延时的使用情况。 通过websocket方式传输 APM服务端按照租户隔离存储 指标查看页面展示 7天,到期彻底删除。 表3 采集项限制说明 采集项名称 最大值 监控项默认最大行数 500行 SQL 默认长度限制 2000字符 SQL Result Body体默认采集数量限制 100个 SQL Result Body体默认采集内容大小限制 999字符 Redis Body体默认长度限制 100字符 Mongo 最大集群数 10个 Mongo command默认长度限制 2000字符 Hbase command默认长度限制 500字符 Es RestClient上限 10个 Cassandra CQL默认长度限制 2000字符 Cassandra Session上限 10个 Kafka Mbean采集ObjectName上限 100个 Kafka ClientId对应IP缓存上限 100个 RabbitMq连接地址上限 20个 RabbitMq 每个地址最大缓存连接数 100个 RabbitMq Consumer上限 500个 RabbitMq 每个Consumer最大缓存Channel数 100个 RabbitMq 每个Channel没有ACK的消息数 3000条 RabbitMq 缓存的手动ACK Consumer个数 20个 RocketMq PID上限 20个 RocketMq ClientId上限 20个 Jetcd Tag最大长度 500字符 HttpClient连接池上限 10条 连接池调用链默认上报时间阈值 1毫秒 Dubbo Invocation长度限制 500字符 Dubbo Attachment长度限制 500字符 URL Body体默认长度限制 9999字符 URL 采集应用code body长度限制 0字符 Java Method Body体长度限制 8192字符
-
参数说明 UNIQUE 创建唯一性索引,每次添加数据时检测表中是否有重复值。如果插入或更新的值会引起重复的记录时,将导致一个错误。 目前只有行存表B-tree索引和列存表的B-tree索引支持唯一索引。 schema_name 要创建的索引所在的模式名。指定的模式名需与表所在的模式相同。 index_name 要创建的索引名,索引的模式与表相同。 取值范围:字符串,要符合标识符的命名规范。 table_name 需要为其创建索引的表的名字,可以用模式修饰。 取值范围:已存在的表名。 USING method 指定创建索引的方法。 取值范围: btree:B-tree索引使用一种类似于B+树的结构来存储数据的键值,通过这种结构能够快速的查找索引。btree适合支持比较查询以及查询范围。 gin:GIN索引是倒排索引,可以处理包含多个键的值(比如数组)。 gist:Gist索引适用于几何和地理等多维数据类型和集合数据类型。 Psort:Psort索引。针对列存表进行局部排序索引。 行存表支持的索引类型:btree(行存表缺省值)、gin、gist。列存表支持的索引类型:Psort(列存表缺省值)、btree、gin。 column_name 表中需要创建索引的列的名字(字段名)。 如果索引方式支持多字段索引,可以声明多个字段。最多可以声明32个字段。 expression 创建一个基于该表的一个或多个字段的表达式索引,通常必须写在圆括弧中。如果表达式有函数调用的形式,圆括弧可以省略。 表达式索引可用于获取对基本数据的某种变形的快速访问。比如,一个在upper(col)上的函数索引将允许WHERE upper(col) = 'JIM'子句使用索引。 在创建表达式索引时,如果表达式中包含IS NULL子句,则这种索引是无效的。此时,建议用户尝试创建一个部分索引。 COLLATE collation COLLATE子句指定列的排序规则(该列必须是可排列的数据类型)。如果没有指定,则使用默认的排序规则。 opclass 操作符类的名字。对于索引的每一列可以指定一个操作符类,操作符类标识了索引那一列的使用的操作符。例如一个B-tree索引在一个四字节整数上可以使用int4_ops;这个操作符类包括四字节整数的比较函数。实际上对于列上的数据类型默认的操作符类是足够用的。操作符类主要用于一些有多种排序的数据。例如,用户想按照绝对值或者实数部分排序一个复数。能通过定义两个操作符类然后在建立索引时选择合适的类。 ASC 指定按升序排序 (默认)。本选项仅行存支持。 DESC 指定按降序排序。本选项仅行存支持。 NULLS FIRST 指定空值在排序中排在非空值之前,当指定DESC排序时,本选项为默认的。 NULLS LAST 指定空值在排序中排在非空值之后,未指定DESC排序时,本选项为默认的。 NULLS [ NOT ] DISTINCT | NULLS IGNORE 指定Unique唯一索引中索引列NULL值的处理方式。 默认取值:该参数默认取值为空,即NULL值可重复插入。 在对插入的新数据和表中原始数据进行列的等值比较时,对于NULL值有以下三种处理方式: NULLS DISTINCT:NULL值互不相等,即NULL值可重复插入。 NULLS NOT DISTINCT:NULL值相等。若索引列全为NULL,则NULL值不可重复插入;部分索引列为NULL,只有非NULL值不相等,才可成功插入数据。 NULLS IGNORE:在等值比较时跳过NULL值。若索引列全为NULL,则NULL值可重复插入;部分索引列为NULL,只有非NULL值不相等,才可成功插入数据。 三种处理方式具体的行为如下表所示: 表1 唯一索引中索引列NULL值的处理方式 字段控制 索引列全为NULL 部分索引列为NULL NULLS DISTINCT 可重复插入 可重复插入 NULLS NOT DISTINCT 不可重复插入 非NULL值相等,不可插入;非NULL值不相等,则插入成功 NULLS IGNORE 可重复插入 非NULL值相等,不可插入;非NULL值不相等,则插入成功 COMMENT 'text' 指定索引的注释信息。 WITH ( {storage_parameter = value} [, ... ] ) 指定索引方法的存储参数。 取值范围: 只有GIN索引支持FASTUPDATE,GIN_PENDING_LIST_LIMIT参数。GIN和Psort之外的索引都支持FILLFACTOR参数。所有索引都支持INVISIBLE参数。 FILLFACTOR 一个索引的填充因子(fillfactor)是一个介于10和100之间的百分数。 取值范围:10~100 FASTUPDATE GIN索引是否使用快速更新。 取值范围:ON,OFF 默认值:ON GIN_PENDING_LIST_LIMIT 当GIN索引启用fastupdate时,设置该索引pending list容量的最大值。 取值范围:64~INT_MAX,单位KB。 默认值:gin_pending_list_limit的默认取决于GUC中gin_pending_list_limit的值(默认为4MB) INVISIBLE 控制优化器是否生成索引扫描相关计划。 取值范围: ON表示不生成索引扫描相关计划。 OFF表示生成索引扫描相关计划。 默认值:OFF WHERE predicate 创建一个部分索引。部分索引是一个只包含表的一部分记录的索引,通常是该表中比其他部分数据更有用的部分。例如,有一个表,表里包含已记账和未记账的定单,未记账的定单只占表的一小部分而且这部分是最常用的部分,此时就可以通过只在未记账部分创建一个索引来改善性能。另外一个可能的用途是使用带有UNIQUE的WHERE强制一个表的某个子集的唯一性。 取值范围:predicate表达式只能引用表的字段,它可以使用所有字段,而不仅是被索引的字段。目前,子查询和聚集表达式不能出现在WHERE子句里。 PARTITION index_partition_name 索引分区的名称。 取值范围:字符串,要符合标识符的命名规范。 UNUSABLE 建表或者索引分区上的索引时支持创建状态为UNUSABLE的索引。该参数仅8.3.0.100及以上集群版本支持。
共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
推荐文章