更新时间:2024-10-24 GMT+08:00

创建评估项目

操作场景

创建数据库评估是对源库的基本信息,以及特定的源库对象进行SQL采集,分析生成评估报告,是进行数据库迁移的必要前提,通过对源数据库的评估,采集出源库Schema数量,评估迁移工作量以及迁移风险,推荐合适目标等,可以帮助用户在迁移时,进行决策与工作规划。

使用建议

  • 由于连接源库采集对象,会影响源库性能,建议采用非生产环境数据库,或者在业务低峰期进行评估。
  • GoldenDB为源库时,建议使用CN节点上用户来创建评估任务。

约束限制

  • 源数据库为MySQL或GoldenDB时用户名称不支持特殊字符,包括单引号、双引号、反斜杠等。
  • 同一套源库中UGO不支持评估同名的重载函数。
  • 每个用户最多支持10评估任务配额。

操作步骤

  1. 登录UGO控制台。
  2. 单击左侧导航栏结构迁移 > 数据库评估
  3. 在评估数据库页面,单击右上角的“创建项目”
  4. 查看“源数据库准备和授权”,源库准备完成后,单击“启动创建”
  5. 进入“基本信息”页面,完成基本信息的填写。具体参数详见表1

    图1 创建评估项目

  6. 基本信息填写完成后,单击“开始测试”

    • 测试连接成功:“下一步”按钮高亮显示。
    • 测试连接失败:给出错误提示“无法连接到数据库”,详情可参考测试连接到数据库报错

  7. (可选项)测试网络稳定性。测试网络稳定性成功仅表示当前测试时网络时延低,无丢包或丢包率很低。该测试过程需要持续10到15s。
  8. 单击“下一步”,进入预检查页面。

    图2 Oracle为源库预检查

  9. 所有结果均成功后,单击“下一步”。进入选择评估范围页面。参数配置详情参见表2表3

    图3 选择评估范围
    • 程序只会采集用户选择范围内的数据库对象,即勾选的Schema下的对象。
    • 所有采集的数据存储在租户区的源数据库中,数据库密码会加密存储,相关数据只有用户在UGO界面可见。
    • 当用户删除评估任务时,用户数据将被删除。
    • 仅当Oracle为源数据库时,支持动态SQL相关评估,以及对象级权限采集。

  10. 选择完成后,单击“下一步”,进入任务确认页面。

    • 显示基础信息、预检查情况、选定的目标数据库、已选择及未选择的schema和对象类型。
    • GoldenDB为源时,数据库配置和实例数量不显示。
    • Microsoft SQL Server为源数据库时,数据库操作系统、连接串、数据库时区、数据库配置和数据库内存信息不显示。
    图4 任务确认-Oracle为源

    不同源数据库在任务确认页面展示的参数略有不同,请以实际为准。

  11. 检查无误后,单击“创建”。显示“项目创建成功”
  12. 单击“确定”,返回数据库评估页面,用户可以看到最新创建的评估项目已在列表中。

    需要经过数据采集、项目评估和预迁移评估,可在“项目状态”中查看实时状态。也可“停止”“恢复”正在评估的项目。
    图5 创建成功
    • 一个租户下,只能创建10个评估项目。
    • “项目状态”“进行中 待确认目标数据库”之前,可停止及恢复正在创建的评估项目。当“项目状态”“进行中 待确认目标数据库”时,可直接确认目标数据库,也可以“重新评估”。但GoldenDB源库不支持“重新评估”
    • 等待时间依据所选对象数量而定。
    • 评估完成后,可单击具体“项目名称”查看数据库评估结果
    • 数据采集过程中,如果与源数库的连接中断,系统内部的自动重试机制会定期测试其与源数据库的连接,并重试连接。下次重试连接时间:当前时间 + 检查测试连接和网络稳定性连接所需的时间 + 重试睡眠间隔。每次检查测试连接和网络稳定性连接所需的时间有几秒的误差。因此,用户可能会看到两个重试时间之间相差几秒。

参数说明

表1 基本详情参数说明

参数名称

说明

项目名称

在项目列表中显示的名称。

长度范围为5到50个字符,只允许包含英文字母、数字、下划线、中划线,不区分大小写且必须以字母开头、数字或字母结束的唯一名称。

