我目前正在使用 Fixpack 1 并正在尝试安装任何更新的修复包。他们都拒绝以类似的错误申请自己。下面的一个来自 Fixpack 2 文件v10.5fp2_ntx64_server
。他们每个人都说他们无法升级我的版本,但他们都没有提供理由。
阅读安装规划链接后,遇到这个问题后我的大脑很痛:
DB2 必须安装在启用短名称的驱动器或没有空格的目录上,例如 E:\DB2\SQLLIB。要检查驱动器的当前 8.3 文件名设置,请在具有管理员权限的命令窗口中输入
fsutil.exe behavior query disable8dot3
运行命令时会返回以下可能值:
0: Create 8.3 short file names (default)
1: Do not create 8.3 file names
2: Set 8.3 file names on a per volume basis
3: Disable 8.3 file names on all volumes, except the system volume
NtfsDisable8dot3NameCreation 的注册表状态为 0,这意味着在所有卷上启用 8.3 文件名。要全局启用 8.3 文件名,请输入
fsutil.exe behavior set disable8dot3 0
如果 DB2 安装在不支持 8.3 名称的驱动器和不带空格的目录中,则必须将它重新安装在支持 8.3 名称的驱动器上。如果在禁用 8.3 名称支持时已经创建了您尝试安装 DB2 的文件夹,那么如果您尝试重新安装到同一目录,则不会创建短名称。Windows 短名称是在目录创建期间创建的,因此您必须将其安装到新目录中,或者如果目录为空,请删除该目录并允许重新创建。
在我的系统上,设置为默认值 2,即“每卷”。我不确定这是否是修复包拒绝自行安装的原因。
这是否意味着 IBM 实质上将他们的客户置于一个死亡陷阱,允许 DB2 的初始安装将其放入C:\Program Files\
,但拒绝在以后安装修订包?我不敢相信这是事实。任何 DB2 用完的人都可以C:\Program Files\
解释我们应该如何升级吗?
更新:
通过运行,dir /x
我发现层次结构中的所有目录从c:\
下到上sqllib
都有短名称。缺少它们不能成为拒绝安装更新的原因。
从您的屏幕截图来看,这是 Express -C版本。它不能用修订包升级。看这里
在我看来,您最好的选择是保持原样或计划迁移到新版本。IBM 仅提供我所能收集到的最新 Express-C 版本。
给客户的一个想法,2020 年 12 月 1 日的当前版本 - DB2 11.5.5.0
询问 google - 我在 kbce.com 上找到:寻找 Db2 Express-C 版本?该产品不再存在并被 Db2 Community Edition 取代!IBM Db2 Community Edition 11.5,RAM:16GB,CPU:4 个插槽或 4 个内核,数据库大小:100GB!没有进一步的限制或禁用的功能!