通过数据中心列表备份数据中心时部分数据库备份失败
问题现象
在“管理中心-数据中心列表”做“数据中心备份”,个别数据中心提示备份失败。
分析思路
数据中心备份失败,前端界面未明确错误信息。需要结合其他数据中心操作情况、管理中心日志、数据库日志等分析。此类情况影响因素较多,以下以案例说明。
案例一
对数据中心名称为“蓝海/测试”的数据中心备份失败。
案例一分析过程
1、检查存在其他数据中心。检查位于同一个数据库服务器上的其他数据中心在相同的备份目录备份是正常的。
2、备份异常的数据中心,前端操作业务未见异常。
3、管理中心日志提示“无法打开备份设备 'C:\Kingdee\F蓝海/测试***.bak'。出现操作系统错误 3(系统找不到指定的路径。)。”至此基本定位原因。
案例一原因说明
1、在管理中心做数据中心备份时默认使用“F+数据中心名称+当前时间信息”作备份文件名称。因数据中心名称存在操作系统不支持作为文件名的字符导致创建备份文件失败。
2、以Windows为例,以下字符不支持作为文件名的一部分。
案例一解决方案
1、在备份界面修改备份文件名称,移除或替换操作系统不支持作为文件名的特殊符号即可备份成功。
2、也可以升级到8.2.0.20240104及之后版本解决此问题。新版产品在备份时会将特殊字符自动替换为“_”处理。
案例二
对数据中心001进行备份,备份到12%后,提示备份失败
因为如上备份显示有一定的执行进度12%后提示备份失败,我们可以考虑直接查看数据库的日志。
1、登录SSMS-管理-SQL Server日志-打开最新的日志,如图所示,可看到失败原因:操作系统错误5(拒绝访问),从而基本可定位问题:备份时对备份存放目录(D:\test)都访问权限存在异常。
2、打开目标D:\test的属性,该案例看到目录属性缺少部分系统正常的继承权限如CREATOR OWNER(正常NTFS文件系统均应有继承于磁盘分区的CREATOR OWNER权限),如图缺少了继承权限:
案例二解决方案
本案例通过上述分析可知,对备份目录的访问拒绝权限是因为备份目标缺少继承权限,因此授予其相关权限即可,可通过如下两种方法处理:
操作方法一
① 打开该文件夹属性-安全-高级,重新启用继承,继承磁盘分区权限即可。
② 继承后的权限如图:
操作方法二
因磁盘分区权限新建文件夹即可自动默认继承,所以直接新建文件夹作为备份目录即可。
说明
拒绝权限的权限问题不局限于CREATOR OWNER权限异常,其他权限限制或异常也可能导致管理中心备份数据中心时决绝访问,如相关的用户和用户组包括但不限于:
NETWORK SERVICE:默认SQL Server服务的启动用户组;
Everyone:所有用户,如果配置了拒绝权限会导致无法访问,但需注意不建议开启Everyone对数据备份的权限,如果有配置拒绝,删除该用户即可。
SYSTEM:系统用户组,如果配置了拒绝权限,也将导致拒绝访问。
通过数据中心列表备份数据中心时部分数据库备份失败
本文2024-09-23 01:22:53发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-145567.html