异常通知方式(可选)

默认方式为SMN主题。

若出现异常情况,是否通过消息通知服务(Simple Message Notification)向用户发送消息。

若需要发送消息,需要先创建SMN主题,具体请参见创建主题

说明:

后续操作

创建完主题后,您就可以添加订阅了。完成创建和添加订阅后,后续的告警通知即可通过SMN服务发送到您配置的订阅终端。

企业项目

对于已成功关联企业项目的用户,仅需在“企业项目”下拉框中选择目标项目。

如果需要自定义企业项目,请前往项目管理服务进行创建。关于如何创建项目,详见《项目管理用户指南》。

源数据库类型

请选择源数据库类型。当前支持的源库类型参见支持的数据库

如果您需要选择GoldenDB、Microsoft SQL Server-2012/14/16/17/19/22或PostgreSQL-10/11/12/13/14/15为源库,需要在管理控制台右上角,选择“工单 > 新建工单”,联系客服开通白名单。

说明:

若选择MySQL为源数据库,需在源数据库中进行如下设置,启用CPU计数。

SET GLOBAL innodb_monitor_enable = cpu_n;

网络类型(可选)

公网网络:通过弹性公网IP(Elastic IP,EIP)进行源库连接。

如果源库网络有IP白名单限制,请将弹性公网IP添加至源库网络白名单,确保UGO可以连接源库。

  • 亚太-新加坡弹性公网IP:110.238.109.54
  • 拉美-圣地亚哥弹性公网IP:159.138.116.198

连接方法

可选择“服务名称”“连接字符串”。默认选择“服务名称”。以下以选择服务名称为例。

后续信息依据此处选择而变化显示。

  • Oracle:
    兼容IPv4的JDBC格式:
    • ip:port:databaseName
    • ip:port/databaseName
    • jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ip)(PORT=port)))(CONNECT_DATA=(SERVICE_NAME=databaseName)))
    • jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=ip)(PORT=port)))(CONNECT_DATA=(SERVICE_NAME=databaseName)))
  • MySQL:
    兼容IPv4的JDBC格式:
    • jdbc:mysql://ip:port/databaseName?useUnicode=true&characterEncoding=UTF-8
    • jdbc:mysql://ip:port/databaseName?useUnicode=true&characterEncoding=UTF-8&useSSL=true&requireSSL=true
    • jdbc:mysql://ip:port/databaseName?useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
    • jdbc:mysql://address=(protocol=tcp)(host=ip)(port=port)/databaseName?useUnicode=true&characterEncoding=UTF-8
    • jdbc:mysql://address=(protocol=tcp)(host=ip)(port=port)/databaseName?useUnicode=true&characterEncoding=UTF-8&useSSL=true&requireSSL=true
    • jdbc:mysql://address=(protocol=tcp)(host=ip)(port=port)/databaseName?useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
  • PostgreSQL:

    兼容IPv4的JDBC格式:

    • jdbc:postgresql://ip:port/databaseName
  • GoldenDB:
    兼容IPv4的JDBC格式:
    • jdbc:mysql://ip:port/databaseName?useUnicode=true&characterEncoding=UTF-8
    • jdbc:mysql://ip:port/databaseName?useUnicode=true&characterEncoding=UTF-8&useSSL=true&requireSSL=true
    • jdbc:mysql://ip:port/databaseName?useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
    • jdbc:mysql://address=(protocol=tcp)(host=ip)(port=port)/databaseName?useUnicode=true&characterEncoding=UTF-8
    • jdbc:mysql://address=(protocol=tcp)(host=ip)(port=port)/databaseName?useUnicode=true&characterEncoding=UTF-8&useSSL=true&requireSSL=true
    • jdbc:mysql://address=(protocol=tcp)(host=ip)(port=port)/databaseName?useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
说明:
  • 连接字符串,需使用标准的JDBC连接源数据库。
  • Microsoft SQL Server为源数据库时,仅能选择“服务名称”进行连接。

主机类型

请选择主机名或者主机IP地址。

主机名/主机IP地址

选择主机IP地址:不支持IPv6。

