云服务器内容精选

  • Oracle To RDS for MySQL/GaussDB(for MySQL)配置项使用说明 问题描述 配置建议 建议值 MySQL不支持AUTHID CURRENT_USER或AUTHID DEFINER 建议配置“允许使用定义者或调用者的权限”解决该类问题 注释AUTHID CURRENT_USER或AUTHID DEFINER。 MySQL不支持SQL PLUS命令 建议配置“SQL PLUS”解决该类问题 注释SQL PLUS命令。 Mysql不支持层次查询。 建议配置“层次查询”解决该类问题 此配置将转换层次查询,并使用其他方式创建查询。Mysql8.0及以上建议选择此配置项。 MySQL不支持超过65535个字符的表 建议配置“大表”,将超出范围的字符串列迁移成TEXT和BLOB解决该类问题 如果字符串列使用的字符数之和超过65535,字符串列转换为TEXT,RAW列转换为BLOB。由于该存储大小可能会稍微增加,性能可能会稍微降低。 MySQL不支持多列表分区中包含不支持的分区类型 建议配置“多列表分区中包含不支持的分区类型”解决该类问题 生成虚拟列替换原来不支持的类型分区。 MySQL不支持分区表外键 建议配置“分区表外键”解决该类问题 MYSQL分区不支持分区表外键。此配置忽略迁移,脚本保持不变,并记录错误信息。 MySQL不支持全局临时表 建议配置“全局临时表”解决该类问题 注释create global temporary table语句中的global关键字。 MySQL不支持全局临时表事物提交时删除行 建议配置“全局临时表事物提交时删除行”解决该类问题 注释CREATE TABLE语句中的ON COMMIT DELETE ROWS子句。 MySQL不支持部分特殊字符或者关键字对象名 建议配置“设置SQL模式处理特殊字符或者关键字对象名”解决该类问题 将单引号(')或者双引号(")作为前缀和后缀添加到对象名中。 Oracle的表varchar列的最大长度大于MySQL的最大长度 建议配置“设置表varchar列的最大长度”解决该类问题 将char类型列存储的默认上限设置为64000,超过该上限的char类型都将转换为TEXT数据类型。 MySQL不支持自动分区 建议配置“自动分区”解决该类问题 注释掉INTERVAL自动分区。 Oracle的float数据类型默认的最大精度为126,大于MySQL的53 建议配置“float数据类型”解决该类问题 将FLOAT类型转换为DOUBLE类型。 MySQL不支持BFILE类型 建议配置“BFILE类型”解决该类问题 迁移脚本,将BFILE转换为LONGTEXT。 MySQL不支持XMLTYPE类型 建议配置“XMLTYPE类型”解决该类问题 迁移脚本,将XMLTYPE转换为LONGTEXT。 MySQL不支持GRANT语句 建议配置“GRANT语句”解决该类问题 迁移脚本,注释整个GRANT语句。 MySQL不支持表空间 建议配置“表空间”解决该类问题 注释表空间子句。 MySQL不支持具有主键或唯一键的表分区场景 建议配置“具有主键或唯一键的表分区场景”解决该类问题 将分区键添加到唯一约束(主键和唯一键)中。 MySQL不支持DBMS_UTILITY.FORMAT_ERROR_BACKTRACE系统包 建议配置“DBMS_UTILITY.FORMAT_ERROR_BACKTRACE系统包函数转换”解决该类问题 通过MySQL中的系统变量RETURNED_SQLSTATE、MYSQL_ERRNO和MESSAGE_TEXT生成错误消息。 MySQL不支持设置PL/SQL分隔符 建议配置“设置PL/SQL分隔符”解决该类问题 设置PL/SQL块的默认分隔符,该分隔符将存储过程、函数和触发器作为一个单元执行。 MySQL不支持包名分隔符 建议配置“设置包名分隔符”解决该类问题 此参数用于Oracle 包迁移。用户应设置分隔符,使其组成包中子对象新名称。 MySQL不支持编辑视图子句 建议配置“编辑视图子句”解决该类问题 注释视图语句中的EDITIONING关键字。 MySQL不支持bitmap索引 建议配置“bitmap索引”解决该类问题 BITMAP索引将迁移成BTREE索引。 MySQL不支持unusable索引 建议配置“unusable索引”解决该类问题 迁移成MySQL不可见索引。 MySQL不支持长索引 建议配置“长索引”解决该类问题 减小索引表达式的长度。 Oracle的索引列的最大长度大于MySQL的最大长度 建议配置“设置索引支持列的最大长度”解决该类问题 如果索引长度大于3072,将其减小到MySQL支持的大小(3072)。 MySQL不支持Externally和Globally用户 建议配置“Externally和Globally用户”解决该类问题 迁移脚本中,将Externally和Globally用户转换为普通数据库用户。 MySQL不支持PROFILE 建议配置“PROFILE”解决该类问题 迁移脚本,注释掉PROFILE子句。 MySQL不支持调试权限 建议配置“调试权限”解决该类问题 注释脚本,注释调试权限。 MySQL不支持角色 建议配置“角色”解决该类问题 说明: 仅RDS for MySQL-5.7版本可配置该参数。 迁移脚本,注释掉角色语句。 MySQL不支持授权语句中的委托选项 建议配置“授权语句中的委托选项”解决该类问题 迁移脚本,注释授权语句中的委托选项。 MySQL不支持系统角色 建议配置“系统角色”解决该类问题 迁移脚本,注释整个GRANT语句。 MySQL不支持用户名大小写 建议配置“用户名大小写”解决该类问题 迁移成小写的用户名。 MySQL不支持序列对象 建议配置“是否迁移序列”解决该类问题 使用自定义函数来替换序列操作。 MySQL区分角色名大小写 建议配置“角色名大小写”解决该类问题 说明: 仅GaussDB(for MySQL)-8.0版本可配置该参数。 迁移成大写或小写的角色名。 MySQL不支持角色授权 建议配置“角色授权”解决该类问题 说明: 仅GaussDB(for MySQL)-8.0版本可配置该参数。 迁移脚本,注释掉用户授权语句。 MySQL不支持授权语句的IDENTIFIED BY子句 建议配置“授权语句的IDENTIFIED BY子句”解决该类问题 说明: 仅GaussDB(for MySQL)-8.0版本可配置该参数。 注释IDENTIFIED BY语句。 MySQL没有与Oracle的 TIMESTAMP WITH TIME ZONE对应的数据类型。 建议配置“TIMESTAMP WITH TIME ZONE类型转换”解决该类问题。 将TIMESTAMP WITH TIME ZONE类型转换为DATETIME。 MySQL没有与Oracle的 TIMESTAMP WITH LOCAL TIME ZONE对应的数据类型。 建议配置“TIMESTAMP WITH LOCAL TIME ZONE类型转换”解决该类问题。 将TIMESTAMP WITH LOCAL TIME ZONE类型转换为TIMESTAMP。 影响:MySQL的TIMESTAMP范围最大为2038年,超过了该日期只能使用DATETIME类型。 父主题: 配置说明
  • 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 语句使用同一个游标。 父主题: 配置说明
  • 交易程序部署及配置说明 由于交易系统程序升级比较频繁,部署的时候,程序包需要从其他应用服务器上去备份然后上传到$JBOSS_DEPLOY目录,然后解压缩、删除压缩文件即可。 交易系统程序包包含两个目录,即:excec.war、nacecwebdocs.war;去其他服务器上下载执行文件的方法如下: 这里的命令不在新服务器上执行,而是在已经在线运行的服务器上执行。 #cd /dat/www/jboss-4.0.3/server/default/deploy #zip -r /dat/setup/excec.war.zip ./excec.war #zip -r /dat/setup/nacecwebdocs.war.zip ./nacecwebdocs.war #zip -r /dat/setup/nacecweb.war.zip ./nacecweb.war #zip -r /dat/setup/webdocs.war.zip ./webdocs.war #zip -r /dat/setup/filesearch.war.zip ./filesearch.w 上面命令完成后,需要使用FTP工具将压缩的文件从服务器上下载到本地,然后在将文件放到$JBOSS_DEPLOY目录中,然后执行解压缩命令。 #cd /dat/www/jboss-4.0.3/server/default/deploy #unzip ./excec.war.zip #rm ./excec.war.zip #unzip ./nacecwebdocs.war.zip #rm ./nacecwebdocs.war. 如果没有最新的全量程序包,则需要向高达索要完整的最新版程序包 模拟环境下,可以去下载:excec.war、nacecwebdocs.war。 这个程序包不是最新的,只提供安装测试用。 交易系统配置说明: 配置文件: #vi /dat/www/jboss-4.0.3/server/default/deploy/excec.war/WEB-INF/classes/systemconf.properties 图1 交易系统配置说明
  • 门户系统部署及配置说明 传文件nacecweb.war、webdocs.war到服务器/dat/www/jboss-4.0.3/server/default/deploy目录中。 解压安装程序: #cd /dat/www/jboss-4.0.3/server/default/deploy #unzip ./nacecweb.war.zip #rm ./nacecweb.war.zip #unzip ./webdocs.war.zip #rm ./webdocs.war.zip 服务配置说明: 配置文件:无需配置文件 门户后台包含两部分内容,及后台管理和数据检索功能,其中,后台管理不允许部署到交易及门户服务器上,否则存在安全隐患!!!!所以需要删除文件包/dat/www/jboss-4.0.3/server/default/deploy/nacecweb.war/admin目录,不管是安装程序,还是升级程序,都不允许把这个目录发布到交易及门户服务器上,否会出现严重后果。
  • 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 不允许未被双引号引用的保留关键字作为对象名称。 建议配置”含有保留关键字符的对象名称大小写转换“解决该类问题。 说明: 优先级高于配置“对象名称大小写转换”。 如果对象名称中含有保留关键字,将该名称转换为大写字母。 父主题: 配置说明
  • Microsoft SQL Server To GaussDB配置项使用说明 问题描述 配置建议 建议值 SQLServer 表字段支持IDENTITY属性,但GaussDB不支持该属性,默认无法迁移。 建议配置”IDENTITY列“解决该类问题。 将IDENTITY属性列转换为SERIAL类型。 影响:序列号数据类型是四个字节的自增整数。取值范围为1至2147483647。超过这个上限,GaussDB将报错,DML语句执行失败。 SQLServer 表字段支持bit类型,但是GaussDB,不支持该属性,默认无法迁移。 建议配置“bit类型”解决该类问题。 将bit类型转化为boolean类型。 影响:boolean类型的取值相比bit类型多了一个“null”。 SQLServer支持datetimeoffset数据类型,但是GaussDB不支持, 默认转成timestamptz(二者最大秒数精度存在差异),时间函数year等转换方案处理结果在特殊情况下存在差异。 建议配置"datetimeoffset类型转换"解决该类问题 将datetimeoffset类型转换为varchar2类型。 影响:datetimeoffset类型转换为varchar2类型。 高斯O模式空字符串''等同于null,ISNULL等函数转换方案存在语义问题。 建议配置"忽略空字符串''为null的风险"解决该类问题。 不忽略空字符串''为null的风险。 影响:存在空字符串''风险的函数不进行转换。 GaussDB 分布式不支持外键约束,相关CREATE TABLE以及ALTER TABLE语句涉及外键约束会导致执行异常,需要根据实际业务情况选择是否需要外键特性。 建议配置"FOREIGN KEY约束"解决该类问题。 影响:注释FOREIGN KEY约束,注释后,原表的外键约束失效,不能确保数据保持一致,有可能创建不一致的数据。 GaussDB 数据库不支持SQL Server表变量(包括多语句表值函数返回表定义),目前GaussDB 较为接近的转换方案为临时表,二者在部分使用场景下有区别,用户根据需要选择是否开启对表变量类型的转换。 建议配置"是否转换表变量(包括多语句表值函数返回表定义)"解决该类问题。 将表变量转换临时表。 影响:SQL Server中显式表变量不遵循事务的回滚语义,GaussDB中临时表遵循事务回滚语义,需要关注业务语义是否发生变化。 父主题: 配置说明
  • PostgreSQL To GaussDB配置项使用说明 问题描述 配置建议 建议值 PostgreSQL数据库函数DDL支持并行特性配置(PARALLEL),GaussDB不支持该配置 建议配置“函数并行特性”解决该类问题。 选择“注释函数并行特性配置“。 PostgreSQL字符类型长度单位是字符,GaussDB PG兼容模式下字符类型长度单位是字符,其他兼容模式下字符类型长度单位是字节。 建议配置“字符数据类型转换”解决该类问题。 迁移到GaussDB PG兼容模式选择“不对字符数据类型长度进行转换”;迁移到GaussDB 其他兼容模式选择“转换字符数据类型char/varchar为nvarchar2。”。 父主题: 配置说明
  • 配置项详细信息列表 Mas-DB-SDK配置分为props、etcd、sources、router四部分,在SpringBoot项目中配置项使用驼峰风格,详细信息如下表: 表1 props配置项 名称 说明 默认值 备注 props.appId MAS应用ID 空 MAS服务应用列表页中“应用id”列对应值。 props.monitorId MAS监控器ID 空 MAS服务DB监控页中“监控ID”列对应值。 props.databaseName MAS监控DB名称 空 MAS服务DB监控页选择应用单击“编辑”中连接池配置下“数据库名称”列对应值。 props.decipherClassName 密码解析类 com.huawei.devspore.mas.password.DefaultDecipher 需要实现基类 。com.huawei.devspore.mas.password.Decipher props.version 配置文件版本号 空 当前固定填v1。 props.azs 服务所属az信息 空 路由算法为本地读单边写时必填。 props配置项中的值都是取自于本服务在MAS服务注册时展示的值。 props配置项中的值与在MAS服务中的来源请参考props、etcd配置项在MAS服务中如何查询。 表2 etcd配置项 名称 说明 默认值 备注 etcd.address ETCD地址 空 MAS服务总览页单击ETCD连接地址后的查看详情获取。 etcd.apiVerison ETCD接口版本 v3 固定值v3。 etcd.username ETCD用户名 空 MAS服务总览页单击ETCD连接地址后的查看详情获取。 etcd.password ETCD密码 空 MAS服务总览页单击ETCD连接地址后的查看详情获取。 etcd.httpsEnable ETCD是否启用https false 根据ETCD实际情况选择,最新版本的MAS服务etcd均为https,此处需要配置为true,并配置证书路径。 etcd.certificatePath 启用https时证书存放路径 空 https证书存放路径。也支持不使用证书,此时不需要配置该配置项。 etcd配置项中的值都是取自于本服务在MAS服务etcd展示的值。 props配置项中的值与在etcd中的来源请参考props、etcd配置项在MAS服务中如何查询。 etcd.apiVerison填写固定值V3。 etcd.httpsEnable的值取决于ETCD页面“etcd集群地址”访问是http,这里值为false;访问是https,这里值为true。查看方法参考props、etcd配置项在MAS服务中如何查询。 表3 sources数据源配置项 名称 说明 默认值 备注 sources.ds1 数据库节点名称:ds1 空 与MAS服务中连接池中的命名一致。 sources.ds1.driverClassName 数据库驱动类名 空 驱动名称,自定义。 sources.ds1.jdbcUrl 数据库连接地址 空 与MAS服务中连接池中各节点下数据库连接地址一致。 sources.ds1.username 数据库用户名 空 与MAS服务中连接池中各节点下数据库用户名一致。 sources.ds1.password 数据库密码 空 如果密码为加密,需要自定义实现解密类配置:props.decipherClassName sources.ds1.type 数据源类型 空 支持类型如下: com.zaxxer.hikari.HikariDataSource org.apache.commons.dbcp2.BasicDataSource com.alibaba.druid.pool.DruidDataSource sources.ds1.props 数据源类型其他参数 空 根据自己选择的数据源类型配置。 props: connection-timeout: 1000 validation-timeout: 1000 sources主要配置本项目中涉及的一组或者多组数据源,所以上表中"ds1"为数据源的节点名称,如果有多组数据源,按照同样的格式配置多组即可。 对接MAS服务,各组数据源的节点名称与MAS服务中连接池中的命名一致。 无对接MAS服务,各组数据源的节点名称应命名为具有区别意义的名称。 表4 router路由配置 名称 说明 默认值 备注 router.active 默认数据源的激活节点 - - router.routeAlgorithm 路由策略 single-read-write 单边读写single-read-write。 router.nodes.ds1.loadBalance 读写分离负载均衡算法 空 可选项: RANDOM是随机 ROUND_ROBIN是轮询 router.nodes.ds1.master 主数据源 空 当slaves为空时,读写流量都在master 当slaves不为空时,读流量在slaves,写流量,DDL,事务操作在master router.nodes.ds1.slaves 读写分离读数据源列表 空 - router.nodes.ds1.azs 该数据中心所属az信息 空 路由算法为本地读单边写,且未对接mas平台时必填。 router.nodes配置罗列本项目中数据源路由节点,所以上表中“ds1”为数据源路由节点名称,如果有多组数据源,按照同样的格式配置多组即可。 节点router.nodes.ds1.master下配置的源名称为“表3 sources数据源配置项”中的“sources.ds1”主节点的值。 节点router.nodes.ds1.slaves下配置的源名称为“表3”中的“sources.ds1”从节点的值。 router.active对应值为router.nodes的一个节点名称。 父主题: 参数配置说明
  • Apache配置 新版本的静态页面采用Apache的方式展现给用户,这里仅交易与门户服务器需要配置,其他服务器不需要配置。 修改Apache主配置文件(文件地址:#vi /etc/httpd/conf/httpd.conf): 图1 修改Apache主配置文件1 图2 修改Apache主配置文件2 图3 修改Apache主配置文件3 再配置虚拟站点(配置文件地址:#vi /etc/httpd/conf.d/nacec.conf) 初始情况下,该文件是不存在的,需要新建。 从安全性考虑,请删除/etc/httpd/conf.d/下的所有文件。 启动apache服务: #service httpd restart 父主题: 应用程序部署及配置说明