分享好友 数据库首页 频道列表

升级SQL Server 2014的四个要点要注意

SQL Server  2015-10-15 10:590

升级并不容易,但是有一些特性值得花时间了解。下面本文将介绍一些避免升级问题的技巧。

升级一个关键业务SQL Server实例并不容易;它要求有周全的计划。计划不全会增加遇到升级问题的可能性,从而影响或延迟SQL Server 2014的升级。在规划SQLServer 2014升级时,有一些注意事项有助于避免遇到升级问题。

注意:升级SQL Server 2014的四个要点!

选择升级策略

在SQL Server升级中考虑采用内部或是并行迁移策略。我首选并行迁移策略,因为它风险较低,即便难度更大一些。内部迁移在升级之后不容易回滚。内部迁移的主要优点是不需要担心SQL Server安全性及其他配置,因为它们在升级前后均保持同步。然而,内部迁移要求在升级做好所有系统和用户数据库的备份。如果SQL Server运行在一个虚拟化环境中,那么可以直接执行一次虚拟机快照,然后将它作为升级失败后的回滚方法。

在并行升级中,新版本SQL Server安装后与旧版本同时存在,位于相同或不同服务器的不同实例上。这类似于在新安装一个数据库之后,从现有SQL Server实例迁移数据库。例如,如果使用这种方法将一个已有的SQL Server 2008实例升级到SQL Server2014,则必须安装SQL Server 2014,而SQL Server 2008实例位于不同的实例或不同的服务器上。这种方法的优势在于你可以对数据库功能执行相似的测试。而且,回滚流程也比内部升级更加简单,因为原始服务器仍然保持不变。这种方法的缺点是你必须在新实例生成之后再执行一次相同的数据库迁移过程,并且要手工修改SQL Server实例的配置与安全。但是,如果要升级到新硬件或合并多个SQL Server实例,则更适合采用并行升级策略。

理解兼容性和硬件要求

在升级SQL Server 2014之前,一定要先理解兼容性和硬件平台要求。SQL Server 2014有一些关于操作系统和硬件平台的安装要求。不同版本的SQL Server 2014版本有不同的要求。例如,每一个SQLServer 2014版本都有不同的操作系统要求。你必须安装操作系统和指定版本的服务包(SP),才能满足SQL Server安装要求。规定的SP要求是指最低要求。SQL Server 2014安装程序会检查计算机是否满足操作系统和硬件要求,然后才允许安装或升级。一定要检查特定版本的硬件和软件要求。例如,如果准备从SQL Server 2005升级到SQL Server2014,则一定要保证硬件支持运行SQL Server 2014。

接下应该分析计划升级的SQL Server环境,保证环境支持将当前版本升级到预期版本的SQL Server 2014。关于从旧版本SQLServer升级到SQL Server 2014的升级支持路径信息,以及SQL Server 2014支持的升级版本,请参见SQLServer Books Online文章:“支持的升级版本。”

使用Upgrade Advisor

无论选择哪一种SQL Server升级方式,都应该保证应用程序在升级之后能正常工作。SQL Server Upgrade Advisor工具可以帮助完成SQL Server升级准备。UpgradeAdvisor可以帮助确定一些可能影响升级的关键问题,如废弃或停止的特性、破坏性修改和行为修改。Upgrade Advisor安装文件(sqlua.msi)位于SQL Server 2014安装介绍的redist文件夹中,也可以从SQL 2014Feature Pack下载包中找到。

安装Upgrade Advisor

运行SQL Server 2014产品介质redist文件夹的SQLUA.msi文件,就可以安装Upgrade Advisor。如果已经下载了SQLServer 2014特性包,则可以双击自解压可执行文件,然后它会提示是否接受授权协议,安装后会提示输入注册信息。

在运行Upgrade Advisor时,首先会显示一个欢迎界面。在欢迎界面上,你可以查看Upgrade Advisor文档 ,启动Upgrade Advisor向导和UpgradeAdvisor报告浏览器。