选择主机名:

  • 主机名不能为空。
  • 支持多个主机名,总长度不超过1024位,各个主机名之间用英文逗号分隔。
  • 单个主机名长度不超过253位,不允许包含以下特殊符号'!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '+', '=', '[', ']', '{', '}', '|', '\', ':', ';', '<', '>', ',', '?', '/'。

数据库名称

待评估源数据库名称。

源数据库名称需要满足以下规则:

  • 由字母、数字、.、_、-、$、#组成。
  • 长度是2-128个字符。
  • 必须以字母、数字、.、_、-开头且允许使用引号(")包裹的名称。
说明:

当MySQL为源数据库时,不显示该参数。

主机端口

数据库的端口。端口范围为1-65535。

用户名

源数据库的用户名,最多128个字符。建议连接用户应具有管理员角色,但不要使用sys用户。

请输入由字母、数字、.、_、-、$、#组成,长度是2-128个字符,必须以字母、数字、.、_、-开头且允许使用"包裹的用户名。

密码

源数据库的有效密码,最多50个字符。

SSL类型

当前“单向SSL”连接不可用,请选择“不使用SSL”进行连接。

  • 不使用SSL:如果不启用SSL安全协议,数据安全可能存在潜在风险。
  • 单向SSL:将对数据库身份进行认证并启用安全加密传输。
    • 上传文件:上传JKS类型的根证书文件。
    • 信任密码:用于访问证书的信任库密码。
说明:
  • SSL(Secure Socket Layer,安全套接层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。如果不启动SSL安全连接,请自行承担数据安全风险。
  • Oracle-10g/11g为源库时,不支持单向SSL连接。
  • PostgreSQL为源库时,仅支持上传PEM类型的SSL证书,且不需要输入“信任密码”

数据收集模式

仅Oracle为源数据库时可选择“从DBA视图”还是“从所有视图”中采集数据。默认选择“从DBA视图”

  • 从DBA视图:从整个数据库实例中的对象进行数据采集。
  • 从所有视图:当前用户可以访问的所有对象(包含用户拥有的对象)进行数据库采集。

标签(可选)

可使用TMS的预定义标签功能将相同的标签添加到不同的云资源中。具体请查看标签管理服务 TMS

输入一对一的“键”和“值”后单击“添加”

最多可添加20个标签。具体操作详见标签

表2 选择评估范围参数说明

参数

说明

选择需采集的对象类型

默认“全选”,也可依据实际情况手动勾选需采集的对象类型。

说明:

当源库类型为MySQL且版本在8.0以下时,MySQL不支持ROLE对象的创建,所以UGO不采集ROLE对象。

当源库为GoldenDB时,GoldenDB不支持ROLE对象的创建,所以UGO不采集ROLE对象。

选择目标数据库

依据实际情况,勾选所需的目标数据库类型作为目标数据库。也可全选,单击

若您确定某个数据库不作为目标数据库,可不将其作为选定的目标数据库,该数据库将不参与评估。

选择需采集的schema

依据实际情况手动勾选需采集的schema,可搜索也可全选,单击

若schema较多,可依据Schema名称进行搜索。所选Schema信息及总数会显示在右侧。

须知:
  • 如果有多个具有相同名称(忽略大小写)的Schema,请选择其中一个。
  • 采集的Oracle Lightweight Jobs将作为PROGRAM对象类型。
表3 高级配置参数说明

参数

说明

目标数据库评估

设置评估项目是否进行目标数据库评估。默认勾选“跳过目标数据库评估”

  • 勾选“跳过目标数据库评估”:仅采集数据,不会进行目标库的评估和分析,不生成评估报告,在查看数据库评估结果中目标数据库分析页签将仅显示目标数据库选择。建议在已确定要迁移的目标数据库时选择。

    若成功创建评估任务后需要再次打开评估功能,可在评估项目列表中下拉选择“重新评估”。在重新评估后,才可以在查看数据库评估结果时,查看目标数据库评估结果。

  • 不勾选“跳过目标数据库评估”: 生成目标数据库的评估报告。

动态SQL评估

设置评估项目是否针对动态SQL进行评估。默认勾选“打开”

  • 勾选“打开”:分析对象中包含的动态SQL,生成报告。
  • 取消勾选“打开”:不对动态SQL进行分析。