华为云用户手册

  • PostgreSQL To GaussDB 数据类型转换说明 源数据库数据类型 转换后数据类型 相关的转换配置 SMALLINT SMALLINT - INTEGER INTEGER - BIGINT BIGINT - INTEGER INTEGER - REAL REAL - DOUBLE PRECISION DOUBLE PRECISION - NUMERIC NUMERIC - CHARACTER VARYING CHARACTER VARYING 字符数据类型转换 选择配置项的值为“扩展字符数据类型char/varchar长度。”,可与DRS转换后在GaussDB 存储等价。 CHARACTER CHARACTER 字符数据类型转换 选择配置项的值为“扩展字符数据类型char/varchar长度。”,可与DRS转换后在GaussDB 存储等价。 BIT BIT - BIT VARYING BIT VARYING - BOOLEAN BOOLEAN - BYTEA BYTEA - TEXT TEXT - TIME WITHOUT TIME ZONE TIME WITHOUT TIME ZONE - TIME WITH TIME ZONE TIME WITH TIME ZONE - TIMESTAMP WITHOUT TIME ZONE TIMESTAMP WITHOUT TIME ZONE - TIMESTAMP WITH TIME ZONE TIMESTAMP WITH TIME ZONE - INTERVAL INTERVAL - CIDR CIDR - PATH PATH - BOX BOX - LSEG LSEG - MACADDR MACADDR - POINT POINT - POLYGON POLYGON - INET INET - TSQUERY TSQUERY - TSVECTOR TSVECTOR - UUID UUID - JSON JSON - JSONB JSONB - 配置项说明可参考PostgreSQL To GaussDB配置项使用说明。 父主题: 数据类型转换说明
  • MySQL To GaussDB数据类型转换说明 源数据库数据类型 转换后数据类型(GaussDB 8.0以前版本) 转换后数据类型(GaussDB 8.0及其以后版本) 相关的转换配置 CHAR CHAR CHAR 字符集长度转换 选择配置项的值为“扩展字符数据类型长度”,可与DRS转换后在GaussDB 存储等价。 VARCHAR VARCHAR VARCHAR 字符集长度转换 选择配置项的值为“扩展字符数据类型长度。”,可与DRS转换后在GaussDB 存储等价。 BINARY BYTEA BYTEA - VARBINARY BYTEA BYTEA - TINYBLOB BYTEA TINYBLOB - BLOB BLOB BLOB BLOB类型转换 选择配置项的值为“BLOB类型保持不变”,可与DRS转换后在GaussDB 存储等价。 MEDIUMBLOB BYTEA MEDIUMBLOB - LONGBLOB BYTEA LONGBLOB LONGBLOB类型转换 选择配置项的值为“迁移脚本,将LONGBLOB类型转换为BYTEA类型。”,可与DRS转换后在GaussDB 存储等价。 TINYTEXT TEXT TINYTEXT - TEXT TEXT TEXT TEXT数据类型转换 选择配置项的值为“不转换,保留TEXT数据类型,并注释长度”,可与DRS转换后在GaussDB 存储等价。 MEDIUMTEXT TEXT MEDIUMTEXT - LONGTEXT CLOB LONGTEXT LONGTEXT类型转换 选择配置项的值为“迁移脚本,将LONGTEXT类型转换为CLOB类型。”,可与DRS转换后在GaussDB 存储等价。 ENUM VARCHAR VARCHAR - SET SET SET - TINYINT SMALLINT TINYINT TINYINT类型转换 选择配置项的值为“转换TINYINT类型。”,可与DRS转换后在GaussDB 存储等价。 类型转换后是否添加CHECK约束 选择配置项的值为“不添加CHECK约束。”,可与DRS转换后在GaussDB 存储等价。 SMALLINT SMALLINT SMALLINT 无符号整数类型转换 选择配置项的值为“类型保持不变,不做转换”,可与DRS转换后在GaussDB 存储等价。 类型转换后是否添加CHECK约束 选择配置项的值为“不添加CHECK约束。”,可与DRS转换后在GaussDB 存储等价。 MEDIUMINT INTEGER MEDIUMINT 有符号整数类型转换 选择配置项的值为“类型保持不变,不做转换”,可与DRS转换后在GaussDB 存储等价。 无符号整数类型转换 选择配置项的值为“类型保持不变,不做转换”,可与DRS转换后在GaussDB 存储等价。 类型转换后是否添加CHECK约束 选择配置项的值为“不添加CHECK约束。”,可与DRS转换后在GaussDB 存储等价。 INT INT INT - BIGINT BIGINT BIGINT - FLOAT FLOAT4 FLOAT FLOAT类型转换 选择配置项的值为“类型转换为DOUBLE PRECISION,注释掉精度和标度,注释掉符号和填充关键字(UNSIGNED、SIGNED、ZEROFILL)”,可与DRS转换后在GaussDB 存储等价。 类型转换后是否添加CHECK约束 选择配置项的值为“不添加CHECK约束。”,可与DRS转换后在GaussDB 存储等价。 DOUBLE DOUBLE PRECISION DOUBLE DOUBLE类型转换 选择配置项的值为“类型转换为DOUBLE PRECISION,注释掉精度和标度,注释掉符号和填充关键字(UNSIGNED、SIGNED、ZEROFILL)”,可与DRS转换后在GaussDB 存储等价。 类型转换后是否添加CHECK约束 选择配置项的值为“不添加CHECK约束。”,可与DRS转换后在GaussDB 存储等价。 DATE DATE DATE - DATETIME TIMESTAMP DATETIME - TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAMP - TIME TIME TIME - BIT BIT BIT - JSON JSON JSON - YEAR SMALLINT SMALLINT 类型转换后是否添加CHECK约束 选择配置项的值为“不添加CHECK约束。”,可与DRS转换后在GaussDB 存储等价。 DECIMAL DECIMAL DECIMAL - NUMERIC NUMERIC NUMERIC - 配置项说明可参考MySQL To GaussDB配置项使用说明。 父主题: 数据类型转换说明
  • 日期时间函数转换说明 在使用UGO进行语法转换时,如果所选目标库为GaussDB 3.2或3.2以下的版本,由于GaussDB部分时间函数与事务相关详情可参见表1。这些函数返回的都是事务的开始时间,而在源库中获取的为当前时间,在长事务的场景下,源库和目标库GaussDB得到的时间不一致。因此在UGO转换后,如果转换后的语句中存在上述函数,则用户需要自行分析上述函数是否存在长事务中并确认影响,如有影响需手工修改保证最终的准确性。 表1 与事务相关的时间函数说明 序号 函数名称 1 CURRENT_DATE 2 CURRENT_TIME 3 CURRENT_TIME(precision) 4 CURRENT_TIMESTAMP(precision) 5 LOCALTIME 6 LOCALTIMESTAMP 7 LOCALTIME(precision) 8 LOCALTIMESTAMP(precision) 父主题: 语法转换说明
  • MySQL to GaussDB 主备版(M兼容)-8.100企业版配置项使用说明 问题描述 配置建议 建议值 GaussDB 不支持某些MySQL的系统权限,系统权限授予失败。 建议配置“系统权限”解决该类问题。 注释整个SQL脚本。 影响:此配置将注释整个SQL,不会授予任何系统权限。 MySQL中索引名和约束名以表为单位,不同表的约束和索引可以同名,而GaussDB以schema为单位,保留原始名称迁移后重名的索引和约束会产生冲突。 建议配置“索引/约束名称防止冲突映射策略”解决该类问题。 将表名与索引/约束名称拼接防止命名冲突,当拼接后的名称超过63字节时使用SHA-1进行散列。 影响:解决命名冲突问题,但是当名称较长时丧失名称的可读性,且在后续的DROP、RENAME等维护过程中,也需要使用UGO转换SQL才能正确执行。 GaussDB不支持ZEROFILL关键字。 建议配置“ZEROFILL关键字转换”。 注释ZEROFILL关键字,且如果原来没有UNSIGNED则添加UNSIGNED关键字。 影响:在MySQL中ZEROFILL一般和UNSIGNED一起配合使用,即使只使用ZEROFILL也表示是无符号类型。此配置将注释掉ZEROFILL关键字,并添加UNSIGNED关键字,需要注意显示宽度不影响数据存储但可能影响业务使用。 GaussDB不支持视图的SECURITY子句。 建议配置 “SQL SECURITY子句” 解决该类问题。 迁移SECURITY子句。 GaussDB不支持数据库对象中使用Definer。 建议配置“对象定义者”解决该类问题。 如果创建对象时指定用户,将转换为ALTER OWNER。 影响:DEFINER将迁移成ALTER OWNER语句,需要保证目标库中相应的对象存储,否则该对象将迁移失败。 GaussDB不支持视图的CHECK OPTION子句。 建议配置 “视图检查选项” 解决该类问题。 迁移CHECK OPTION。 GaussDB分区表不支持多个分区键。 建议配置“分区表多列分区键”解决该类问题。 使用主键或唯一键的第一列作为分区键。 GaussDB不支持某些MySQL的字符集。 建议配置 “字符集” 解决该类问题。 如果目标库不支持CHARSET,注释CHARSET。 GaussDB不支持某些MySQL的排序规则。 建议配置 “排序规则” 解决该类问题。 如果目标库不支持COLLATE,注释COLLATE。 GaussDB不支持set数据类型。 建议配置 “set数据类型转换” 解决该类问题。 转为VARCHAR。 GaussDB不支持enum数据类型。 建议配置 “enum数据类型转换” 解决该类问题。 转为VARCHAR。 父主题: 配置说明
  • GoldenDB To GaussDB配置项使用说明 问题描述 配置建议 建议值 GaussDB 3.2 企业版开始支持指定表的字符集。 建议配置“字符集”解决该类问题。 如果目标库不支持CHARSET,注释CHARSET。 GaussDB 3.2 企业版开始支持指定表的排序规则。 建议配置“排序规则”解决该类问题。 如果目标库不支持COLLATE,注释COLLATE。 GaussDB不支持视图的SECURITY子句。 建议配置“SQL SECURITY子句”解决该类问题。 迁移SECURITY子句。 GaussDB不支持视图的CHECK OPTION子句。 建议配置“视图检查选项”解决该类问题。 迁移CHECK OPTION。 GaussDB列定义不支持on update选项。 建议配置“迁移脚本,使用触发器实现on update”解决该类问题。 迁移脚本,使用触发器实现on update。 GaussDB分布式不支持生成列。 建议配置“表生成列”解决该类问题。 说明: 仅GaussDB分布式有此特性。 注释生成列表达式,生成列变成普通列。并通过触发器给该列设置值。 GaussDB不支持分区键不支持多个键。 建议配置“分区表多列分区键”解决该类问题。 使用主键或唯一键的第一列作为分区键。 GaussDB不支持分区键和子分区键相同。 建议配置“子分区和父分区分区键相同”解决该类问题。 注释子分区。 GaussDB临时表不支持自增列。 建议配置“临时表自增列”解决该类问题。 注释自增选项。 GaussDB分布式不支持外键约束。 建议配置“外键约束”解决该类问题。 说明: 仅GaussDB分布式有此特性。 注释外键约束。 GaussDB不支持数据库对象中使用Definer。 建议配置“对象定义者”解决该类问题。 如果创建对象时指定用户,将转换为ALTER OWNER。 部分数据类型经UGO转换后范围变大。 建议配置“数据类型check约束”解决该类问题。 添加check约束。 GaussDB 不支持某些MySQL的系统权限,系统权限授予失败。 建议配置“系统权限”解决该类问题。 注释整个SQL脚本。 GaussDB不支持无符号浮点数和定点数。 建议配置“无符号浮点和定点类型转换”。 注释UNSIGNED、ZEROFILL属性。 GaussDB不支持ZEROFILL关键字。 建议配置“ZEROFILL关键字转换”。 注释ZEROFILL关键字,且如果原来没有UNSIGNED则添加UNSIGNED关键字。 增加MySQL到GaussDB存储过程和函数转化后语句的扩展性。 建议配置“存储过程或者函数添加‘or replace’”。 创建函数或者存储过程create关键字后不添加“or replace”关键字。 GaussDB中主键或唯一键必须是分布键的超集。 建议配置“Range/List分布转换”解决该类问题。 说明: 仅GaussDB分布式有此特性。 转换Range/List分布子句,并将分布键添加到主键中。 GaussDB建表语句不支持LONGBLOB数据类型 建议配置 “LONGBLOB类型转换” 解决该类问题 迁移脚本,将LONGBLOB类型转换为BYTEA类型。 创建索引过程不阻塞DML操作 建议配置:“CREATE INDEX的CONCURRENTLY子句”解决该类问题 建议值:如果业务非常需要这个功能,建议选择添加CONCURRENTLY关键字选项。 影响:创建这类索引时候,容易造成死锁,同时对Astore的表索引的创建比正常更长。 GaussDB 不允许未被双引号引用的保留关键字作为对象名称。 建议配置”含有保留关键字符的对象名称大小写转换“解决该类问题。 说明: 优先级高于配置“对象名称大小写转换”。 如果对象名称中含有保留关键字,将该名称转换为大写字母。 GaussDB索引及约束命名唯一性范围与MySQL不同,当发生冲突时,可根据需求设置此配置项完成名称映射配置,以保证唯一性。 建议配置:“索引/约束名称防止重名”解决该类问题。 建议值: 将表名与索引/约束名称拼接防止命名冲突,当拼接后的名称超过63字节时使用SHA-1进行散列。 影响:同时解决命名冲突问题和超长问题,但是当拼接名称超长时将丧失名称的可读性。 父主题: 配置说明
  • Microsoft SQL Server To MySQL配置项使用说明 问题描述 配置建议 建议值 SQL Server与MySQL数据库结构存在差异,将会导致迁移失败。 建议配置“数据库名转换”解决该类问题。 建议值:保留数据库名称。 影响:SQL Server与MySQL数据库结构存在差异,该配置项将保留对象数据库名称,不进行任何转换。 SQL Server与MySQL排序规则存在差异,将会导致迁移失败。 建议配置“排序规则转换”解决该类问题。 建议值:注释排序规则。 影响:SQL Server与MySQL排序规则存在差异,该配置项将注释排序规则。 SQL Server与MySQL语法存在差异,该配置项将控制DROP_EXISTING转换。 建议配置“DROP_EXISTING转换”解决该类问题。 建议值:保留DROP_EXISTING。 影响:SQL Server与MySQL语法存在差异,该配置项将保留DROP_EXISTING。 SQL Server与MySQL语法存在差异,该配置项将控制索引筛选语句转换。 建议配置“索引筛选转换”解决该类问题。 建议值:保留索引筛选条件语句。 影响:SQL Server与MySQL语法存在差异,该配置项将保留索引筛选条件语句。 SQL Server与MySQL语法存在差异,MySQL 不支持表类型变量。 建议配置“表类型变量转换”解决该类问题。 建议值:将表类型变量转换临时表。 影响:SQLServer 中显式表变量不遵循事务的回滚语义,MySQL 中临时表遵循事务回滚语义,需要关注业务语义是否发生变化。不包括多语句表值函数返回表定义。 SQL Server与MySQL语法存在差异,MySQL 不支持 SQL Server 系统函数 @@FETCH_STATUS 的功能。 建议配置“WHILE 循环条件 @@FETCH_STATUS=0 转换”解决该类问题。 建议值:转换为 NOT FOUND HANDLER。 影响:用户需要关注业务语义是否发生变化。 约束条件: 仅支持 "WHILE @@FETCH_STATUS = 0" 和 "WHILE 0 = @@FETCH_STATUS" 语法。 "WHILE @@FETCH_STATUS = 0" 的上一条语句是 FETCH 语句。 WHILE 循环中的最后一句是 FETCH。 两条 FETCH 语句使用同一个游标。 父主题: 配置说明
  • 什么是UGO? UGO全称为数据库和应用迁移 UGO(以下简称为UGO)是专注于异构数据库结构迁移的专业服务。可将源数据库中的DDL、DML和DCL一键自动转换为华为云GaussDB/RDS的SQL语法,通过数据库评估、对象迁移两大核心功能和自动化语法转换,提前识别可能存在的改造工作、提高转化率、最大化降低用户数据库迁移成本。 在异构数据库迁移场景中,UGO实现结构迁移和语法转化,数据复制服务 DRS实现异构数据库数据在线搬迁,可以形成完整的平滑异构数据库端到端搬迁方案,实现主流商用数据库到华为云数据库的自动化迁移,助力用户轻松实现一键上云、一键切换数据库的目的。 对于迁移方案来说,将存储过程、函数较复杂的异构数据库上云,UGO+DRS会是一个完整的闭环方案,建议同时使用。 图1 数据库迁移流程解决方案
  • 操作步骤 完成步骤四后,单击“下一步”,进入语法转换页面。 单击“启动”,进行迁移。页面显示对象类型、总数、转换成功、转换失败等信息以及转换开始时间与结束时间。 图1 语法转换 页面以进度条和百分比显示迁移进度。 单击“下载报告”,选择所需报告单击“下载”,下载至本地供用户分析。 转换错误报告:该报告介绍了无法等价转换为目标库语法的源库对象详情。 匿名化转换错误报告:该报告通过匿名方式介绍了无法等价转换为目标库语法的源库对象。 转换风险报告:该报告介绍了基于用户所选的配置项,冒一定风险转换为目标库语法的源库对象,但转换后存在一定的功能差异。 匿名化转换风险报告:对象信息脱敏后的转换风险报告。该报告通过匿名方式介绍了基于用户所选的配置项,冒一定风险转换为目标库语法的源库对象,但转换后存在一定的功能差异。 转换后的SQL解析失败报告:该报告介绍了无法使用目标库语法解析转换脚本的源库对象。 匿名化转换后的SQL解析失败报告:该报告通过匿名方式介绍了无法使用目标库语法解析转换脚本的源库对象。 单击“详情”,有转换失败的对象可进入对象校正页面查看对象类型的具体信息。 查看迁移历史详情信息,请见查看转换历史详情。 单击“暂停”,流程将被暂停,用户可以到转换历史中去查询之前执行过的迁移任务。 单击“启动”,将会进行一次新的转换流程。单击“恢复”,将继续进行转换流程。 再次单击“启动”,将再次进行语法转换,会覆盖上一次转换的全部转换数据,包含手工修改的对象,请谨慎操作。如确需重新转换,单击“确认”。 单击“下一步”,对象校验页面显示待验证的Schema、对象名称、对象类型等信息。 图2 对象校正 可依据具体对象名称进行搜索,也可依据Schema、转换状态及迁移状态等进行筛选。 仅当源数据库为Oracle、MySQL、PostgreSQL时,若“转换状态”为“失败”,可单击具体失败项的对象名称,查看“对象迁移成功率”。 当“支持迁移”为“否”时,可以使用“应用筛选器”查询同样包含该语法点的其他失败对象。 可对选中的具体对象单击“跳过迁移”,忽略不想验证迁移的对象。 重新转换:可选择需要重新转换的对象类型或对象,进行单独重新转换,不会覆盖其他对象的SQL修改。 单击进入“重新转换”页面,选定对象后单击“重新转换”,可返回步骤2重新启动语法转换。 Mysql为源,table对象转换后结果将会展示转换拆分后的子对象create table和create index;Oracle为源,table对象转换后结果将会展示转换拆分后的子对象create table和foreign_key,两者都可以选择子对象进行单独的迁移或是修改,拆分后的子对象数目不计入转换总对象数量当中。 拆分子对象是为了控制转换后父类对象部分子对象的迁移,所以页面展示的子对象并不是全量子对象,如需查看全量子对象的状态和内容需点击父类对象查看详情。 子对象拆分依赖UGO的转换功能,当出现解析脚本出错和转换脚本时出错的情形时无法进行转换,不会拆分子对象。 父对象与其下所有子对象的状态如下:当父对象转换状态为成功,则子对象转换状态都为成功;当父对象转换状态为失败,则子对象转换状态至少存在一个失败;当父对象转换状态为手工修改,至少有一个子对象转换状态为手工修改;当父对象迁移后若迁移状态为成功,则子对象迁移状态为成功或是忽略;当父对象迁移后迁移状态若为失败,则子对象迁移状态至少存在一个失败;当子对象全被忽略迁移,父对象也将会被忽略迁移。 对于“迁移状态”为“成功”的对象,如果重新进行转换,再次迁移和验证将出现错误“对象已存在于目标数据库上”。为避免这种情况,请手动从目标数据库中删除这些对象。若选择数据库对象类型,将重新转换选中类型下所有对象。 批量语句更新:批量语句更新支持类似问题的批量搜索和修改。如何批量语句更新,请参见批量语句更新。 可对选中的对象进行“修改”或“查看详情”。 单击“查看详情”,可查看对应对象的转换/迁移错误信息和源端、目标端以及比较的信息,也可以复制详细代码。 单击“修改”:可对具体对象进行逐条手工修改。如何修改,请参见修改对象校正。 选择可忽略的对象并单击“跳过迁移”,“迁移状态”变为“忽略”。也可以“撤销跳过”,撤销后对应状态恢复原样。 迁移结果注释了一些特性,可能会有功能影响,可单击“查看详情”查看详细信息。
  • 操作步骤 完成步骤五,单击“下一步”,进入迁移验证页面。 请修正对象校正中所有转换失败项,才能启动迁移验证。 单击“启动”,进行校验。页面以进度条和百分比显示迁移进度。 迁移验证完成后,页面显示读取到的SQL行总数与迁移成功数与失败数。 查看校验历史详细信息,请见查看迁移历史详情。 图1 迁移验证 停止验证后,会出现提示“迁移存在错误/风险,请点击查看”单击后有“警告 : 异常自动暂停”弹框提示。 停止后单击“启动”,可继续进行迁移。 查看空存储过程:可查看失败的对象列表和失败次数。 单击“下载报告”,选择所需报告单击“下载”,下载至本地供用户分析。MySQL为源时,子对象的相关数据不会统计在迁移报告中。 迁移验证报告:该报告简要介绍了迁移和验证对象的状态。 迁移验证错误报告:该报告介绍了对象迁移失败的详情,包括每个对象的状态、迁移语句和错误信息。 匿名化迁移验证错误报告:该报告介绍了对象迁移失败的详情,包括每个对象的状态、迁移语句、错误信息,但源库SQL语句和迁移后的SQL语句均以匿名的形式呈现。 若有迁移失败,可单击对象类型后的“详情”,可返回对象校正页面查看对象类型的具体信息。 迁移验证完成后,若有验证失败项,可返回对象校正页面,进行单独修改或批量语句更新。
  • SQL审核概述 SQL审核功能能够帮助用户在开发阶段发现隐藏在代码中的SQL规范性、设计合理性和性能等问题,内置200+审核规则,涵盖对DML、DDL、PL/SQL等各类对象进行深度审核,且可根据业务需求对规则进行自由组合形成模板,支持GaussDB、MySQL两种数据库,可实现单语句、批量代码文件上传(自动提取SQL)、直连数据库3种审核方式,深度看护代码,避免烂SQL流入生产环境。 父主题: SQL审核
  • 约束限制 审核对象仅支持:Table、View、Sequence、Index、Function、Procedure、Trigger、Package。 一次审核Schema的数量不超过10000。 审核数据库过程中,避免对正在审核的数据库对象进行删除等操作,影响审核结果。 如果使用系统模板进行审核时,新版本升级结束后,再次重试或者同数据源审核,会导致审核结果不一致。为避免此现象发生,建议使用自定义模板。
  • 操作步骤 登录UGO服务。 单击左侧导航栏的“数据源管理”。 在数据源管理页面,单击右上角的“创建数据源”按钮。 进入创建数据源页面,完成基本信息的填写。 基本信息填写完成后,“开始测试”高亮显示。 图1 创建数据源 表1 创建数据源参数说明 参数名称 说明 名称 在数据源管理项目列表中显示的名称。 唯一且长度范围为5到50个字符,只允许包含英文字母、数字、下划线、中划线。以字母开头、数字或字母结束。 数据库类型 下拉选择待创建的数据库类型。当前仅支持管理GaussDB和MySQL数据源信息。 网络类型 公网网络:通过弹性公网IP(Elastic IP,EIP)进行源库连接。 连接方法 仅支持通过服务器名进行连接。 数据库名称 待进行管理的数据库名称。 主机类型 当前仅支持主机IP地址。 主机IP地址 填写具体主机IP地址,IP地址支持IPv4和IPv6。 说明: 支持IPv6数据库如下:MySQL。 主机端口 待进行管理的数据库端口。 用户名 待进行管理的数据库用户名。 由字母、数字、“_”、“-”、“$”、“#”组成,长度为2-128个字符,必须以字母、数字、“.”、“_”、“-”开头且允许使用单引号包裹的用户名 密码 待进行管理的数据库密码。 密码最多支持50个字符长度。 单击“开始测试”,测试通过显示“已连接”,右下角“创建”高亮显示。 当前仅测试连通性,若断连或权限不足,会导致“连接数据库失败”,无法创建数据源。 单击创建。显示“数据源创建成功。”。 单击“关闭”,返回数据源管理页面,用户可以看到最新创建的数据源已在列表中。 可通过数据源ID、名称、数据库名称、数据库类型、IP地址及端口信息进行搜索。 图2 数据源管理
  • 约束限制 规则的嵌套审核仅支持以下四种“select list |from|where |with xx as”,详情可参见表1。 别名不能和实体表重名,且别名之间不能重名。 暂不支持视图中的表审核。 不支持对数据库系统表及视图审核。 不支持语句中含有“#”或“/*”的SQL 审核。涉及点(依赖表结构、语句、阈值等)。 文件审核中和审核完成后,不可点击“重试”按钮。 如果使用系统模板进行审核时,新版本升级结束后,再次重试或者同文件审核,会导致审核结果不一致。为避免此现象发生,建议使用自定义模板。 SQL审核最大可以创建110个审核任务,同一时间段内,最多支持10个审核任务并发执行。
  • 源数据库准备和授权 创建数据库评估任务时,UGO将检查源数据库的权限。您需在创建评估任务前检查数据库权限,并执行以下操作。 Oracle为源库,为了确保 DBMS_METADATA.GET_DDL 方法返回的对象DDL保持统一,建议您对Oracle源库进行如下设置。 不生成排序规则子句(影响对象:USER、TABLE、CLUSTER、VIEW、MATERIALIZED_VIEW、PROCEDURE、FUNCTION、PACKAGE、TYPE、TRIGGER)。 使用sqlplus执行:EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(dbms_metadata.SESSION_TRANSFORM, 'COLLATION_CLAUSE', 'NEVER'); 让表约束、索引将成为CREATE TABLE语句的一部分,而不是单独的ALTER、TABLE语句 使用sqlplus执行:EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(dbms_metadata.SESSION_TRANSFORM, 'CONSTRAINTS_AS_ALTER', false); 用户需拥有创建UGO评估项目的对应权限。具体权限,可参见权限管理进行设置。 各源库分别需要具备以下权限,需成功测试连接到源数据库并通过所有预检查项。 Oracle源数据库连接用户需要具有待迁移数据库的DBMS_METADATA、动态视图和Schema对象数量检查的权限。 MySQL为源库时需要具有MySQL系统库的查询权限、PROCESS权限和待迁移数据库的所有权限。从MySQL-8.0版本开始,针对存储过程和存储函数,还需要SHOW_ROUTINE权限。 GoldenDB为源库时需要具有GoldenDB系统库的查询权限、PROCESS权限和待迁移数据库的所有权限。针对存储过程和存储函数,还需要SHOW_ROUTINE权限。 Microsoft SQL Server为源库时需要具有VIEW DEFINITION权限。 以MySQL 和 GoldenDB为源,如果给用户赋予了全局的SELECT权限,SHOW_ROUTINE权限也能通过,无需再单独授予。 父主题: 创建评估项目
  • 约束限制 规则的嵌套审核仅支持四种详情可参见表1。 With as只考虑SELECT语句。 别名不能和实体表重名,且别名之间不能重名。 暂不支持视图中的表审核。 不支持对数据库系统表及视图审核。 不支持输入的语句, 语句中涉及的表结构,阈值中含有“#”或“/*”的SQL 审核。 表1 支持的嵌套审核语句 SQL语句 select id, (select 子查询) as name from table; select id from table where id in (select 子查询); select * from table1,(select 子查询); with e as (select 子查询) select * from e;
  • 规则约束 所有涉及update、delete规则项,均不支持多表操作审核。 update、delete多表操作仅支持规则项:“不应用单条update、delete语句对多个表实现更新、删除操作”。 对于这两个规则,“在PL/pgSQL中,关键字建议大写,非关键字小写”、“sql语句中,关键字建议大写,非关键字小写”,不要在以对象名作为非保留关键字的语句中使用,存在审核不准确情况,比如:SELECT id FROM name,name是非保留关键字。 “查询系统视图时,如果使用对象名作为筛选条件,对象名应使用小写”支持的系统视图参见表2。 “谨慎删除数据库对象及清理数据”,其中阈值中支持审核SQL语法见表表3 表2 视图审核 视图名 所属schema 表示对象名的列 adm_arguments pg_catalog、sys owner、object_name、package_name、argument_name adm_audit_object pg_catalog、sys username、owner、obj_name、action_name adm_audit_session pg_catalog、sys username、action_name adm_audit_statement pg_catalog、sys username、obj_name、action_name adm_col_comments pg_catalog、sys owner、table_name、column_name、schema adm_col_privs pg_catalog、sys grantor、owner、grantee、table_schema、table_name、column_name、privilege adm_coll_types pg_catalog、sys owner、type_name、elem_type_mod、elem_type_owner、elem_type_name adm_constraints pg_catalog、sys owner、constraint_name、table_name、index_owner、index_name adm_indexes pg_catalog、sys owner、index_name、table_name、table_owner、tablespace_name adm_ind_columns pg_catalog、sys index_owner、index_name、table_name、table_owner、column_name adm_objects pg_catalog、sys owner、object_name、subobject_name adm_procedures pg_catalog、sys owner、object_name、procedure_name、impltypeowner、impltypename adm_role_privs pg_catalog、sys grantee、granted_role adm_tab_col_statistics pg_catalog、sys owner、table_name、column_name、schema adm_roles pg_catalog、sys role adm_source pg_catalog、sys owner、name adm_sys_privs pg_catalog、sys grantee、privilege adm_tab_cols pg_catalog、sys owner、table_name、column_name、data_type_owner、schema、qualified_col_name adm_tab_privs pg_catalog、sys grantee、owner、table_name、grantor、privilege adm_tables pg_catalog、sys owner、table_name、tablespace_name adm_tab_columns pg_catalog、sys owner、table_name、column_name、data_type_owner、schema adm_tab_comments pg_catalog、sys owner、table_name、column_name、schema adm_tab_statistics pg_catalog、sys owner、table_name adm_triggers pg_catalog、sys owner、trigger_name、table_owner、table_name adm_type_attrs pg_catalog、sys type_name、attr_name、attr_type_name、character_set_name adm_types pg_catalog、sys owner、type_name adm_users pg_catalog、sys username、default_tablespace、temporary_tablespace、default_collation adm_views pg_catalog、sys owner、view_name db_all_tables pg_catalog、sys owner、table_name、tablespace_name db_arguments pg_catalog、sys owner、object_name、package_name、argument_name db_col_comments pg_catalog、sys owner、table_name、column_name、schema db_col_privs pg_catalog、sys grantor、owner、grantee、table_schema、table_name、column_name、privilege db_coll_types pg_catalog、sys owner、type_name、elem_type_mod、elem_type_owner、elem_type_name db_constraints pg_catalog、sys owner、constraint_name、table_name、index_owner、index_name db_indexes pg_catalog、sys owner、index_name、table_name、table_owner、tablespace_name db_ind_columns pg_catalog、sys index_owner、index_name、table_name、table_owner、column_name db_objects pg_catalog、sys owner、object_name、subobject_name db_procedures pg_catalog、sys owner、object_name db_tab_col_statistics pg_catalog、sys owner、table_name、column_name、schema db_source pg_catalog、sys owner、name db_tab_columns pg_catalog、sys owner、table_name、column_name、data_type_owner、schema db_tab_comments pg_catalog、sys owner、table_name、schema db_tables pg_catalog、sys owner、table_name、tablespace_name db_triggers pg_catalog、sys trigger_name、table_owner、table_name db_types pg_catalog、sys owner、type_name db_users pg_catalog、sys username db_views pg_catalog、sys owner、view_name dict pg_catalog、sys table_name dictionary pg_catalog、sys table_name my_col_comments pg_catalog、sys owner、table_name、column_name、schema my_col_privs pg_catalog、sys grantor、owner、grantee、table_schema、table_name、column_name、privilege my_coll_types pg_catalog、sys owner、type_name、elem_type_mod、elem_type_owner、elem_type_name my_constraints pg_catalog、sys owner、constraint_name、table_name、index_owner、index_name my_indexes pg_catalog、sys owner、index_name、table_name、table_owner、tablespace_name my_ind_columns pg_catalog、sys index_owner、index_name、table_name、table_owner、column_name my_objects pg_catalog、sys object_name、subobject_name my_procedures pg_catalog、sys owner、object_name、procedure_name、impltypeowner、impltypename my_role_privs pg_catalog、sys grantee、granted_role my_tab_col_statistics pg_catalog、sys table_name、column_name、schema my_source pg_catalog、sys owner、name my_tab_columns pg_catalog、sys owner、table_name、column_name、data_type_owner、schema my_tab_comments pg_catalog、sys owner、table_name、column_name、schema my_tab_statistics pg_catalog、sys table_name my_tables pg_catalog、sys owner、table_name、tablespace_name my_triggers pg_catalog、sys owner、trigger_name、table_owner、table_name my_type_attrs pg_catalog、sys type_name、attr_name、attr_type_name、character_set_name my_types pg_catalog、sys type_name my_views pg_catalog、sys owner、view_name pg_indexes pg_catalog、sys schemaname、tablename、indexname、tablespace pg_roles pg_catalog、sys rolename pg_tables pg_catalog、sys schemaname、tablename、tableowner、tablespace、tablecreator pg_user pg_catalog、sys username、nodegroup pg_views pg_catalog、sys schemaname、viewname、viewowner column_privileges information_schema、sys grantor、grantee、table_catalog、table_schema、table_name、column_name columns information_schema、sys table_catalog、table_schema、table_name、column_name constraint_column_usage information_schema、sys table_catalog、table_schema、table_name、column_name、constraint_catalog、constraint_schema、constraint_name constraint_table_usage information_schema、sys table_catalog、table_schema、table_name、constraint_catalog、constraint_schema、constraint_name enabled_roles information_schema、sys role_name schemata information_schema、sys catalog_name、schema_name、schema_owner、default_character_set_catalog、default_character_set_schema、default_character_set_name table_constraints information_schema、sys constraint_catalog、constraint_schema、constraint_name、table_catalog、table_schema、table_name table_privileges information_schema、sys grantor、grantee、table_catalog、table_schema、table_name tables information_schema、sys table_catalog、table_schema、table_name、self_referencing_column_name、user_defined_type_catalog、user_defined_type_schema、user_defined_type_name triggers information_schema、sys trigger_catalog、trigger_schema、trigger_name、event_object_catalog、event_object_schema、event_object_table、action_reference_old_table、action_reference_new_table usage_privileges information_schema、sys grantor、grantee、object_catalog、object_schema、object_name views information_schema、sys table_catalog、table_schema、table_name 表3 支持审核的SQL语法 DDL类型 SQL语法 DROP DROP TABLE, DROP TABLESPACE, DROP AGGREGATE, DROP AUDIT POLICY, DROP CAST, DROP DATABASE, DROP DATA SOURCE, DROP DIRECTORY, DROP EVENT, DROP FOREIGN TABLE, DROP GLOBAL CONFIGURATION, DROP GROUP, DROP MASKING POLICY, DROP MATERIALIZED VIEW, DROP MODEL, DROP OPERATOR, DROP OWNED, DROP PACKAGE, DROP PACKAGE BODY, DROP PROCEDURE, DROP RESOURCE LABEL, DROP RESOURCE POOL, DROP ROLE, DROP ROW LEVEL SECURITY POLICY, DROP RULE, DROP PUBLICATION, DROP SCHEMA, DROP SEQUENCE, DROP FUNCTION, DROP SERVER, DROP SUBSCRIPTION, DROP SYNONYM, DROP TEXT SEARCH CONFIGURATION, DROP TEXT SEARCH DICTIONARY, DROP TRIGGER, DROP TYPE, DROP USER, DROP USER MAPPING, DROP VIEW, DROP WEAK PASSWORD DICTIONARY ALTER ALTER DROP PARTITION, ALTER TRUNCATE PARTITION, ALTER DROP COLUMN, ALTER DROP CONSTRAINT, ALTER DROP FOREIGN TABLE, ALTER DROP AUDIT POLICY, ALTER DROP MASKING POLICY, ALTER DROP SERVER, ALTER DROP TEXT SEARCH CONFIGURATION, ALTER DROP USER MAPPING, ALTER DROP DATA SOURCE TRUNCATE TRUNCATE
  • 泰文身份证识别 只支持泰国身份证的识别。 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 泰国身份证识别图像各边的像素大小在15到8192px之间。 图像中身份证区域有效占比超过25%,保证整张身份证内容及其边缘包含在图像内。 支持图像中身份证任意角度的水平旋转。 支持少量扭曲,扭曲后图像中的身份证长宽比与实际身份证相差不超过10%。 能处理反光、暗光等干扰的图片但影响识别精度。 目前只支持识别单张身份证的正面或者反面。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前。
  • 驾驶证识别 只支持中国大陆驾驶证纸质版本及交管12123提供的电子驾驶证版本识别。 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在100到8000px之间。 图像中驾驶证区域有效占比超过50%,保证整张驾驶证内容及其边缘包含在图像内。 支持图像中驾驶证任意角度的水平旋转。 支持少量扭曲,扭曲后图像中的驾驶证长宽比与实际驾驶证相差不超过10%。 能处理反光、暗光、防伪标识等干扰的图片但影响识别精度。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 护照识别 支持中国大陆护照的全字段识别。 支持含有完整机读码的中国-港澳台地区及外国护照识别。 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15到8192px之间。 图像中护照首页区域有效占比超过25%,保证护照首页内容及其边缘包含在图像内。 支持图像中护照任意角度的水平旋转。 支持少量扭曲,扭曲后图像中的护照长宽比与实际护照相差不超过10%。 能处理反光、暗光等干扰的图片但影响识别精度。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 车辆合格证 只支持中国大陆车辆合格证的识别。 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15到8192px之间。 图像中识别区域有效占比超过80%,保证整张车辆合格证内容及其边缘包含在图像内。 支持图像中车辆合格证任意角度的水平旋转。 支持少量扭曲,扭曲后图像中的车辆合格证长宽比与实际驾驶证相差不超过10%。 能处理暗光等干扰的图片但影响识别精度。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 承兑汇票 只支持中英文。 只支持识别PNG、JPG、JPEG、BMP、GIF、TIFF、WEBP、PCX、ICO、PSD格式的图片。 图像各边的像素大小在15px到8192px之间。 图像中识别区域有效占比超过80%,保证所有文字及其边缘包含在图像内。 不支持角度旋转的图片识别。 支持电子承兑汇票,对于拍照场景、复杂背景支持欠佳。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 通用表格识别 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15px到8192px之间。 图像中识别区域有效占比超过80%,保证整张表格及其边缘包含在图像内。 支持图像任意角度的水平旋转。 目前不支持复杂背景(如户外自然场景、防伪水印等)和表格线扭曲图像的文字识别。 支持中英文以及部分繁体字。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 通用文字识别 只支持识别PNG、JPG、JPEG、BMP、GIF、TIFF、WEBP、PCX、ICO、PSD格式的图片。 图像各边的像素大小在15px到8192px之间。 图像中识别区域有效占比超过80%,保证所有文字及其边缘包含在图像内。 支持图像任意角度的水平旋转。 支持自动过滤浅色文字水印。 目前不支持复杂背景(如户外自然场景等)和文字扭曲图像的文字识别。 支持中英文以及部分繁体字、马来语、乌克兰语、印地语、俄语、越南语、印尼语、泰语、阿拉伯语、德语、拉丁语、法语、意大利语、西班牙语、葡萄牙语、罗马尼亚语、波兰语、阿姆哈拉语、日语、韩语、土耳其语、挪威语、丹麦语、瑞典语、柬埔寨语识别。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 车牌识别 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15到4096px之间。 图像中车牌区域有效占比超过10%,保证所有文字及其边缘包含在图像内。 推荐图像中车牌清晰无遮挡、正面放置无倾斜。 目前支持车牌类型含小型汽车、小型新能源、大型新能源、使馆汽车、领馆汽车、中国-港澳入出境汽车、教练汽车、警用汽车号牌,支持双行号牌。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 增值税发票识别 支持JPEG、JPG、PNG、BMP、TIFF、PDF、OFD格式,多页PDF默认识别第一页,或者您可以指定要识别的页码。 图像各边的像素大小在100到8192px之间。 图像中发票区域有效占比超过80%。 支持图像中增值税发票任意角度的水平旋转。 图片中发票宽高比例与真实发票比例一致。 目前只支持中华人民共和国境内的增值税发票识别。 支持增值税专用发票、全电发票和增值税普通发票(含电子普通发票),包括增值税普通发票中的卷式发票、通行费发票。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 手写文字识别 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15到8192px之间。 图像中识别区域有效占比超过80%,保证所有文字及其边缘包含在图像内。 支持图像任意角度的水平旋转(需开启方向检测)。 目前不支持复杂背景(如户外自然场景、防伪水印等)和表格线扭曲图像的文字识别。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 发票验真 支持增值税专用发票、增值税普通发票、增值税普通发票(卷式)、增值税电子专用发票、增值税电子普通发票、增值税电子普通发票(通行费)、二手车销售统一发票、机动车销售统一发票、区块链电子发票和全电发票,共计10种发票信息核验。 每份发票每天最多可查验5次。可查验最近5年内(国家税务总局)增值税发票管理系统开具的发票。 税务局数据同步有时延,建议当天新开的发票在24小时后查询。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 防疫健康码识别 支持全国不同地区健康码的识别。 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15到8192px之间。 图像中健康码区域有效占比超过80%,保证整张健康码内容及其边缘包含在图像内。 推荐采用手机截图图像。 支持图像中健康码任意角度的水平旋转(需开启方向检测)。 能处理反光、暗光等干扰的图片但影响识别精度。 目前只支持识别单张健康码。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
  • 核酸检测记录识别 支持全国不同地区健康码小程序中的核酸检测记录界面的识别。 支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。 图像各边的像素大小在15到8192px之间。 图像中核酸检测记录区域有效占比超过80%,保证整张核酸检测记录内容及其边缘包含在图像内。 推荐采用手机截图图像。 支持图像中核酸检测记录界面任意角度的水平旋转(需开启方向检测)。 能处理反光、暗光等干扰的图片但影响识别精度。 目前只支持识别单张核酸检测记录界面。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们联系管理员。
  • 网络图片识别 支持中英文及部分中文繁体字。 只支持识别JPG、JPEG、PNG、BMP、TIFF、TGA、WEBP、ICO、PCX、GIF格式图片。 支持常见网络图片如:手机截图、电脑截图、电商产品图及广告设计图等互联网图片。 图像各边的像素大小在15到8192px之间。 图像中有效文字图片占比超过60%,避免有效文字图片占比过小。 支持图像中有效文字图片的任意角度的水平旋转(需开启方向检测)。 文字识别服务属于公有云服务,线上用户资源共享,如果需要多并发请求,请提前联系我们。
共100000条