执行下面的步骤启动并运行UpgradeAdvisor:

1. 在“开始”菜单上找到“所有程序”-“Microsoft SQL Server 2014”,单击SQL Server 2014 Upgrade Advisor。

2. 在SQL Server 2014欢迎界面上,单击“Launch Upgrade Advisor Analysis Wizard”,然后单击Next(下一步)。

3. 检查想要分析的升级服务,然后单击Next(下一步)。你应该只选择计算机中已经安装的服务。如果选择了一个未安装的服务,那么Upgrade Advisor会检测到该服务未安装,然后报告为错误状态。

4. 在报告中,When to fix(何时修复)列中带有“Before”(升级前)字样的状态都必须先修正,然后才能继续升级SQL Server。

5. 输入实例名称。输入实例名称或者从下拉列表选择实例,就可以选择一个已有实例。

6. 选择身份验证类型:Windows身份验证或SQL Server身份验证。如果选择Windows身份验证,则使用当前登录用户作为身份验证帐号。

7. 处理所选具体服务的相关提示。默认情况下,SQL Server Upgrade Advisor会检查所有数据库。此外,你可以分析跟踪文件和SQL批处理文件,帮助检测应用程序兼容性问题。然而,你必须保证该跟踪文件和批处理文件包含应用程序使用的所有命令。如果在升级时选择检测SSIS包,则选择选择分析服务器或存储在包文件的包。如果想要分析这两种服务,则必须运行两次Upgrade Advisor。

8. 检查和确认设置。

9. 单击Run(运行),启动分析过程。

10. 这时UpgradeAdvisor就会运行,同时有一个进度对话窗口显示分析进度。最后对话窗口会显示最终分析结果,其中列出了所有可能影响升级的警告或错误状态。

关于Upgrade Advisor的更多信息,请参考微软的官方资料。

SQL Server升级过程与SQL Server 2014安装过程类似。你可以安装和升级同一个安装文件包含的服务。例如,你可以升级数据库引擎中的一个现有实例,也可以安装Analysis Services、IntegrationServices和Reporting Services。更多的信息参见Microsoft SQL Server UpgradeHow-to Topics网页。

在升级之后,要监控应用程序性能和检查Windows及SQL Server错误日志,确认没有出现问题。而且,还应该重建所有用户数据库索引,运行sp_updatestats脚本,针对所有内部表和外部表执行更新统计。

除了这些任务之外,还要针对所有用户数据库执行DBCC UPDATEUSAGE;它会修正目录视图中的页计算和行计数。

以上就是升级SQL Server 2014的四个要点,一定要注意哦

查看更多关于【SQL Server】的文章

