安装 SQL Server 2005 分析服务计算机上安装 Microsoft Office Excel 2007会发生冲突,微软尚未公开发布补丁,我找了个临时办法
症状
考虑以下情形: • 具有 SQL Server 2005 安装计算机上安装 Microsoft Office Excel 2007年。
• 计算机上使用 SQLServerManagementStudio 或 SQL Server Business Intelligence Development Studio (BIDS)。
在此方案, 可能会收到一个或多个以下错误信息:
错误 1
发生意外错误: 应用程序中错误 ' '。
错误 2
发生意外错误: ' 已尝试来读取或写入保护内存。 ' 这通常表明其他内存已损坏。
错误 3
试图读取或写入保护内存。 这通常表明其他内存已损坏。 (msmgdsrv)
错误 4
设计器无法显示计算因为 MDX 脚本中有一个或多个语法错误。 要显示这些计算, 通过切换到计算视图工具栏, 上的脚本视图, 然后编辑 MDX 脚本解决语法错误。
错误 5
语法检查失败并出现以下信息:
应用程序中 error。
错误 6
应用程序中错误。 (msmgdsrv)
错误 7
查询准备失败。
已知以下操作来触发这些错误消息: • 使用 SQLServerManagementStudio
尝试创建新角色或编辑现有角色用于 SQL Server 2005 分析服务数据库。 在 创建角色 或 编辑角色 对话框中, 您按照这些步骤: 1. 单击左窗格中 维度数据 。
2. 在右窗格中单击 高级 选项卡。
3. 单击 检查 。
此外, 当您按照这些步骤 创建角色 或 编辑角色 对话框中可能出现相同错误信息: 1. 单击左窗格中 单元格数据 。
2. 在右窗格中单击 高级 选项卡。
3. 单击 检查 。
• 使用 SQL Server BusinessIntelligenceDevelopmentStudio
创建或打开 AnalysisService 项目。 在多维数据集设计器, 您执行下列操作之一: • 单击 计算 选项卡。
• 单击 操作 选项卡, 然后执行操作其中调用多维表达式 (MDX) 语法检查。
• 单击选项卡, KPI , 然后执行操作其中调用多维表达式 (MDX) 语法检查。
• 是否存在于多维数据集计算单击 Perspectives 选项卡。
• 是否存在于多维数据集计算单击 转换 选项卡。
当报告服务器项目向导用于创建报表使用 AnalysisServices 数据源时此外, 发生该问题。 报表向导 对话框中, 您执行下列操作之一: • 单击 查询生成器 , 并单击 查询生成器 对话框中 添加计算成员 。 在 计算成员生成器 对话框中, 单击 检查 。
• 单击 查询生成器 生成查询, 然后单击 确定 。
原因
发生此问题是因为安装 Office Excel 2007年时安装新版本的 Msmgdsrv.dll 文件。 新版本的 Msmgdsrv.dll 文件与旧版本的 Msmdlocal.dll 文件, SQLServerManagementStudio 和 SQL Server BusinessIntelligenceDevelopmentStudio 将加载到 " 症状 " 部分中提到操作不兼容。
考虑以下情形: • 具有 SQL Server 2005 安装计算机上安装 Microsoft Office Excel 2007年。
• 计算机上使用 SQLServerManagementStudio 或 SQL Server Business Intelligence Development Studio (BIDS)。
在此方案, 可能会收到一个或多个以下错误信息:
错误 1
发生意外错误: 应用程序中错误 ' '。
错误 2
发生意外错误: ' 已尝试来读取或写入保护内存。 ' 这通常表明其他内存已损坏。
错误 3
试图读取或写入保护内存。 这通常表明其他内存已损坏。 (msmgdsrv)
错误 4
设计器无法显示计算因为 MDX 脚本中有一个或多个语法错误。 要显示这些计算, 通过切换到计算视图工具栏, 上的脚本视图, 然后编辑 MDX 脚本解决语法错误。
错误 5
语法检查失败并出现以下信息:
应用程序中 error。
错误 6
应用程序中错误。 (msmgdsrv)
错误 7
查询准备失败。
已知以下操作来触发这些错误消息: • 使用 SQLServerManagementStudio
尝试创建新角色或编辑现有角色用于 SQL Server 2005 分析服务数据库。 在 创建角色 或 编辑角色 对话框中, 您按照这些步骤: 1. 单击左窗格中 维度数据 。
2. 在右窗格中单击 高级 选项卡。
3. 单击 检查 。
此外, 当您按照这些步骤 创建角色 或 编辑角色 对话框中可能出现相同错误信息: 1. 单击左窗格中 单元格数据 。
2. 在右窗格中单击 高级 选项卡。
3. 单击 检查 。
• 使用 SQL Server BusinessIntelligenceDevelopmentStudio
创建或打开 AnalysisService 项目。 在多维数据集设计器, 您执行下列操作之一: • 单击 计算 选项卡。
• 单击 操作 选项卡, 然后执行操作其中调用多维表达式 (MDX) 语法检查。
• 单击选项卡, KPI , 然后执行操作其中调用多维表达式 (MDX) 语法检查。
• 是否存在于多维数据集计算单击 Perspectives 选项卡。
• 是否存在于多维数据集计算单击 转换 选项卡。
当报告服务器项目向导用于创建报表使用 AnalysisServices 数据源时此外, 发生该问题。 报表向导 对话框中, 您执行下列操作之一: • 单击 查询生成器 , 并单击 查询生成器 对话框中 添加计算成员 。 在 计算成员生成器 对话框中, 单击 检查 。
• 单击 查询生成器 生成查询, 然后单击 确定 。
原因
发生此问题是因为安装 Office Excel 2007年时安装新版本的 Msmgdsrv.dll 文件。 新版本的 Msmgdsrv.dll 文件与旧版本的 Msmdlocal.dll 文件, SQLServerManagementStudio 和 SQL Server BusinessIntelligenceDevelopmentStudio 将加载到 " 症状 " 部分中提到操作不兼容。
http://support.microsoft.com/kb/926422/
微软暂时没有公开发布针对该问题的补丁。
本来有点绝望了,考虑是不是要删除Excel 2007 重装SQL Server了,本着试试看的心态,
考虑到该问题的原因是Msmgdsrv.dll 文件引起的,我看是不是拿最新的版本替换是不是能够成功。
第一步,找出Msmgdsrv.dll。搜索Msmgdsrv.dll 文件,总共发现8个之多,其中一个版本为9.0.3017.0,其余版本是9.0.2153.0(我的SQL在SP1基础上打了2153补丁)
第二步,替换。我第一次把唯一的一个3017版本替换成2153,没有成功。第二次反过来,把2153都替换成3017,呵呵,竟然没有出现上面的问题了。
不过这是没有经过严格测试的办法,请慎重选择,最好在微软没有修订BUG之前,不要在SQL 2005上安装Excel 2007(SharePoint 2007应该也是)。
posted on 2006-12-08 10:35 无为而为-凡事从积极的态度做起 阅读(2870) 评论(14) 编辑 收藏 举报