sqlserver &reporting service升级2012->2017

1. 原因:需要copy报表项目,但本服务器A 使用的是sqlserve2012,reporting service不支持新版的报表;

  报错:报表服务器数据库的版本格式无效,或无法读取。找到的版本为“2017”,而所需的版本为“162”。 (rsInvalidReportServerDatabase)

2. ServerA系统:Windows Server2012 R2, sqlserver版本: en 2012 和 reporting service一体的

3. 升级过程:

1) 安装sqlserver2017版本

  注意:必须也是EN, 否则会报错

选择从早期版本升级,期间还提示需要安装sqlserver2012 SP2,所以最好提前下载安装好

下载SP2时,需要先确认版本 和语言。注意版本指的是sqlserver引擎的版本;

  以下表示sqlserver引擎为32位,实例安装语言为简体中文。对应的SP2安装包则为 x86 CHN 

1 select  @@VERSION
2 3 
4 Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (Intel X86)
5 Oct 19 2012 13:43:21
6 Copyright (c) Microsoft Corporation
7 Standard Edition on Windows NT 6.2 <X64> (Build 9200: ) (WOW64) (Hypervisor)
8 
9 SELECT @@LANGUAGE
简体中文

  Download Microsoft® SQL Server® 2012 Service Pack 2 (SP2) from Official Microsoft Download Center

  2024-4-26 sqlserver2014升级到sqlserver2017记录:

背景:sqlserver2014运行内存启动5G多,高峰到9G,一个库的日志收缩立马又涨回来。恢复模式简单,限制日志大小,写满后就报错。不知道什么原因。试着升级到2017

>>> 报错1:安装程序在运行作业 UpdateResult 时失败。(sqlserver2014cnEnteripse升级到sqlserver2017cnEnterprise时出现)

错误代码 0x876E0003。

 

开启 Windows 自动更新或关闭自动更新、不勾选 “使用 Microsoft Update 检查更新(推荐)” 均无法继续安装。

解决方法:

手动创建 DefaultSetup.ini 放置到安装程序文件夹里的 x64 或者 x86 目录中,如果 DefaultSetup.ini 文件已经存在,则在 OPTIONS 节中增加 UpdateEnabled = False ,再来运行 SETUP.EXE 安装即可。

[OPTIONS] 
UpdateEnabled = False

 

 

>>>2.报错2(sqlserver2014cnEnteripse升级到sqlserver2017cnEnterprise时出现)

下载好补丁直接安装,提示拒绝访问。KB2919442 是 Windows Server 2012 R2 更新的先决条件,在尝试安装 KB2919355 之前应先安装 KB2919442 和clearcompressionflag.exe

安装 KB2919442也是不顺利,解决办法是手动下载 msu 文件。解压后使用 dism 命令安装。

1、将下载到的 msu 文件更改扩展名为 .cab ,并进行解压。

2、使用管理员权限启动 cmd

3、进入解压后的文件夹,输入以下命令进行安装:

dism /online /add-package /packagepath:"${CAB文件名}"

KB2919442很快安装好,有点信心了,继续安装clearcompressionflag.exe,运行两次没有弹框和提示,没报错就当成功。

继续改拓展名使用dism命令安装KB2919355,文件较大700M这样,cmd等了十分钟没有进度,夜已深我也困了,第二天早上,提示安装完成,重启计算机Y/N,幸运。

没有继续安装其余的补丁,重新升级sqlserver,没有新的报错。

 

 

 

 

 

期间没有出现其他报错,但是最好还是提前备份数据库

多次提醒安装会卸载reporting service,这正是我想要的

2) 安装reporting service 2017 

这个语言无所谓,我就安装了CHN的

 

提示:namespace不符合;新的是2016/01;老的ssdt支持的是2008/01

安装这个需要打补丁,写一下:

++++++++++++++++++++++++++++++++++++++++++

缺少KB2919355 去官网下载发现需要安装一组的补丁 不是一个

Download Windows Server 2012 R2 更新 (KB2919355) from Official Microsoft Download Center

  • 这些 KB 必须按以下顺序安装:
    •   KB2919442 clearcompressionflag.exe、KB2919355、KB2932046、KB2959977、KB2937592、KB2938439、KB2934018。
    •   KB2919442 是 Windows Server 2012 R2 更新的先决条件,在尝试安装 KB2919355 之前应先安装 clearcompressionflag.exe
  • 每一个安装完都会提醒重启,我是全部装完再重启的
  • 接下来安装reporting service就可以了

3)安装visualStudio工具

安装好之后使用原来的老版本sqlserver data tools 打开准备直接copy的报表rdl还是有问题。

装了一个visualStudio2019 只是因为有现成的安装包,,但是装完感觉有点浪费了,比较占内存;

 

ServerA 是不连外网的,所以需要离线安装官网没有直接封装的镜像文件

手动封装VisualStudio professional 2019:

 

步骤 1 - 下载 Visual Studio 引导程序
下载地址:https://learn.microsoft.com/zh-cn/visualstudio/install/create-an-offline-installation-of-visual-studio?view=vs-2022#step-1—download-the-visual-studio-bootstrapper
将下载的installer安装文件vs_professional__1249500016.1552297587.exe放在d:\vs_pro2019文件夹中,重命名为 vs_professional.exe

  • cmd 到d:\vs_pro2019 运行命令
d:\vs-pro-2019>vs_professional.exe --layout --add Microsoft.VisualStudio.Workload.VisualStudioExtension --add Microsoft.VisualStudio.Workload.Data  --add Microsoft.VisualStudio.Workload.NetWeb --includeRecommended --lang zh-cn

  ## add Microsoft.VisualStudio.Workload.Data : 数据库与存储; VisualStudioExtension:Visual Studio 扩展开发;Microsoft.VisualStudio.Workload.NetWeb:ASP.NET 和 Web 开发 ID: 

 

Visual Studio Professional 工作负载和组件 ID | Microsoft Learn

  ## 自动封装到d:\vs_pro2019文件夹

  • 安装:双击目录下的vs_setup.exe 就可以了。
  • setup直接装就行了

4. 报表迁移

ssms中连接到数据库之后

--查看serve版本
select
@@Version

1) 先删除2个数据库: ReportServer 和 ReportServerTempDB

2)运行 Report Server配置管理器  

  **注意到ssrs 2012版本的reproting service 管理器的名字的 reporting service配置管理器

  新建数据库,应用门户网站Reports 和管理网站ReportServer

3)vs2019 新建报表解决方案

vs2019默认安装不包含这个选择,需要安装扩展,可以离线下载Microsoft.DataTools.ReportingServices.vsix后,双击安装;

Microsoft Reporting Services Projects - Visual Studio Marketplace

      报表属性中 Target Server 重新配置门户网站地址

  数据集和报表需要重新deploy一次

  这个没有发现什么直接导入的办法?

报表数据库:

尝试了 新建数据库之前restore备份好的 reportserver两个数据库

完成之后报表无法打开了。

 

posted @ 2021-12-28 11:25  xTimeless  阅读(729)  评论(0)    收藏  举报