展开全文
相关推荐
反对 0
举报 0
评论 0
图文资讯
热门推荐
优选好物
更多热点专题
更多推荐文章
去重复的sql(Oracle) 去重复的英文
1.利用group by 去重复2.可以利用下面的sql去重复,如下  1) select id,name,sex from (select a.*,row_number() over(partition by a.id,a.set order by name) su from test a ) where su=1  2)select id,name,sex from (select a.*,row_number() over(p

0评论2023-02-10893

Oracle SQL七次提速技巧
以下SQL执行时间按序号递减。1,动态SQL,没有绑定变量,每次执行都做硬解析操作,占用较大的共享池空间,若共享池空间不足,会导致其他SQL语句的解析信息被挤出共享池。create or replace procedure proc1as beginfor i in 1..100000 loop    execute imme

0评论2023-02-10755

SQL ORACLE case when函数用法
case when 用法(1)简单case函数:格式:  case 列名   when 条件值1 then 选项1  when 条件值1 then 选项2......  else 默认值 end例如:  select   case job_level  when '1' then '1111'  when '2' then '2222'   when '3' then '3333

0评论2023-02-10564

mysql下如何执行sql脚本 执行SQL脚本
1.编写sql脚本,假设内容如下:  create database dearabao;  use dearabao;  create table niuzi (name varchar(20));  保存脚本文件,假设我把它保存在F盘的hello world目录下,于是该文件的路径为:F:\hello world\niuzi.sql2.执行sql脚本,可以有2种方法: 

0评论2023-02-10699

MySQL 5.7版本sql_mode=only_full_group_by问题
用到GROUP BY 语句查询时com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'col_user_6.a.START_TIME' which is not functionally dependent on colu

0评论2023-02-10973

Oracle迁移到MySQL性能下降的注意点 oracle数据库迁移需要注意的问题
背景:最近有较多的客户系统由原来由Oracle改造到MySQL后出现了性能问题CPU 100%,或是后台的CRM系统复杂SQL在业务高峰的时候出现堆积导致业务故障。在我的记忆里面淘宝最初从Oracle迁移到MySQL期间也遇到了很多SQL的性能问题,记忆最为深刻的子查询,当初的

0评论2023-02-10580

ORACLE中通过SQL语句(alter table)来增加、删除、修改字段
1.添加字段:alter table  表名  add (字段  字段类型)  [ default  '输入默认值']  [null/not null]  ;2.添加备注:comment on column  库名.表名.字段名 is  '输入的备注';  如: 我要在ers_data库中  test表 document_type字段添加备注  comm

0评论2023-02-10584

MySQL与Oracle 差异比较之六触发器
触发器编号类别ORACLEMYSQL注释1创建触发器语句不同create or replace trigger TG_ES_FAC_UNIT  before insert or update or delete on ES_FAC_UNIT  for each rowcreate trigger `hs_esbs`.`TG_INSERT_ES_FAC_UNIT` BEFORE INSERT on `hs_esbs`.`es_fac_u

0评论2023-02-10914

mysql where条件:某时间字段为今天的sql语句
1.查询:注册时间为今天的所有用户数:select count(*) from customer where TO_DAYS(createtime) = TO_DAYS(NOW())2.获取当前时间到凌晨24点还有多长时间:(Java中可用于判断某时间是否为今天)final Calendar cal = Calendar.getInstance();    ca

0评论2023-02-10717

mysql中的sql
变量用户变量: 在用户变量前加@系统变量: 在系统变量前加@@运算符算术运算符有: +(加), -(减), * (乘), / (除) 和% (求模) 五中运算位运算符有:(位于), | (位或), ^ (位异或), ~ (位取反),(位右移),(位左移)比较运算符有: = (等于),(大于),(小于), = (大

0评论2023-02-10936

Oracle的HINT可以强制指定SQL的执行计划,比如选择索引、表的连接顺序以及表的连接方式等等。(转)
在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 :  select table_name from user_tables;  //当前用户的表 select table_name from all_tables;  //所有用户的表 select table_name from dba_tables;  //包

0评论2023-02-10857

Oracle sql 子字符串长度判断
Oracle sql 子字符串长度判断 select t.* from d_table t WHEREsubstr(t.col,1,1)='8' and instr(t.col,'/')0 and length(substr(t.col,1,instr(t.col,'/')))5; 字符串的前两位都是数字:select * from d_table t WHERE regexp_like(substr(t.col,1,2), '^[

0评论2023-02-10759

Oracle、MySql、Sql Server比对
MySql:廉价(部分免费):当前,MySQL採用双重授权(DualLicensed),他们是GPL和MySQLAB制定的商业许可协议。假设你在一个遵循GPL的***(开源)项目中使用MySQL,那么你能够遵循GPL协议免费使用MySQL。否则,你须要购买MySQLAB制定的那个商业许可协议。Windows $

0评论2023-02-10441

Oracle 存储过程,临时表,动态SQL测试
--创建事务级别的结果临时表create global temporary table tmp_yshy( c1 varchar2(100), c2 varchar2(100))on commit delete rows;--创建事务级别的存储sql语句的临时表create global temporary table tmp_sql( c1 varchar2(4000))on commit delete rows;测

0评论2023-02-10508

更多推荐