华为云用户手册

  • GAUSS-00151 -- GAUSS-00160 GAUSS-00151: "UNIQUE predicate is not yet implemented" SQLSTATE: 0A000 错误原因:UNIQUE子句没有实现。 解决办法:请使用实现了的语法。 GAUSS-00152: "RANGE PRECEDING is only supported with UNBOUNDED" SQLSTATE: 0A000 错误原因:RANGE PRECEDING使用时没有指定UNBOUNDED。 解决办法:RANGE PRECEDING使用时必须指定UNBOUNDED。 GAUSS-00153: "RANGE FOLLOWING is only supported with UNBOUNDED" SQLSTATE: 0A000 错误原因:RANGE FOLLOWING使用时没有指定UNBOUNDED。 解决办法:RANGE FOLLOWING使用时必须指定UNBOUNDED。 GAUSS-00154: "frame start cannot be UNBOUNDED FOLLOWING" SQLSTATE: 42P20 错误原因:frame start指定了UNBOUNDED FOLLOWING。 解决办法:frame start不能是UNBOUNDED FOLLOWING。 GAUSS-00155: "frame starting from following row cannot end with current row" SQLSTATE: 42P20 错误原因:frame从下一行开始从当前行结束。 解决办法:frame从下一行开始不能从当前行结束。 GAUSS-00156: "frame end cannot be UNBOUNDED PRECEDING" SQLSTATE: 42P20 错误原因:frame end指定了UNBOUNDED PRECEDING。 解决办法:frame end不能是UNBOUNDED PRECEDING。 GAUSS-00157: "frame starting from current row cannot have preceding rows" SQLSTATE: 42P20 错误原因:frame从当前行开始从之前的行结束。 解决办法:frame从当前行开始不能从当前行之前的行结束。 GAUSS-00158: "frame starting from following row cannot have preceding rows" SQLSTATE: 42P20 错误原因:frame从下一行开始从之前的行结束。 解决办法:frame从下一行开始不能从当前行之前的行结束。 GAUSS-00159: "type modifier cannot have parameter name" SQLSTATE: 42601 错误原因:行数的参数模式包含参数。 解决办法:行数的参数模式不能包含参数。 GAUSS-00160: "wrong number of parameters on left side of OVERLAPS expression" SQLSTATE: 42601 错误原因:overlaps函数的左参数个数大于2。 解决办法:overlaps支持一个参数或者两个参数的表达式。 父主题: GAUSS-00101 -- GAUSS-00200
  • GAUSS-00141 -- GAUSS-00150 GAUSS-00141: "missing argument" SQLSTATE: 42601 错误原因:删除操作符时缺少参数。 解决办法:删除操作符时要使用和定义时一样的参数。 GAUSS-00142: "WITH CHECK OPTION is not implemented" SQLSTATE: 0A000 错误原因:此选项未实现。 解决办法:不要使用未支持的选项。 GAUSS-00143: "must be system admin to use EXECUTE DIRECT" SQLSTATE: 42501 错误原因:非系统管理员执行EXECUTE DIRECT。 解决办法:只有系统管理员才能执行EXECUTE DIRECT。 GAUSS-00144: "CREATE TABLE AS EXECUTE not yet supported" SQLSTATE: 0A000 错误原因:此语法未支持。 解决办法:请使用支持的语法,具体请参考《SQL语法参考》。 GAUSS-00145: "number of columns does not match number of values" SQLSTATE: 42601 错误原因:要修改的列的个数和实际给出的值的个数不匹配。 解决办法:要修改的列的个数和实际给出的值的个数要匹配。 GAUSS-00146: "Sort method %s is not supported!" SQLSTATE: XX000 错误原因:使用了不支持的排序方法。 解决办法:仅使用支持的选项,具体请参考《SQL语法参考》。 GAUSS-00147: "LIMIT #,# syntax is not supported" SQLSTATE: 42601 错误原因:LIMIT limit_value,offset value此种语法未支持。 解决办法:使用LIMIT limit_value OFFSET offset_value语法。 GAUSS-00148: "VALUES in FROM must have an alias" SQLSTATE: 42601 错误原因:values语句出现在from子句中未使用别名。 解决办法:values语句出现在from子句中必须使用别名。 GAUSS-00149: "precision for type float must be at least 1 bit" SQLSTATE: 22023 错误原因:指定float的精度时,精度小于1。 解决办法:指定float的精度时,精度最小是1。 GAUSS-00150: "precision for type float must be less than 54 bits" SQLSTATE: 22023 错误原因:指定float的精度时,精度大于54。 解决办法:指定float的精度时,精度最大是54。 父主题: GAUSS-00101 -- GAUSS-00200
  • GAUSS-00131 -- GAUSS-00140 GAUSS-00131: "current database cannot be changed" SQLSTATE: 0A000 错误原因:在当前数据库中对catalog进行设置。 解决办法:不允许设置系统表。 GAUSS-00132: "time zone interval must be HOUR or HOUR TO MINUTE" SQLSTATE: 42601 错误原因:时间间隔格式设置错误。 解决办法:间隔格式必须是HOUR or HOUR TO MINUTE。 GAUSS-00133: "interval precision specified twice" SQLSTATE: 42601 错误原因:interval的精度被指定多次。 解决办法:只能指定一次。 GAUSS-00134: "MATCH PARTIAL not yet implemented" SQLSTATE: 0A000 错误原因:引用时使用了部分匹配。 解决办法:内部错误,请联系技术支持工程师提供技术支持。 GAUSS-00135: "unrecognized distribution option '%s'" SQLSTATE: 42601 错误原因:不可识别的分布列选项。 解决办法:请使用支持的分布选项。具体请参考《SQL语法参考》的“CREATE TABLE”章节。 GAUSS-00136: "Invalid option %s" SQLSTATE: 42601 错误原因:选项不合法。 解决办法:请使用支持的选项。 GAUSS-00137: "constraint declared INITIALLY DEFERRED must be DEFERRABLE" SQLSTATE: 42601 错误原因:声明为INITIALLY DEFERRED的约束必须是DEFERRABLE的。 解决办法:声明为INITIALLY DEFERRED的约束必须是DEFERRABLE的。 GAUSS-00138: "conflicting constraint properties" SQLSTATE: 42601 错误原因:约束使用冲突。 解决办法:不能同时使用有冲突的约束。 GAUSS-00139: "CREATE ASSERTION is not yet implemented" SQLSTATE: 0A000 错误原因:CREATE ASSERTION未支持。 解决办法:未支持的不要使用。 GAUSS-00140: "DROP ASSERTION is not yet implemented" SQLSTATE: 0A000 错误原因:DROP ASSERTION未支持。 解决办法:未支持的不要使用。 父主题: GAUSS-00101 -- GAUSS-00200
  • GAUSS-00121 -- GAUSS-00130 GAUSS-00121: "column %d of relation '%s' does not exist" SQLSTATE: 42703 错误原因:表中的列不存在。 解决办法:使用时要确定表中的列是否存在。 GAUSS-00122: "values list %s does not have attribute %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00123: "invalid varattno %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00124: "invalid attribute number %d" SQLSTATE: 42704 错误原因:非法的表属性编号。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00125: "invalid reference to FROM-clause entry for table '%s'" SQLSTATE: 42P01 错误原因:FROM子句中对表的引用不合法。 解决办法:FROM子句中引用表时请使用正确的语法。 GAUSS-00126: "missing FROM-clause entry for table '%s'" SQLSTATE: 42P01 错误原因:with语句中缺少from子句。 解决办法:with语句中必须包含from子句。 GAUSS-00127: "Password must be quoted" SQLSTATE: 42601 错误原因:密码未使用引号。 解决办法:指定密码时请使用引号引起来。 GAUSS-00128: "unrecognized role option '%s'" SQLSTATE: 42601 错误原因:使用了不识别的用户选项。 解决办法:使用研发支持文档中给出的用户选项。 GAUSS-00129: "'SET %s TO rolename' not yet supported" SQLSTATE: 42601 错误原因:set name to rolename使用方式未支持。 解决办法:使用支持的方式:set name rolename。 GAUSS-00130: "'SET %s = rolename' not yet supported" SQLSTATE: 42601 错误原因:set name = rolename使用方式未支持。 解决办法:使用支持的方式:set name rolename。 父主题: GAUSS-00101 -- GAUSS-00200
  • GAUSS-00111 -- GAUSS-00120 GAUSS-00111: "column '%s' cannot be declared SETOF" SQLSTATE: 42P16 错误原因:函数的返回中声明某一列为SETOF。 解决办法:函数的返回中不能声明某一列为SETOF。 GAUSS-00112: "function '%s' in FROM has unsupported return type %s" SQLSTATE: 42804 错误原因:函数的返回值是不支持的类型。 解决办法:请切换为其它常用类型后,重新尝试操作。如问题依然存在,请联系技术支持工程师提供技术支持。 GAUSS-00113: "VALUES lists '%s' have %d columns available but %d columns specified" SQLSTATE: 42P10 错误原因:VALUES中参数的个数和实际指定的列个数不一致。 解决办法:请检查VALUES中参数的个数和实际指定的列个数是否一致。 GAUSS-00114: "joins can have at most %d columns" SQLSTATE: 54000 错误原因:join中列的个数超过了限制。 解决办法:join中列的个数不能超过32767个。 GAUSS-00115: "WITH query '%s' does not have a RETURNING clause" SQLSTATE: 0A000 错误原因:非SELECT的with语句没有指定returning子句。 解决办法:非SELECT的with语句需要指定returning子句。 GAUSS-00116: "function in FROM has unsupported return type" SQLSTATE: 0A000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00117: "unrecognized RTE kind: %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00118: "invalid attnum %d for rangetable entry %s" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00119: "cache lookup failed for attribute %d of relation %u" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00120: "subquery %s does not have attribute %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 父主题: GAUSS-00101 -- GAUSS-00200
  • GAUSS-00101 -- GAUSS-00110 GAUSS-00101: "table '%s' has %d columns available but %d columns specified" SQLSTATE: 42P10 错误原因:查询的表对象的列超过了表本身列的数量。 解决办法:指定的表对象的列不能超过表本身列的个数。 GAUSS-00102: "too many column aliases specified for function %s" SQLSTATE: 42P10 错误原因:函数的别名中列的个数超过一个。 解决办法:函数的别名中列的个数只能是一个。 GAUSS-00103: "relation '%s' is not partitioned table" SQLSTATE: 42P01 错误原因:表对象不是分区表。 解决办法:执行之前先通过系统表确定表对象是分区表。 GAUSS-00104: "partition '%s' of relation '%s' does not exist" SQLSTATE: 42P01 错误原因:对象的分区表不存在。 解决办法:使用分区时通过查询pg_partition表确认该分区是否存在。 GAUSS-00105: "The partition number is invalid or out-of-range" SQLSTATE: XX000 错误原因:插入分区的数值超过了分区的范围。 解决办法:对分区表插入数值,要保证数据能落到某一个分区里。 GAUSS-00106: "unsupported partition type" SQLSTATE: XX000 错误原因:不支持的分区类型。 解决办法:修改分区类型。目前行存表、列存表仅支持范围分区。 GAUSS-00107: "relation '%s.%s' does not exist" SQLSTATE: 42P01 错误原因:指定模式下的表对象不存在。 解决办法:在使用之前,请确保表对象是存在的。 GAUSS-00108: "relation '%s' does not exist" SQLSTATE: 42P01 错误原因:表对象不存在。 解决办法:在使用之前,请确保表对象是存在的。 GAUSS-00109: "a column definition list is only allowed for functions returning 'record'" SQLSTATE: 42601 错误原因:非返回record类型的函数不接收列定义列表(或表定义)。 解决办法:对于非返回record类型的函数不要使用表定义指定返回值。 GAUSS-00110: "a column definition list is required for functions returning 'record'" SQLSTATE: 42601 错误原因:返回record类型的函数需要列定义列表(或表定义)。 解决办法:对于返回record类型的函数要使用表定义指定返回值。 父主题: GAUSS-00101 -- GAUSS-00200
  • GAUSS-00081 -- GAUSS-00090 GAUSS-00081: "unnamed XML attribute value must be a column reference" SQLSTATE: 42601 错误原因:未命名的XML属性值必须是列的引用。 解决办法:用户检查输入SQL。 GAUSS-00082: "XML attribute name '%s' appears more than once" SQLSTATE: 42601 错误原因:XMLELEMENT中出现了重复的列。 解决办法:用户检查输入SQL。 GAUSS-00083: "cannot cast XMLSERIALIZE result to %s" SQLSTATE: 42846 错误原因:将XMLSERIALIZE类型转换到其它类型时报错。 解决办法:使用时类型之间要保证可以相互转换。 GAUSS-00084: "unrecognized booltesttype: %d" SQLSTATE: XX004 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00085: "WHERE CURRENT OF clause not yet supported" SQLSTATE: 54001 错误原因:使用了WHERE CURRENT OF语法。 解决办法:WHERE CURRENT OF语法未支持,不建议使用。 GAUSS-00086: "unequal number of entries in row expressions" SQLSTATE: 42601 错误原因:行表达式中,使用等于操作符的左右的参数个数不相等。 解决办法:行表达式中,使用等于操作符的左右的参数个数要相等。 GAUSS-00087: "cannot compare rows of zero length" SQLSTATE: 0A000 错误原因:行比较的长度为0。 解决办法:使用行比较时,保证长度不为0。 GAUSS-00088: "row comparison operator must yield type boolean, not type %s" SQLSTATE: 42804 错误原因:行表达式比较的返回值不是bool类型。 解决办法:行表达式比较的返回值要求是bool类型。 GAUSS-00089: "row comparison operator must not return a set" SQLSTATE: 42804 错误原因:行表达式比较的返回值是集合类型。 解决办法:行表达式比较的返回值要求不能是集合类型。 GAUSS-00090: "could not determine interpretation of row comparison operator %s" SQLSTATE: 0A000 错误原因:找不到行比较操作符。 解决办法:使用行比较时确定行比较操作符存在。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00071 -- GAUSS-00080 GAUSS-00071: "there is no parameter $%d" SQLSTATE: 42P02 错误原因:参数序号超出了合法的参数序号范围。 解决办法:使用参数序号时,要注意其取值范围。 GAUSS-00072: "NULLIF requires = operator to yield boolean" SQLSTATE: 42804 错误原因:NULLIF中的参数比较时,所使用的函数返回值不是布尔类型。 解决办法:NULLIF中的参数比较时,函数返回值请使用布尔类型。 GAUSS-00073: "arguments of row IN must all be row expressions" SQLSTATE: 42601 错误原因:对于IN表达式,参数不是数组类型,也不是行表达式。 解决办法:对于IN表达式,参数为数组类型或者行表达式。 GAUSS-00074: "unexpected non-SELECT command in SubLink" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00075: "subquery must return a column" SQLSTATE: 42601 错误原因:子查询没有返回列。 解决办法:子查询必须返回至少一列。 GAUSS-00076: "subquery must return only one column" SQLSTATE: 42601 错误原因:子查询作为子表达式时,不允许返回多列。 解决办法:子查询作为子表达式时,只能返回一列。 GAUSS-00077: "subquery has too many columns" SQLSTATE: 42601 错误原因:在行表达式中,子查询返回的列数大于实际需要的列数。 解决办法:请检查行表达式中子查询返回的列数,确保其等于实际需要的列数。 GAUSS-00078: "subquery has too few columns" SQLSTATE: 42601 错误原因:在行表达式中,子查询返回的列数小于实际需要的列数。 解决办法:请检查行表达式中子查询返回的列数,确保其等于实际需要的列数。 GAUSS-00079: "cannot determine type of empty array" SQLSTATE: 42P18 错误原因:对于一个空的数组不能确定其类型。 解决办法:对数据做强制类型转换。 GAUSS-00080: "could not find element type for data type %s" SQLSTATE: 42704 错误原因:数组中的某个元素不是合法的数据类型。 解决办法:存入到数组中的值的类型要和声明的类型一致。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00061 -- GAUSS-00070 GAUSS-00061: "unrecognized A_Expr kind: %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00062: "column %s.%s does not exist" SQLSTATE: 42703 错误原因:列名或者为空,或者拼写错误,或者不是关系表中定义的列名。 解决办法:请通过\d tablename检查当前指定的列名是否为表中指定的列名,如果不正确,请修改为合法的列名。 GAUSS-00063: "column '%s' not found in data type %s" SQLSTATE: 42703 错误原因:给定列的类型定义错误。 解决办法:通过\d tablename确认表中列的类型定义是否正确。 GAUSS-00064: "could not identify column '%s' in record data type" SQLSTATE: 42703 错误原因:列不存在,通过record数据类型不能识别列。 解决办法:检查列是否存在。 GAUSS-00065: "column notation .%s applied to type %s, which is not a composite type" SQLSTATE: 42809 错误原因:通过记号'.'来访问一个非复合类型的成员。 解决办法:确认类型是否为复合类型,如果为非复合类型,不能通过记号'.'方式访问。 GAUSS-00066: "row expansion via '*' is not supported here" SQLSTATE: 0A000 错误原因:当前上下文不支持通过*来进行列展开。 解决办法:当前上下文避免使用*进行列展开。 GAUSS-00067: "column reference '%s' is ambiguous" SQLSTATE: 42702 错误原因:列引用时多次引用了同一列。 解决办法:请排查和修改语法,避免多次引用同一列。 GAUSS-00068: "column '%s' does not exist" SQLSTATE: 42703 错误原因:列不存在。 解决办法:请检查表定义中是否存在要使用的列。 GAUSS-00069: "cross-database references are not implemented: %s" SQLSTATE: 0A000 错误原因:不支持跨数据库的引用对象。 解决办法:避免跨数据库的引用。在数据库Database2中不能通过Database1.schema.object方式访问数据库Database1中的对象,object包括:表、索引、视图等。 GAUSS-00070: "improper qualified name (too many dotted names): %s" SQLSTATE: 42601 错误原因:点分隔符使用不当,个数过多,无法正确解析。 解决办法:请减少点分隔符个数后重试。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00051 -- GAUSS-00060 GAUSS-00051: "improper %%TYPE reference (too many dotted names): %s" SQLSTATE: 42601 错误原因:函数中定义的table_name.column_name%TYPE引用列的类型错误,".column_name"前参数太多。 解决办法:请检查函数中定义的变量类型table_name.column_name%TYPE中的表名或列名引用是否正确,并重新修改语法后再创建函数定义。 GAUSS-00052: "column '%s' of relation '%s' does not exist" SQLSTATE: 42703 错误原因:列名或者为空,或者拼写错误,或者不是关系表中定义的列名。 解决办法:请通过\d tablename检查当前指定的列名是否为表中指定的列名,如果不正确,请修改为合法的列名。 GAUSS-00053: "type '%s' does not exist" SQLSTATE: 42704 错误原因:根据给定的类型名在系统表pg_type中无法找到匹配的类型。 解决办法:请检查语句中使用的类型名是否正确(可参考系统表pg_type中已定义的类型)。 GAUSS-00054: "type '%s' is only a shell" SQLSTATE: 42704 错误原因:给定的类型名在系统表pg_type中没有定义对应的操作执行函数。 解决办法:请确认语句中使用的类型名是否正确。如果正确,请通过create type语句自定义所使用类型名对应的操作函数。 GAUSS-00055: "type modifier cannot be specified for shell type '%s'" SQLSTATE: 42601 错误原因:自定义的类型包含了typmod。 解决办法:自定义的类型不能包含typmod。 GAUSS-00056: "type modifier is not allowed for type '%s'" SQLSTATE: 42601 错误原因:自定义的类型包含了typmod。 解决办法:自定义的类型不能包含typmod。 GAUSS-00057: "type modifiers must be simple constants or identifiers" SQLSTATE: 42601 错误原因:给定的类型修饰符错误。 解决办法:类型表示符必须定义为常量或标识符,请检查给定的类型修饰符语法是否正确,然后重新定义一个合法的类型修饰符。 GAUSS-00058: "collations are not supported by type %s" SQLSTATE: 42804 错误原因:collation与类型不匹配,类型问题。 解决办法:用户检查语句中的类型,collate仅支持字符相关类型。 示例: 1 2 3 postgres=# create table t1(a int collate "C"); ERROR: collations are not supported by type integer LINE 1: create table t1(a int collate "C"); GAUSS-00059: "typeTypeId() called with NULL type struct" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00060: "invalid type name '%s'" SQLSTATE: 42601 错误原因:给定的类型名无效。 解决办法:请检查语句中使用的类型名是否正确(可参考系统表pg_type中已定义的类型)。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00041 -- GAUSS-00050 GAUSS-00041: "unrecognized castmethod: %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00042: "cache lookup failed for relation %u" SQLSTATE: XX000 错误原因:ALTER TABLE SET TABLESPACE操作,关系不存在。 解决办法:无法找到关系表,建议更改本操作。 GAUSS-00043: "unsafe use of string constant with Unicode escapes" SQLSTATE: 0A000 错误原因:standard_conforming_strings开关关闭情况下,字符串常量不能定义为统一编码的转义字符。 解决办法:1.请检查输入语句中的转义字符是否正确。2.通过gsql将standard_conforming_strings开关设置为on。 GAUSS-00044: "invalid Unicode escape" SQLSTATE: 22025 错误原因:输入的语句中存在非法的转义字符序列。 解决办法:请检查输入语句中转义字符序列的语法是否正确,是否存在如下字符序列:例如:\uXXXX或\UXXXXXXXXX,其中""X""表示0..9或A..F或a..f。 GAUSS-00045: "unsafe use of \\' in a string literal" SQLSTATE: 22P06 错误原因:在字符串中使用了非法的转义字符'\'。 解决办法:检查SQL语法中使用的转义字符'\'是否正确,并修改SQL语法。 GAUSS-00046: "%s at end of input" SQLSTATE: 42601 错误原因:给定语句的结束符语法错误。 解决办法:检查并修改输入语句的语法。 GAUSS-00047: "%s at or near '%s'" SQLSTATE: 42601 错误原因:语法错误或语句递归层数超过10000(例:"memory exhausted at or near '%s'")。 解决办法:保证执行的sql没有语法错误或改写语句调整递归层次。 GAUSS-00048: "core_yylex_init() failed: %m" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00049: "invalid hexadecimal digit" SQLSTATE: XX000 错误原因:invalid input or unsupport format 解决办法:用户检查输入SQL。 GAUSS-00050: "improper %%TYPE reference (too few dotted names): %s" SQLSTATE: 42601 错误原因: 函数中定义的table_name.column_name%TYPE引用列的类型错误,".column_name"前缺少参数。 解决办法:请检查函数中定义的变量类型.column_name%TYPE中的列名引用是否正确,并重新修改语法后再创建函数定义.column_name%TYPE对列名的引用语法中至少包括:"database_name"、"schema_name"、"table_name"。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00031 -- GAUSS-00040 GAUSS-00031: "argument declared 'anyarray' is not an array but type %s" SQLSTATE: 42804 错误原因:声明的参数和实际传入的参数类型不符。 解决办法:传入的参数要和声明的参数类型一致。 GAUSS-00032: "argument declared 'anyarray' is not consistent with argument declared 'anyelement'" SQLSTATE: 42804 错误原因:对于数组类型的ANY谓词,定义的数组类型与ANY数组中每个元素的类型不匹配。 解决办法:1.请分别查看定义的ANY数组的类型和ANY数组中元素的类型;2.分别确认查询语句中出现的ANY数组的类型和ANY数组中元素的类型是否正确。 GAUSS-00033: "argument declared 'anyrange' is not a range but type %s" SQLSTATE: 42804 错误原因:对于范围类型的ANY谓词,定义的范围类型与ANY数组中每个元素的类型不匹配。 解决办法:1.请分别查看定义的ANY范围的类型和ANY数组中元素的类型;2.分别确认查询语句中出现的ANY范围的类型和ANY数组中元素的类型是否正确。 GAUSS-00034: "argument declared 'anyrange' is not consistent with argument declared 'anyelement'" SQLSTATE: 42804 错误原因:实际的参数类型和声明的参数类型不一致。 解决办法:实际的参数类型和声明的参数类型要保持一致。 GAUSS-00035: "could not determine polymorphic type because input has type 'unknown'" SQLSTATE: 42804 错误原因:无法识别数组元素类型。 解决办法:请确认ANY谓词中数组元素的类型是否正确。 GAUSS-00036: "type matched to anynonarray is an array type: %s" SQLSTATE: 42804 错误原因:实际需要的不是array类型。 解决办法:内部错误,请联系技术支持工程师提供技术支持。 GAUSS-00037: "type matched to anyenum is not an enum type: %s" SQLSTATE: 42804 错误原因:实际需要的是enum类型。 解决办法:声明为anyenum类型的参数只接收enum类型。 GAUSS-00038: "could not find range type for data type %s" SQLSTATE: 42704 错误原因:数组声明为范围类型,但是实际传入的值不是范围类型。 解决办法:对数组赋值时,类型要和定义时的类型保持一致。 GAUSS-00039: "could not determine polymorphic type because context isn't polymorphic" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00040: "unrecognized castcontext: %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00021 -- GAUSS-00030 GAUSS-00021: "unsupported pathtype %d in build_coercion_expression" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00022: "cannot cast type %s to %s" SQLSTATE: 42846 错误原因:两个类型之间不能相互转化。 解决办法:两个类型之间不存在类型转换函数,可查看pg_cast系统表获取相关信息。 GAUSS-00023: "argument of %s must be type boolean, not type %s" SQLSTATE: 42804 错误原因:bool类型参数的函数所使用的参数和bool类型没有类型转换时,报此错误。 解决办法:做类型转换的要么类型兼容,要么有类型转换函数。 GAUSS-00024: "argument of %s must not return a set" SQLSTATE: 42804 错误原因:不支持返回集合的操作。 解决办法:表达式计算不支持返回集合。 GAUSS-00025: "argument of %s must be type %s, not type %s" SQLSTATE: 42804 错误原因:源类型和目标类型不一致,且不能转换时,报此错。 解决办法:源类型和目标类型要兼容可转换。 GAUSS-00026: "%s types %s and %s cannot be matched" SQLSTATE: 42804 错误原因:两个类型的类别不一样。 解决办法:可查看pg_type中的typcategory字段确定每个类型属于的类别。 GAUSS-00027: "%s could not convert type %s to %s" SQLSTATE: 42846 错误原因:源类型和目标类型不一致,且不能转换时,报此错。 解决办法:源类型和目标类型要兼容可转换。 GAUSS-00028: "arguments declared 'anyelement' are not all alike" SQLSTATE: 42804 错误原因:对于伪类型作为函数参数,数组中各个元素的类型和定义的类型不一致。 解决办法:对于伪类型作为函数参数,数组中各个元素的类型和定义的类型要保持一致。 GAUSS-00029: "arguments declared 'anyarray' are not all alike" SQLSTATE: 42804 错误原因:对于伪类型作为函数参数,数组中各个元素的类型和定义的类型不一致。 解决办法:对于伪类型作为函数参数,数组中各个元素的类型和定义的类型要保持一致。 GAUSS-00030: "arguments declared 'anyrange' are not all alike" SQLSTATE: 42804 错误原因:对于伪类型作为函数参数,数组中各个元素的类型和定义的类型不一致。 解决办法:对于伪类型作为函数参数,数组中各个元素的类型和定义的类型要保持一致。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00011 -- GAUSS-00020 GAUSS-00011: "hash table corrupted" SQLSTATE: LL002 错误原因:哈希表损坏。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00012: "target lists can have at most %d entries" SQLSTATE: 54000 错误原因:目标列表中属性的个数超过了上限(1664)。 解决办法:请调小目标列表中属性的个数。 GAUSS-00013: "cache lookup failed for type %u" SQLSTATE: 22P06 错误原因:非法的操作符。 解决办法:检查SQL语句中的操作符是否合法。 GAUSS-00014: "cannot subscript type %s because it is not an array" SQLSTATE: 42804 错误原因:对非数组类型使用下标操作。 解决办法:非数组类型不能使用下标操作。 GAUSS-00015: "array subscript must have type integer" SQLSTATE: 42804 错误原因:数组下标使用错误。 解决办法:数组下标必须是整型。 GAUSS-00016: "array assignment requires type %s but expression is of type %s" SQLSTATE: 42804 错误原因:对数组类型的变量进行赋值时,类型之间没有类型转换。 解决办法:变量给变量赋值,变量之间要有类型转换函数,可查看pg_cast系统表获取相关信息。 GAUSS-00017: "unrecognized node type: %d" SQLSTATE: XX004 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00018: "failed to find conversion function from %s to %s" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00019: "unsupported node type: %d" SQLSTATE: XX000 错误原因:系统内部错误。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-00020: "cache lookup failed for function %u" SQLSTATE: 22P06 错误原因:在系统表中未找到对应ID的函数。 解决办法:请检查是否有会话并发对该函数做了drop或create or replace的操作。 父主题: GAUSS-00001 -- GAUSS-00100
  • GAUSS-00001 -- GAUSS-00010 GAUSS-00001: "operator does not exist: %s" SQLSTATE: 42883 错误原因:所指定使用的操作符不存在。 解决办法:建议错误信息中包含操作符所涉及的类型,以便在系统表中查询是否存在相关的操作符。 GAUSS-00002: "could not identify an ordering operator for type %s" SQLSTATE: 42883 错误原因:对于需要进行sort/group操作时,需要进行排序,如果涉及类型的大于或小于操作符不存在,就会报这个错。 解决办法:此错误信息包含数据类型,使用之前可以在pg_operator系统表中查询,确保操作符存在。 GAUSS-00003: "could not identify an equality operator for type %s" SQLSTATE: 42883 错误原因:在进行group、unique类似操作时,如果涉及等于操作,但是涉及类型的操作符不存在,就会报这个错。 解决办法:此错误信息包含数据类型,使用之前可以在pg_operator系统表中查询,确保操作符存在。 GAUSS-00004: "operator requires run-time type coercion: %s" SQLSTATE: 42883 错误原因:使用order by using语句指定使用某个操作符,在运行中,会去校验所给类型和操作符之间是否兼容,不兼容即报错。 解决办法:确保使用时指定的操作符和类型之间是兼容的。 GAUSS-00005: "operator is not unique: %s" SQLSTATE: 42725 错误原因:对于一些类型,没有明确的操作符,在使用中要通过类型转换来寻找合适的操作符,当相关的类型转换涉及多个时就会报错。 解决办法:对于没有操作符的类型,可以使用类型转换指定其使用某个操作符。 GAUSS-00006: "operator is only a shell: %s" SQLSTATE: 42883 错误原因:未定义的函数。 解决办法:用户检查输入语句。 GAUSS-00007: "op ANY/ALL (array) requires array on right side" SQLSTATE: 42809 错误原因:对于ANY/ALL (array)操作符,右参数不是数组类型。 解决办法:对于ANY/ALL (array)操作符,右参数请使用数组类型。 GAUSS-00008: "op ANY/ALL (array) requires operator to yield boolean" SQLSTATE: 42809 错误原因:对于ANY/ALL (array)操作符,返回值的类型不是布尔类型。 解决办法:对于ANY/ALL (array)操作符,返回值的类型请使用布尔类型。 GAUSS-00009: "op ANY/ALL (array) requires operator not to return a set" SQLSTATE: 42809 错误原因:对于ANY/ALL (array)操作符,返回值的类型使用了不支持的集合类型。 解决办法:对于ANY/ALL (array)操作符,返回值的类型请不要使用集合类型。 GAUSS-00010: "could not find array type for data type %s" SQLSTATE: 42704 错误原因:对于某个类型,找不到其对应的数组类型,则报错。 解决办法:如果要使用类型对应的数组类型,可查询pg_type系统表看其是否有对应的或这个兼容的数组类型。 父主题: GAUSS-00001 -- GAUSS-00100
  • SQL标准错误码说明 根据X/Open和SQL Access Group SQL CAE规范(1992)所进行的定义,SQLERROR返回SQLSTATE值。SQLSTATE值是包含五个字符的字符串,由2个字符的SQL错误类和3个字符的子类构成。五个字符包含数值或者大写字母, 代表各种错误或者警告条件的代码。成功的状态是由00000标识的。SQLSTATE代码大多数情况下都是定义在SQL标准里的。 GaussDB (DWS)也遵循SQL标准返回错误码的SQLSTATE值,详细说明请参见表1。 表1 GaussDB(DWS)错误码SQLSTATE值 错误码SQLSTATE值 错误码含义 类 00 - 成功完成 00000 成功完成(SUC CES SFUL_COMPLETION) 类 01 - 警告 01000 警告(WARNING) 0100C 返回了动态结果集(DYNAMIC_RESULT_SETS_RETURNED) 01008 警告,隐含补齐了零比特位(IMPLICIT_ZERO_BIT_PADDING) 01003 在集合函数里消除了NULL(NULL_VALUE_ELIMINATED_IN_SET_FUNCTION) 01007 没有赋予权限(PRIVILEGE_NOT_GRANTED) 01006 没有撤销权限(PRIVILEGE_NOT_REVOKED) 01004 字符串数据在右端截断(STRING_DATA_RIGHT_TRUNCATION) 01P01 废弃的特性(DEPRECATED_FEATURE) 类 02 - 没有数据(按照SQL标准的要求,这也是警告类) 02000 没有数据(NO_DATA) 02001 返回了无附加动态结果集(NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED) 类 03 - SQL语句尚未结束 03000 SQL语句尚未结束(SQL_STATEMENT_NOT_YET_COMPLETE) 类 08 - 连接异常 08000 连接异常(CONNECTION_EXCEPTION) 08003 连接不存在(CONNECTION_DOES_NOT_EXIST) 08006 连接失败(CONNECTION_FAILURE) 08001 SQL客户端不能建立SQL连接(SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION) 08004 SQL服务器拒绝建立SQL连接(SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION) 08007 未知的事务解析(TRANSACTION_RESOLUTION_UNKNOWN) 08P01 违反协议(PROTOCOL_VIOLATION) 类09 - 触发动作异常 09000 触发动作异常(TRIGGERED_ACTION_EXCEPTION) 类 0A - 不支持特性 0A000 不支持此特性(FEATURE_NOT_SUPPORTED) 0A100 不支持流(STREAM_NOT_SUPPORTED) 类 0B - 非法事务初始化 0B000 非法事务初始化(INVALID_TRANSACTION_INITIATION) 类 0F - 定位器异常 0F000 定位器异常(LOCATOR_EXCEPTION) 0F001 非法的定位器声明(INVALID_LOCATOR_SPECIFICATION) 类 0L - 非法赋权者 0L000 非法赋权者(INVALID_GRANTOR) 0LP01 非法赋权操作(INVALID_GRANT_OPERATION) 类 0P - 非法角色声明 0P000 非法角色声明(INVALID_ROLE_SPECIFICATION) 类 0Z - 诊断异常 0Z000 诊断异常(DIAGNOS TICS _EXCEPTION) 0Z002 没有在活跃的处理程序下访问堆栈诊断信息(STACKED_DIAGNOSTI CS _ACCESSED_WITHOUT_ACTIVE_HANDLER) 类 20 - 未找到CASE 20000 未找到CASE(CASE_NOT_FOUND) 类 21 - 势违例 21000 势违例(CARDINALITY_VIOLATION) 类 22 - 数据异常 22000 数据异常(DATA_EXCEPTION) 2202E 数组下标错误(ARRAY_SUBSCRIPT_ERROR) 22021 字符不被计算机命令系统识别(CHARACTER_NOT_IN_REPERTOIRE) 22008 日期时间字段溢出(DATETIME_FIELD_OVERFLOW) 22012 被零除(DIVISION_BY_ZERO) 22005 赋值中出错(ERROR_IN_ASSIGNMENT) 2200B 转义字符冲突(ESCAPE_CHARACTER_CONFLICT) 22022 指示器溢出(INDICATOR_OVERFLOW) 22015 内部字段溢出(INTERVAL_FIELD_OVERFLOW) 2201E 对数运算的非法参数(INVALID_ARGUMENT_FOR_ LOG ARITHM) 22014 NTILE函数的非法参数(INVALID_ARGUMENT_FOR_NTILE_FUNCTION) 22016 N值函数的非法参数(INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION) 2201F 幂函数的非法参数(INVALID_ARGUMENT_FOR_POWER_FUNCTION) 2201G 宽桶函数的非法参数(INVALID_ARGUMENT_FOR_W IDT H_BUCKET_FUNCTION) 22018 类型转换时非法的字符值(INVALID_CHARACTER_VALUE_FOR_CAST) 22007 非法日期时间格式(INVALID_DATETIME_FORMAT) 22019 非法的转义字符(INVALID_ESCAPE_CHARACTER) 2200D 非法的转义字节(INVALID_ESCAPE_OCTET) 22025 非法转义序列(INVALID_ESCAPE_SEQUENCE) 22P06 非标准使用转义字符(NONSTANDARD_USE_OF_ESCAPE_CHARACTER) 22010 非法指示器参数值(INVALID_INDICATOR_PA RAM ETER_VALUE) 22023 非法参数值(INVALID_PARAMETER_VALUE) 2201B 非法正则表达式(INVALID_REGULAR_EXPRESSION) 2201W LIMIT子句中行号非法(INVALID_ROW_COUNT_IN_LIMIT_CLAUSE) 2201X 结果集中行号非法(INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE) 2202H 非法抽样参数(ERRCODE_INVALID_TABLESAMPLE_ARGUMENT) 2202G 非法重复抽样(ERRCODE_INVALID_TABLESAMPLE_REPEAT) 22009 非法时区显示值(INVALID_TIME_ZONE_DISPLACEMENT_VALUE) 2200C 非法使用转义字符(INVALID_USE_OF_ESCAPE_CHARACTER) 2200G 最相关类型不匹配(MOST_SPECIFIC_TYPE_MISMATCH) 22004 不允许NULL值(NULL_VALUE_NOT_ALLOWED) 22002 NULL值不能做指示器参数(NULL_VALUE_NO_INDICATOR_PARAMETER) 22003 数值越界(NUMERIC_VALUE_OUT_OF_RANGE) 22005 并发数超限(ERRCODE_DOP_VALUE_OUT_OF_RANGE) 22026 字符串数据长度不匹配(STRING_DATA_LENGTH_MISMATCH) 22028 正则表达式不匹配(ERRCODE_REGEXP_MISMATCH) 22001 字符串数据右截断(STRING_DATA_RIGHT_TRUNCATION) 22011 抽取子字符串错误(SUBSTRING_ERROR) 22027 截断错误(TRIM_ERROR) 22024 未结束的C字符串(UNTERMINATED_C_STRING) 2200F 零长度的字符串(ZERO_LENGTH_CHARACTER_STRING) 22P01 浮点异常(FLOATING_POINT_EXCEPTION) 22P02 非法文本表现形式(INVALID_TEXT_REPRESENTATION) 22P03 非法二进制表现形式(INVALID_BINARY_REPRESENTATION) 22P04 错误的COPY格式(BAD_COPY_FILE_FORMAT) 22P05 不可翻译字符(UNTRANSLATABLE_CHARACTER) 22P06 内存查找失败(ERRCODE_CACHE_LOOKUP_FAILED) 22P07 文件读取失败(ERRCODE_FILE_READ_FAILED) 22P08 获取数据失败(ERRCODE_FETCH_DATA_FAILED) 2200L 非XML文件(NOT_AN_XML_DOCUMENT) 2200M 非法的XML文件(INVALID_XML_DOCUMENT) 2200N 非法的XML内容(INVALID_XML_CONTENT) 2200O 非法的XML错误信息(ERRCODE_INVALID_XML_ERROR_CONTEXT) 2200S 非法的XML注释(INVALID_XML_COMMENT) 2200T 非法的XML处理命令(INVALID_XML_PROCESSING_INSTRUCTION) 2200X 关闭RELATION错误(RELATION_CLOSE_ERROR) 类 23 - 违反完整性约束 23000 违反完整性约束(INTEGRITY_CONSTRAINT_VIOLATION) 23001 违反限制(RESTRICT_VIOLATION) 23502 违反非空约束(NOT_NULL_VIOLATION) 23503 违反外键约束(FOREIGN_KEY_VIOLATION) 23505 违反唯一约束(UNIQUE_VIOLATION) 23514 违反CHECK约束(CHECK_VIOLATION) 23P01 违反排他约束(EXCLUSION_VIOLATION) 类 24 - 非法游标状态 24000 非法游标状态(INVALID_CURSOR_STATE) 类 25 - 非法事务状态 25000 非法事务状态(INVALID_TRANSACTION_STATE) 25001 活跃的SQL状态(ACTIVE_SQL_TRANSACTION) 25002 分支事务已激活(BRANCH_TRANSACTION_ALREADY_ACTIVE) 25008 持有的游标要求同样的隔离级别(HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL) 25003 分支事务访问方式不当(INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION) 25004 分支事务隔离级别不当(INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION) 25005 分支事务没有活跃的SQL事务(NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION) 25006 只读的SQL事务(READ_ONLY_SQL_TRANSACTION) 25007 不支持模式和数据语句混合使用(SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED) 25009 恢复期间无法启用事务(ERRCODE_RUN_TRANSACTION_DURING_RECOVERY) 25010 事务ID不存在(ERRCODE_GXID_DOES_NOT_EXIST) 25P01 没有活跃的SQL事务(NO_ACTIVE_SQL_TRANSACTION) 25P02 在失败的SQL事务中(IN_FAILED_SQL_TRANSACTION) 类 26 - 非法SQL语句名 26000 非法SQL语句名(INVALID_SQL_STATEMENT_NAME) 类 27 - 触发的数据改变违规 27000 触发的数据改变违规(TRIGGERED_DATA_CHANGE_VIOLATION) 27001 触发的元素非法(ERRCODE_TRIGGERED_INVALID_TUPLE) 类 28 - 非法授权声明 28000 非法授权声明(INVALID_AUTHORIZATION_SPECIFICATION) 28P01 非法密码(INVALID_PASSWORD) 28P02 未修改初始密码(INITIAL_PASSWORD_NOT_MODIFIED) 类 2B - 依然存在依赖的优先级描述符 2B000 依然存在依赖的优先级描述符(DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST) 2BP01 依赖性对象仍然存在(DEPENDENT_OBJE CTS _STILL_EXIST) 类 2D - 非法的事务终止 2D000 非法的事务终止(INVALID_TRANSACTION_TERMINATION) 类 2F - SQL过程异常 2F000 SQL过程异常(SQL_ROUTINE_EXCEPTION) 2F005 执行的函数没有返回语句(FUNCTION_EXECUTED_NO_RETURN_STATEMENT) 2F002 不允许修改SQL数据(MODIFYING_SQL_DATA_NOT_PERMITTED) 2F003 企图使用禁止的SQL语句(PROHIBITED_SQL_STATEMENT_ATTEMPTED) 2F004 不允许读取SQL数据(READING_SQL_DATA_NOT_PERMITTED) 类 34 - 非法游标名 34000 非法游标名(INVALID_CURSOR_NAME) 类 38 - 外部过程异常 38000 外部过程异常(EXTERNAL_ROUTINE_EXCEPTION) 38001 不允许包含SQL(CONTAINING_SQL_NOT_PERMITTED) 38002 不允许修改SQL数据(MODIFYING_SQL_DATA_NOT_PERMITTED) 38003 企图使用禁止的SQL语句(PROHIBITED_SQL_STATEMENT_ATTEMPTED) 38004 不允许读取SQL数据(READING_SQL_DATA_NOT_PERMITTED) 类 39 - 外部过程调用异常 39000 外部过程调用异常(EXTERNAL_ROUTINE_INVOCATION_EXCEPTION) 39001 返回了非法的SQLSTATE(INVALID_SQLSTATE_RETURNED) 39004 不允许空值(NULL_VALUE_NOT_ALLOWED) 39P01 违反触发协议(TRIGGER_PROTOCOL_VIOLATED) 39P02 违反SRF协议(SRF_PROTOCOL_VIOLATED) 类 3B - 保存点异常 3B000 保存点异常(SAVEPOINT_EXCEPTION) 3B001 无效的保存点声明(INVALID_SAVEPOINT_SPECIFICATION) 类 3D - 非法数据库名 3D000 非法数据库名(INVALID_CATALOG_NAME) 类 3F - 非法模式名 3F000 非法模式名(INVALID_SCHEMA_NAME) 类 40 - 事务回滚 40000 事务回滚(TRANSACTION_ROLLBACK) 40002 违反事务完整性约束(TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION) 40001 串行化失败(SERIALIZATION_FAILURE) 40003 未知语句是否结束(STATEMENT_COMPLETION_UNKNOWN) 40P01 侦测到死锁(DEADLOCK_DETECTED) 类 42 - 语法错误或者违反访问规则 42000 语法错误或者违反访问规则(SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION) 42601 语法错误(SYNTAX_ERROR) 42501 权限不够(INSUFFICIENT_PRIVILEGE) 42846 无法进行类型转换(CANNOT_COERCE) 42803 分组错误(GROUPING_ERROR) 42P20 窗口错误(WINDOWING_ERROR) 42P19 无效递归(INVALID_RECURSION) 42830 非法的外键(INVALID_FOREIGN_KEY) 42602 非法名字(INVALID_NAME) 42622 名字太长(NAME_TOO_LONG) 42939 保留名字(RESERVED_NAME) 42804 数据类型不匹配(DATATYPE_MISMATCH) 42P18 不确定的数据类型(INDETERMINATE_DATATYPE) 42P21 排序规则不匹配(COLLATION_MISMATCH) 42P22 不确定的排序规则(INDETERMINATE_COLLATION) 42P23 分区错误(ERRCODE_PARTITION_ERROR) 42P24 非法属性值(ERRCODE_INVALID_ATTRIBUTE) 42P25 非法聚集函数(ERRCODE_INVALID_AGG) 42P26 资源池错误(ERRCODE_RESOURCE_POOL_ERROR) 42P27 未找到父级计划(ERRCODE_PLAN_PARENT_NOT_FOUND) 42P28 更新冲突(ERRCODE_MODIFY_CONFLICTS) 42809 错误的对象类型(WRONG_OBJECT_TYPE) 42703 未定义的字段(UNDEFINED_COLUMN) 42883 未定义的函数(UNDEFINED_FUNCTION) 42P01 未定义的表(UNDEFINED_TABLE) 42P02 未定义的参数(UNDEFINED_PARAMETER) 42704 未定义对象(UNDEFINED_OBJECT) 42701 重复的字段(DUPLICATE_COLUMN) 42P03 重复的游标(DUPLICATE_CURSOR) 42P04 重复的数据库(DUPLICATE_DATABASE) 42723 重复的函数(DUPLICATE_FUNCTION) 42P05 重复的预编译语句(DUPLICATE_PREPARED_STATEMENT) 42P06 重复的模式(DUPLICATE_SCHEMA) 42P07 重复的表(DUPLICATE_TABLE) 42712 重复的别名(DUPLICATE_ALIAS) 42710 重复的对象(DUPLICATE_OBJECT) 42702 模糊的字段(AMBIGUOUS_COLUMN) 42725 模糊的函数(AMBIGUOUS_FUNCTION) 42P08 模糊的参数(AMBIGUOUS_PARAMETER) 42P09 模糊的别名(AMBIGUOUS_ALIAS) 42P10 非法字段引用(INVALID_COLUMN_REFERENCE) 42611 非法字段定义(INVALID_COLUMN_DEFINITION) 42P11 非法游标定义(INVALID_CURSOR_DEFINITION) 42P12 非法数据库定义(INVALID_DATABASE_DEFINITION) 42P13 非法函数定义(INVALID_FUNCTION_DEFINITION) 42P14 非法预编译语句定义(INVALID_PREPARED_STATEMENT_DEFINITION) 42P15 非法模式定义(INVALID_SCHEMA_DEFINITION) 42P16 非法表定义(INVALID_TABLE_DEFINITION) 42P17 非法对象定义(INVALID_OBJECT_DEFINITION) 类 44 - 违反WITH CHECK选项 44000 违反WITH CHECK选项(WITH_CHECK_OPTION_VIOLATION) 类 53 - 资源不足 53000 资源不足(INSUFFICIENT_RESOURCES) 53100 磁盘满(DISK_FULL) 53200 内存耗尽(OUT_OF_MEMORY) 53300 太多连接(TOO_MANY_CONNECTIONS) 53400 超过配置限制(CONFIGURATION_LIMIT_EXCEEDED) 类 54 - 超过程序限制 54000 超过程序限制(PROGRAM_LIMIT_EXCEEDED) 54001 语句太复杂(STATEMENT_TOO_COMPLEX) 54011 字段太多(TOO_MANY_COLUMNS) 54023 参数太多(TOO_MANY_ARGUMENTS) 类 55 - 对象不在预先要求的状态 55000 对象不在预先要求的状态(OBJECT_NOT_IN_PREREQUISITE_STATE) 55006 对象在使用中(OBJECT_IN_USE) 55P02 无法修改运行时参数(CANT_CHANGE_RUNTIME_PARAM) 55P03 锁不可获得(LOCK_NOT_AVAILABLE) 类 57 - 操作者干涉 57000 操作者干涉(OPERATOR_INTERVENTION) 57014 查询被取消(QUERY_CANCELED) 57015 内部查询取消(QUERY_INTERNAL_CANCEL) 57P01 管理员关闭系统(ADMIN_SHUTDOWN) 57P02 崩溃异常退出(CRASH_SHUTDOWN) 57P03 现在无法连接(CANNOT_CONNECT_NOW) 57P04 丢弃数据库(DATABASE_DROPPED) 类 58 - 系统错误(GaussDB自己内部的错误) 58000 系统错误(SYSTEM_ERROR) 58030 IO错误(IO_ERROR) 58P01 未定义的文件(UNDEFINED_FILE) 58P02 重复的文件(DUPLICATE_FILE) 类 F0 - 文件错误 F0000 配置文件错误(CONFIG_FILE_ERROR) F0001 锁文件存在(LOCK_FILE_EXISTS) F0011 读取HashJoin临时文件失败(ERRCODE_HASHJOIN_TEMP_FILE_ERROR) 类 HV - 外部数据错误(SQL/MED) HV000 外部数据错误(FDW_ERROR) HV005 未找到列名(FDW_COLUMN_NAME_NOT_FOUND) HV002 需要动态参数值(FDW_DYNAMIC_PARAMETER_VALUE_NEEDED) HV010 函数序列错误(FDW_FUNCTION_SEQUENCE_ERROR) HV021 描述信息不一致(FDW_INCONSISTENT_DESCRIPTOR_INFORMATION) HV024 非法属性值(FDW_INVALID_ATTRIBUTE_VALUE) HV007 非法列名称(FDW_INVALID_COLUMN_NAME) HV008 非法列数(FDW_INVALID_COLUMN_NUMBER) HV004 非法数据类型(FDW_INVALID_DATA_TYPE) HV006 非法数据类型描述符(FDW_INVALID_DATA_TYPE_DESCRIPTORS) HV091 非法字段标识符(FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER) HV00B 非法处理(FDW_INVALID_HANDLE) HV00C 非法索引选项(FDW_INVALID_OPTION_INDEX) HV00D 非法选项名称(FDW_INVALID_OPTION_NAME) HV090 非法字符串长度或缓冲区长度(FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH) HV00A 非法字符长格式(FDW_INVALID_STRING_FORMAT) HV009 非法使用NULL指针(FDW_INVALID_USE_OF_NULL_POINTER) HV014 太多句柄(FDW_TOO_MANY_HANDLES) HV001 内存耗尽(FDW_OUT_OF_MEMORY) HV00P 无模式(FDW_NO_SCHEMAS) HV00J 未找到选项名称(FDW_OPTION_NAME_NOT_FOUND) HV00K 回复句柄(FDW_REPLY_HANDLE) HV00Q 未找到模式(FDW_SCHEMA_NOT_FOUND) HV00R 未找到表(FDW_TABLE_NOT_FOUND) HV00L 无法建立执行(FDW_UNABLE_TO_CREATE_EXECUTION) HV00M 不能创建回复(FDW_UNABLE_TO_CREATE_REPLY) HV00N 无法建立连接(FDW_UNABLE_TO_ESTABLISH_CONNECTION) 类 P0 - PL/pgSQL错误 P0000 PLPGSQL错误(PLPGSQL_ERROR) P0001 抛出异常(RAISE_EXCEPTION) P0002 未找到数据(NO_DATA_FOUND) P0003 行太多(TOO_MANY_ROWS) P0004 FORALL需要DML操作(FORALL_NEED_DML) 类 XX - 内部错误 XX000 内部错误(INTERNAL_ERROR) XX001 数据损坏(DATA_CORRUPTED) XX002 索引损坏(INDEX_CORRUPTED) XX003 关闭远程流接口(STREAM_REMOTE_CLOSE_SOCKET) XX004 未知节点类型(ERRCODE_UNRECOGNIZED_NODE_TYPE) XX005 异常空值(ERRCODE_UNEXPECTED_NULL_VALUE) XX006 异常节点状态(ERRCODE_UNEXPECTED_NODE_STATE) XX007 JUNK列为空(ERRCODE_NULL_JUNK_ATTRIBUTE) XX008 优化器状态不一致(ERRCODE_OPTIMIZER_INCONSISTENT_STATE) XX009 重复查询编号(ERRCODE_STREAM_DUPLICATE_QUERY_ID) XX010 无效缓冲区(INVALID_BUFFER) XX011 无效缓冲区引用(INVALID_BUFFER_REFERENCE) XX012 节点编号不匹配(ERRCODE_NODE_ID_MISSMATCH) XX013 不能修改xid base(CANNOT_MODIFY_XIDBASE) XX014 TOAST表数据损坏(UNEXPECTED_CHUNK_VALUE) 类 YY - SQL重试错误 YY001 对端连接重置(CONNECTION_RESET_BY_PEER) YY002 对端流重置(STREAM_CONNECTION_RESET_BY_PEER) YY003 锁等待超时(LOCK_WAIT_TIMEOUT) YY004 连接超时(CONNECTION_TIMED_OUT) YY005 查询设置错误(SET_QUERY_ERROR) YY006 超出逻辑内存(OUT_OF_LOGICAL_MEMORY) YY007 通信库内存分配(SCTP_MEMORY_ALLOC) YY008 无通信库缓存数据(SCTP_NO_DATA_IN_BUFFER) YY009 通信库释放内存关闭(SCTP_RELEASE_MEMORY_CLOSE) YY010 SCTP、TCP断开(SCTP_TCP_DISCONNECT) YY011 通信库断开(SCTP_DISCONNECT) YY012 通信库远程关闭(SCTP_REMOTE_CLOSE) YY013 等待未知通信库通信(SCTP_WAIT_POLL_UNKNOW) YY014 无效快照(SNAPSHOT_INVALID) YY015 通讯接收信息错误(ERRCODE_CONNECTION_RECEIVE_WRONG) 类SI – SPI接口错误 SP000 SPI接口错误(ERRCODE_SPI_ERROR) SP001 SPI通讯失败(ERRCODE_SPI_CONNECTION_FAILURE) SP002 SPI完成失败(ERRCODE_SPI_FINISH_FAILURE) SP003 SPI准备失败(ERRCODE_SPI_PREPARE_FAILURE) SP004 SPI游标开启失败(ERRCODE_SPI_CURSOR_OPEN_FAILURE) SP005 SPI执行失败(ERRCODE_SPI_EXECUTE_FAILURE) SP006 SPI不当调用(ERRORCODE_SPI_IMPROPER_CALL) 类RB - RBTree错误 RB001 RBTree无效节点状态(RBTREE_INVALID_NODE_STATE) RB002 RBTree无效迭代顺序(RBTREE_INVALID_ITERATOR_ORDER) 类 PD - PL调试器错误 D0000 PL调试器内部错误(PLDEBUGGER_INTERNAL_ERROR) D0001 重复断点(DUPLICATE_BREAKPOINT) D0002 哈希函数没有被初始化(FUNCTION_HASH_IS_NOT_INITIALIZED) D0003 断点不存在(BREAKPOINT_IS_NOT_PRESENT) D0004 已附加调试服务器(DEBUG_SERVER_ALREADY_IS_ATTACHED) D0005 未附加调试服务器(DEBUG_SERVER_NOT_ATTACHED) D0006 已同步调试服务器(DEBUG_SERVER_ALREADY_IN_SYNC) D0007 未同步调试服务器(DEBUG_TARGET_SERVERS_NOT_IN_SYNC) D0008 已同步目标服务(TARGET_SERVER_ALREADY_IN_SYNC) D0009 变量不存在(NON_EXISTANT_VARIABLE) D0010 非法目标会话ID(INVALID_TARGET_SESSION_ID) D0011 非法操作(INVALID_OPERATION) D0012 达到最大调试会话数(MAXIMUM_NUMBER_OF_DEBUG_SESSIONS_REACHED) D0013 达到最大断点数(MAXIMUM_NUMBER_OF_BREAKPOINTS_REACHED) 类LL - 逻辑解码错误码 LL001 逻辑解码错误(LOGICAL_DECODE_ERROR) LL002 哈希表搜索错误(RELFILENODEMAP)
  • 检查安全更新 执行yum check-update --security命令,检查系统当前可用的安全更新。 [root@localhost ~]# yum check-update --security Last metadata expiration check: 0:13:32 ago on Wed 26 Mar 2025 11:08:19 AM CST. c-ares.x86_64 1.18.1-1.r5.hce2 hceversion curl.x86_64 7.79.1-2.r34.hce2 hceversion dnsmasq.x86_64 2.86-1.r20.hce2 hceversion expat.x86_64 2.4.1-5.r8.hce2 hceversion …… 执行yum check-update --sec-severity={Critical,Important,Moderate,Low}命令,检查指定级别的安全更新。 {}中的安全更新等级参数可任意组合。 [root@localhost ~]# yum check-update --sec-severity=Moderate Last metadata expiration check: 0:15:20 ago on Wed 26 Mar 2025 11:08:19 AM CST. c-ares.x86_64 1.18.1-1.r5.hce2 hceversion curl.x86_64 7.79.1-2.r34.hce2 hceversion expat.x86_64 2.4.1-5.r8.hce2 hceversion gnutls.x86_64 3.7.2-2.r31.hce2 hceversion gnutls-utils.x86_64 3.7.2-2.r31.hce2 hceversion …… 父主题: 对HCE进行安全更新
  • OOM可能的原因 cgroup内存不足 使用的内存超出了cgroup中memory.limit_in_bytes配置的大小,如下示例演示memory.limit_in_bytes配置为80M,使用memhog模拟分配100M,触发OOM,/var/log/messages部分日志如下,可以从日志中看到memhog所在进程(PID: 2021820)使用了81920kB内存,超出了限制,触发了OOM: warning|kernel[-]|[2919920.414131] memhog invoked oom-killer: gfp_mask=0xcc0(GFP_KERNEL), order=0, oom_score_adj=0 info|kernel[-]|[2919920.414220] memory: usage 81920kB, limit 81920kB, failcnt 30 err|kernel[-]|[2919920.414272] Memory cgroup out of memory: Killed process 2021820 (memhog) total-vm:105048kB, anon-rss:81884kB, file-rss:1544kB, shmem-rss:0kB, UID:0 pgtables:208kB oom_score_adj:0 父cgroup内存不足 在子cgroup中内存仍然足够,但是父cgroup的内存不足,超过了内存限制,如下示例演示父cgroup memory.limit_in_bytes配置为80M,两个子cgroup memory.limit_in_bytes均配置为50M,在两个子cgroup中使用程序循环分配内存,触发OOM,/var/log/messages部分日志如下: warning|kernel[-]|[2925796.529231] main invoked oom-killer: gfp_mask=0xcc0(GFP_KERNEL), order=0, oom_score_adj=0 info|kernel[-]|[2925796.529315] memory: usage 81920kB, limit 81920kB, failcnt 199 err|kernel[-]|[2925796.529366] Memory cgroup out of memory: Killed process 3238866 (main) total-vm:46792kB, anon-rss:44148kB, file-rss:1264kB, shmem-rss:0kB, UID:0 pgtables:124kB oom_score_adj:0 系统全局内存不足 一方面由于OS的空闲内存不足,有程序一直在申请内存,另一方面也无法通过内存回收机制解决内存不足的问题,因此触发了OOM,如下示例演示OS中使用程序循环分配内存,触发OOM,/var/log/messages部分日志如下,可以从日志中看到内存节点Node 0的空闲内存(free)已经低于了内存最低水位线(low),触发了OOM: kernel: [ 1475.869152] main invoked oom: gfp_mask=0x100dca(GFP_HIGHUSER_MOVABLE|__GFP_ZERO), order=0 kernel: [ 1477.959960] Node 0 DMA32 free:22324kB min:44676kB low:55844kB high:67012kB reserved_highatomic:0KB active_anon:174212kB inactive_anon:1539340kB active_file:0kB inactive_file:64kB unevictable:0kB writepending:0kB present:2080636kB managed:1840628kB mlocked:0kB pagetables:7536kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB kernel: [ 1477.960064] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/system.slice/sshd.service,task=main,pid=1822,uid=0 kernel: [ 1477.960084] Out of memory: Killed process 1822 (main) total-vm:742748kB, anon-rss:397884kB, file-rss:4kB, shmem-rss:0kB, UID:0 pgtables:1492kB oom_score_adj:1000 内存节点(Node)的内存不足 在NUMA存储模式下,OS会存在多个内存节点,如果程序制定使用特定节点的内存,可能在OS内存充足的情况下触发OOM,如下示例演示在两个内存节点的条件下,使用程序循环在Node 1分配内存,导致Node 1内存不足,但是OS内存足够,/var/log/messages部分日志如下: kernel: [ 465.863160] main invoked oom: gfp_mask=0x100dca(GFP_HIGHUSER_MOVABLE|__GFP_ZERO), order=0 kernel: [ 465.878286] active_anon:218 inactive_anon:202527 isolated_anon:0#012 active_file:5979 inactive_file:5231 isolated_file:0#012 unevictable:0 dirty:0 writeback:0#012 slab_reclaimable:6164 slab_unreclaimable:9671#012 mapped:4663 shmem:2556 pagetables:846 bounce:0#012 free:226231 free_pcp:36 free_cma:0 kernel: [ 465.878292] Node 1 DMA32 free:34068kB min:32016kB low:40020kB high:48024kB reserved_highatomic:0KB active_anon:188kB inactive_anon:778076kB active_file:20kB inactive_file:40kB unevictable:0kB writepending:0kB present:1048444kB managed:866920kB mlocked:0kB pagetables:2752kB bounce:0kB free_pcp:144kB local_pcp:0kB free_cma:0kB kernel: [ 933.264779] oom-kill:constraint=CONSTRAINT_MEMORY_POLICY,nodemask=1,cpuset=/,mems_allowed=0-1,global_oom,task_memcg=/system.slice/sshd.service,task=main,pid=1733,uid=0 kernel: [ 465.878438] Out of memory: Killed process 1734 (main) total-vm:239028kB, anon-rss:236300kB, file-rss:200kB, shmem-rss:0kB, UID:0 pgtables:504kB oom_score_adj:1000 其他可能原因 OS在内存分配的过程中,如果伙伴系统的内存不足,则系统会通过OOM Killer释放内存,并将内存提供至伙伴系统。
  • 解决方法 手动配置dhcp自动获取ipv6地址,如下图在对应网卡配置文件(/etc/sysconfig/network-scripts/ifcfg-ethx)中添加以下参数。 IPV6INIT="yes" DHCPV6C="yes" 图3 添加参数 执行以下命令重启NetworkManager服务即可获取到IPv6地址。 systemctl restart NetworkManager 图4 获取IPv6地址
  • 迁移能力评估 HCE已有成熟的搬迁指导,按照分布式集群应用、主备应用、单机应用三种类型对各种应用进行归类,并制定相应的搬迁方案: 针对分布式集群软件,如大数据、分布式存储。CentOS搬迁无需中断业务, 基于分布式软件伸缩扩容机制,HCE实现滚动代替,平滑搬迁。 针对主备应用,如数据库等。CentOS搬迁无需中断业务,先备后主,基于主备状态同步机制,平滑搬迁。 针对单机应用,CentOS搬迁需中断业务,割接式搬迁,该类搬迁方案和原应用重新部署方式等同,属于成熟方案。 华为云提供两步切换至HCE操作系统实践,本实践带您体验从CentOS迁移到Huawei Cloud EulerOS 2.0的完整过程,开发者可直接体验兼容评估和迁移能力评估。
  • 兼容性评估 华为HCE操作系统已具备完整代替CentOS的技术能力,完全自主可控,并基于openEuler开源社区持续自主演进。南向支持6大类400种板卡,基本覆盖主流计算产品。北向100%兼容主流的应用场景(云原生、存储、数据库、大数据、WEB等)。超过5000种应用软件通过兼容性认证,基本能够替代CentOS的各种部署。 为满足CentOS系列到HCE搬迁的准确性和安全性,请您使用兼容性工具对待迁移软件快速进行扫描,获取评估结果。 对于可兼容的应用软件,迁移过程中并不会修改软件配置,迁移完成后无需重新配置;对于部分不兼容的应用软件,评估报告给出相应的规避策略,请在迁移之后进行相应的适配。
  • 背景信息 CentOS 8系统2021年12月31日已停止维护服务,CentOS 7系统将于2024年06月30日停止维护服务。CentOS不再支持新的软件和补丁更新。CentOS用户现有业务随时面临宕机和安全风险,并无法确保及时恢复。 HCE操作系统从云原生混部竞争力、安全可信、快速迁移、高效运维、专业认证等方面为用户提供专业云服务、解决CentOS停服带来的影响。HCE提供了迁移工具,可将CentOS、EulerOS等操作系统平滑迁移至HCE操作系统。
  • 操作步骤 执行以下命令查看自动注销时间(即TMOUT的值)。 echo $TMOUT 显示空白表示没有设置此值。 执行以下命令,设置当前会话下的自动注销时间。如果要长期定义自动注销时间请执行步骤3。 export TMOUT=秒数 长期应用此变量设置自动注销时间。 方式一 执行以下命令修改文件/etc/profile(若修改此文件不生效,可再修改/etc/bashrc ,修改流程相同),这样可以使所有应用此配置文件的用户均受此自动注销时间的影响。 vim /etc/profile 或者 vim /etc/bashrc 添加以下命令至文件末尾。以设置自动注销时间为1200秒为例,实际值可自定义,设置为0禁用注销功能。 export TMOUT=1200 保存文件后执行以下命令刷新。 source /etc/profile 方式二 依次执行以下命令直接修改自动注销时间。 sed -i '$a\export TMOUT=1200' /etc/profile source /etc/profile 执行以下命令查看自动注销时间。 echo $TMOUT 若显示定义的数值,则说明自动注销功能设置成功。
  • 操作背景 为了保证系统的安全性,以及减少用户在不使用系统时所造成的资源浪费,在用户离开系统一段时间后,必须对连接进行注销。注销有诸多方法,修改TMOUT变量为其中的解决方案之一。 TMOUT是一个环境变量,它决定了在系统自动注销前所空闲的秒数。因此,在设置了此变量后,若用户在规定时间内没有进行主动活动,则连接将自动断开。若没有设置此变量,或值为0,表示禁用自动注销,用户不会因长时间不活动而断开连接。
  • 操作步骤 打开配置文件/boot/grub2/grub.cfg,删除selinux=0。 执行touch /.autorelabel命令。 /.autorelabel文件将触发OS在启动过程中对磁盘上所有文件relabel重新打selinux标签,该过程可能需要持续几分钟。relabel完成后OS将自动重启一次并生效,同时自动删除/.autorelabel文件确保下次不会再重复执行relabel动作。 打开配置文件/etc/selinux/config,设置SELINUX=permissive,并执行reboot重启操作系统。 图1 设置SELINUX=permissive 再次打开配置文件/etc/selinux/config,设置SELINUX=enforcing,并执行reboot重启操作系统。 图2 设置SELINUX=enforcing 重启后执行getenforce命令查看SElinux状态。 显示Enforcing表示SElinux已经开启。 图3 查看SElinux状态
  • 安装wireguard-tools 执行以下命令安装依赖。 dnf install gcc make 执行以下命令下载wireguard-tools源码包。 wget https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-1.0.20210914.tar.xz 执行以下命令解压上述源码包。 tar -xf wireguard-tools-1.0.20210914.tar.xz 进入wireguard-tools-1.0.20210914/src目录,依次执行以下命令编译安装。 make make install 验证安装是否成功。 可以执行wg -h和wg-quick -h命令验证是否安装成功,如图所示。 图1 验证是否安装成功
  • Huawei Cloud EulerOS、openEuler和EulerOS镜像的主要区别是什么? Huawei Cloud EulerOS、openEuler和EulerOS镜像均为华为自研镜像,主要区别如下表 1所示: 表1 Huawei Cloud EulerOS、openEuler和EulerOS镜像的区别与联系 镜像类型 描述 Huawei Cloud EulerOS(简称HCE) Huawei Cloud EulerOS(简称HCE),是基于openEuler开发的一款商业发行版镜像,可替代CentOS、EulerOS等操作系统,并提供专业的维护保障能力,镜像目前免费对用户使用。 openEuler openEuler是一款开源镜像,您可以免费使用,但是不提供商业维护保障能力。openEuler最初由华为研发,但是已经在2021年11月9日正式捐赠给开放原子开源基金会,openEuler的技术支持由开源社区提供。 EulerOS EulerOS是基于开源技术的企业级Linux操作系统软件,具备高安全性、高可扩展性、高性能等技术特性,能够满足客户IT基础设施和云计算服务等多业务场景需求。 说明: EulerOS是基于开源操作系统openEuler进行开发的华为内部的操作系统。 父主题: 常见问题
  • 在x86架构安装mlnx驱动 下载CX6网卡驱动安装包MLNX_OFED_LINUX-23.10-1.1.9.0-openeuler22.03-x86_64.tgz。 解压驱动安装包并进入工作目录。 tar -xf MLNX_OFED_LINUX-23.10-1.1.9.0-openeuler22.03-x86_64.tgz cd MLNX_OFED_LINUX-23.10-1.1.9.0-openeuler22.03-x86_64 安装CX6网卡驱动软件。 ./mlnxofedinstall --basic --without-depcheck --distro OPENEULER22.03 --force --kernel 5.10.0-60.18.0.50.oe2203.x86_64 --kernel-sources /lib/modules/$(uname -r)/build 其中,“5.10.0-60.18.0.50.oe2203.x86_64“是官方MLNX_OFED包本身编译时的内核版本。 创建链接。 ln -s /lib/modules/5.10.0-60.18.0.50.oe2203.x86_64/extra/mlnx-ofa_kernel /lib/modules/$(uname -r)/weak-updates/ ln -s /lib/modules/5.10.0-60.18.0.50.oe2203.x86_64/extra/kernel-mft /lib/modules/$(uname -r)/weak-updates/ depmod -a 执行reboot命令重新系统。 执行/etc/init.d/openibd status命令查看驱动安装结果。 显示如下信息表示驱动安装成功。 图1 驱动安装成功
  • 在Arm架构安装mlnx驱动 下载CX6网卡驱动安装包MLNX_OFED_LINUX-23.10-1.1.9.0-openeuler22.03-aarch64.tgz。 解压驱动安装包并进入工作目录。 tar -xf MLNX_OFED_LINUX-23.10-1.1.9.0-openeuler22.03-aarch64.tgz cd MLNX_OFED_LINUX-23.10-1.1.9.0-openeuler22.03-aarch64 安装CX6网卡驱动软件。 ./mlnxofedinstall --basic --without-depcheck --distro OPENEULER22.03 --force --kernel 5.10.0-60.18.0.50.oe2203.aarch64 --kernel-sources /lib/modules/$(uname -r)/build 其中,“5.10.0-60.18.0.50.oe2203.aarch64”是官方MLNX_OFED包本身编译时的内核版本。 执行如下命令创建链接。 ln -s /lib/modules/5.10.0-60.18.0.50.oe2203.aarch64/extra/mlnx-ofa_kernel /lib/modules/$(uname -r)/weak-updates/ ln -s /lib/modules/5.10.0-60.18.0.50.oe2203.aarch64/extra/kernel-mft /lib/modules/$(uname -r)/weak-updates/ depmod -a 执行reboot命令重新系统。 执行/etc/init.d/openibd status命令查看驱动安装结果。 显示如下信息表示驱动安装成功。 图2 驱动安装成功
  • 创建资源栈集 注意:若下面步骤出现如下图报错,则参考基于 IAM 策略授权用户使用 RFS 前端页面给用户授权。 1.进入资源栈集列表页面,单击页面右上角的“创建资源栈集”,进入创建资源栈集页面 如图1 图1 创建资源栈集 2.进入选择模板操作界面图2,在模板操作界面提供以下信息。确认信息无误单击下一步执行。 权限委托: 选择权限:“自主服务权限” 管理委托名称: 资源编排 服务使用该委托获取成员账号委托给管理账号的权限。该委托中必须含有iam:tokens:assume权限,用以后续获取被管理委托凭证。如果不包含,则会在新增或者部署实例时报错。 被管理的委托名称:资源编排服务会使用该委托获取实际部署资源所需要的权限,不同成员账号委托给管理账号的委托名称需要保持一致。 选择模板 创建方式:已有模板 模板来源:当前支持用户使用三种途径的模板创建方式:“我的模板”“URL”“上传模板”,用户可根据自己需求,选择对应的模板上传途径 图2 选择模板 3.进入参数配置页面图3,此处可以自定义资源栈集名称,并填写配置参数,确认无误单击下一步 图3 参数配置 4.进入部署设置页面图4,此处需要填写需要创建的租户id和部署区域。确认无误单击下一步 图4 部署设置 新加坡、香港、曼谷 北京四、上海一、广州 乌兰201 贵州202、苏州201 G42 当前仅支持上述partition之间的互通,跨partition不支持互通。 5.配置确认,确认上述步骤中回填参数无误,单击“部署”并确认。 6.等待创建成功查看图5创建结果,显示操作完成则创建成功。 图5 资源栈实例 父主题: 使用资源栈集
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全