本文介绍如何将本地环境中金蝶K/3 WISE 15.0或15.1的账套数据迁移至阿里云RDS SQL Server中,涉及OSS数据备份恢复到RDS、配置RDS与ECS实例以支持分布式事务处理、部署账套管理工具及数据库配置等操作,确保云端部署的金蝶系统运行顺畅,实现数据处理的一致性和事务隔离,助力企业高效完成云端迁移。
操作流程简介
恢复账套数据到RDS:将本地金蝶K/3 WISE账套数据库的全量数据备份上传到OSS,再将OSS备份数据恢复至RDS SQL Server实例中。
设置允许执行分布式事务:配置RDS、ECS、Windows系统的访问设置,确保所需的端口开放,可以执行分布式事务。
账套管理工具的安装与数据库配置:安装金蝶K/3 WISE的账套管理工具并配置数据库连接,以使其与RDS实例适配。
准备工作
自行完成本地金蝶K/3 WISE账套数据库文件的全量数据备份。
创建Windows系统的ECS实例(本文以
Windows Server 2016
系统为例)。创建方法,请参见创建ECS实例(Windows系统)。创建RDS SQL Server实例,请确保RDS实例与待安装金蝶K/3 WISE的ECS实例在同一个地域,且VPC相同。创建方法,请参见创建RDS SQL Server实例。
说明RDS SQL Server实例需满足如下条件:
数据库版本:2022 企业集群版、2019 企业集群版、2017 企业集群版、2016 企业版、2012 企业版、2022 标准版、2019 标准版、2017 标准版、2016 标准版、2012 标准版、2008 R2 云盘版
规格族:通用型、独享型(不支持共享型)
恢复账套数据到RDS
步骤一:上传账套数据备份到OSS
登录OSS控制台。
在右侧导航栏单击Bucket 列表,然后单击创建Bucket。
设置如下关键参数,其他参数保持默认,单击确定。
参数
说明
Bucket名称
存储空间名称。
地域
存储空间所在地域。
重要请确保存储空间所在地域和ECS、RDS实例在同一地域。
存储类型
选择低频访问存储。
存储冗余类型
选择本地冗余存储。
读写权限
选择私有。
版本控制
选择未开通。
服务端加密方式
选择无。
实时日志查询
选择未开通。
说明其他参数的详情说明,请参见控制台创建存储空间。
在左侧单击Bucket 列表,单击刚创建的存储空间。
单击
,然后单击上传文件。将要上传的账套数据库备份文件拖拽到待上传文件区域;或者单击扫描文件,选择备份文件。
说明详细的参数介绍,请参见控制台上传文件。
步骤二:在RDS中创建高权限账号
步骤三:将OSS备份数据恢复上云到RDS
若您初次使用RDS备份服务,您需要使用阿里云主账号完成DBS服务关联角色(AliyunServiceRoleForDBS)授权。具体操作,请参见如何授权DBS服务关联角色。
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏选择备份恢复,然后单击OSS备份数据恢复上云。
说明如果没有此按钮,请确认您的实例版本是否满足。更多详情,请参见准备工作。
两次单击下一步进入数据导入步骤。
设置如下参数。
参数
说明
数据库名
目标实例上的目标数据库名称。
OSS Bucket
选择备份文件所在的OSS存储空间。
OSS 文件列表
单击右侧放大镜按钮,可以按照备份文件名前缀模糊查找,会展示文件名、文件大小和更新时间。请选择需要上云的备份文件。
上云方案
选择打开数据库。
一致性检查方式
选择同步执行 DBCC。
说明如果您是第一次使用OSS备份数据恢复上云功能,该页面会提示您给RDS官方服务账号授予访问OSS的权限,单击授权地址并授权地址即可。
单击确定。
说明请您耐心等待数据导入完成,可以在数据库管理页面查看数据库状态。
设置允许执行分布式事务
步骤一:设置RDS分布式事务
设置白名单分组
在RDS实例中设置白名单分组,以允许特定ECS实例通过其IP地址访问RDS实例。
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏单击白名单与安全组,然后在
default
白名单分组右侧单击修改,填写ECS实例的IP地址。说明如果ECS与RDS在相同VPC内,请填写ECS的私有IP。
如果ECS与RDS在不同VPC内,请填写ECS的公网IP,且需要为RDS实例申请外网地址。
您可以在ECS实例的实例详情页面查看私有IP或公网IP地址。更多详情,请参见查看ECS实例IP地址。
ECS实例的IP获取页面如下:
单击确定。
设置分布式事务白名单
在RDS实例中设置分布式事务白名单,明确哪些ECS实例可以通过计算机名参与分布式事务。
在RDS实例详情页的左侧导航栏单击数据安全性,然后单击分布式事务白名单页签。
单击添加白名单分组,设置如下参数后,单击确定。
参数
说明
分组名称:
长度为2~32个字符。由数字、小写字母以及下划线(_)组成。由小写字母开头,结尾必须是字母或数字。
组内白名单
填写
ECS实例IP地址,ECS实例上Windows系统的计算机名(Hostname)
,以英文逗号(,)分隔。例如:192.168.1.100,k3ecstest
。 如果有多个ECS实例添加,请分行填写。Hostname查看方法:在ECS实例上Windows系统的
页面查看。
步骤二:设置ECS安全组规则
调整ECS实例的安全组规则,开放必要端口,以确保ECS实例侧的网络配置与RDS侧的白名单设置相匹配,共同实现安全的分布式事务环境。
登录ECS管理控制台。
在左侧选择
。在页面左上角,选择实例所在地域。
找到目标实例,单击实例ID。
在顶部导航栏中,选择安全组。
单击目标安全组操作列下的配置规则。
选择入方向页签,单击手动添加。
设置如下参数,单击保存。
参数
说明
授权策略
选择允许。
优先级
保持默认值:1。
协议类型
选择自定义 TCP。
端口范围
填写135。
说明135是RPC服务的固定端口。
授权对象
访问RDS实例的
页面,将RDS实例信息的2个IP地址(即RDS SQL Server实例底层所在ECS实例的IP)填写到授权对象框。说明您也可以通过DescribeDBInstanceIpHostname接口查询IP地址。
描述
长度为2~256个字符,不能以
http://
或https://
开头。再次配置安全组规则,端口范围填写1024/65535,其他参数与步骤8配置项相同。
步骤三:设置Windows系统允许分布式事务
配置Windows系统以兼容分布式事务处理,包括端口开放、主机映射和DTC安全设置。
登录ECS实例,本文以
Windows Server 2016
系统为例。打开hosts文件,路径为C:\Windows\System32\drivers\etc\hosts。
访问RDS实例的
页面,将2个RDS实例信息(即RDS SQL Server实例底层所在ECS实例的内网IP和ECS主机名)填写到hosts文件的结尾处。说明您也可以通过DescribeDBInstanceIpHostname接口查询RDS实例底层所在ECS实例的内网IP和ECS主机名(IpHostnameInfos)。
保存hosts文件。
在
页面打开组件服务。选择
。在右侧本地DTC上单击鼠标右键,选择属性。
选择安全页签,参照下图进行设置。
单击确定,在弹出的MSDTC服务对话框中单击是,等待MSDTC服务重新启动完成。
账套管理工具的安装与数据库配置
安装账套管理工具和配置数据库连接,使金蝶K/3 WISE适应新的数据库环境。
登录ECS实例,本文以
Windows Server 2016
系统为例。下载账套管理工具。
说明不同金蝶K/3 WISE版本需要的账套管理工具不同,当前仅提供金蝶K/3 WISE 15.0/15.1的账套管理工具。
将下载的安装包解压缩后,将其中的文件复制到金蝶K/3 WISE的安装目录
K3ERP\KDSYSTEM\KDCOM
下。打开金蝶K/3 WISE软件,在弹出的账套管理数据库设置页面设置相关身份验证信息和数据服务器。
说明数据服务器填写RDS实例的内网地址。更多详情,请参见查看RDS实例内外网地址和端口。
在系统的下拉菜单里单击预设连接,设置预设连接,方便使用。
在数据库的下拉菜单里单击注册账套。
选择对应的数据库,并单击所有。
登录使用金蝶K/3 WISE
全部设置完成后,ECS实例和RDS实例之间就能够支持分布式事务,您也可以正常登录并使用金蝶K/3 WISE。