##好久一段时间没有更新学习笔记,惰性这种东西真是要好好克服。

前言:这周六,也就是7月4号,即将要实践一个之前没有做过事情。为什么用实践这个词语呢?因为,CitrixXenDesktop也不是没有碰过,只是之前都是做POC,真的没有在production site试过。而且之前POC都是新安装,比较好控制。但这回是update,希望一切顺利。怀着紧张而兴奋的心情做好准备。


环境 existing environment :CitrixXenDeskptop(XD) 5.6, OS: 08R2

目标:从5.6 update到7.1

XD - SQL server

如果是默认安装的话,数据库应该是跟Delivery Controller 安装在同一部机。但是很多为了安全的需要,会把数据库另外安装在一部独立机子上运行。这次的环境刚巧就是数据库独立开来了,所以在做update之前,首先就要检查数据库现在的运行状态。 

  1. SQL server version 

    检查数据库的版本有很多种方法,详见以下链接  https://support.microsoft.com/en-us/kb/321185

    我自己习惯用以下

    1)打开SQL Server Explorer·右键SQL server 属性。可以看到SQL Server的基本信息。

    2)Query  (推荐)

SELECT SERVERPROPERTY('edition') as Edition, 
SERVERPROPERTY('productversion')as ProductVersion,
SERVERPROPERTY('productlevel') as ProductLevel

           会显示Result

wKioL1WU-pXjrImWAAFVTP1JWwk106.jpg

     3)Query

Select@@Version

会显示简单一行类似上面链接提到的信息

Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64)   Mar 29 2009
10:11:52   Copyright (c) 1988-2008 Microsoft Corporation  Express
Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )


2. SQL Server Connection

安全起见,SQL server 如果需要update 建议不要读写数据。所以在update之前,很有必要检查一下现在活跃的链接。 建议使用以下第2跟第3种方法。 

 1)右键SQL server,选择“Activity Monitor”,可以看到下图右边的信息。建议要用local admin 来查看,因为如果权限不够,是查看不了或者是没法查看完整。

wKiom1WU_dqgf38lAATb8241bsw447.jpg

2)QUERY (最简洁)


SELECT DB_NAME(dbid) AS DBName,
       hostname AS HostName,
       COUNT(dbid) as NumberOfConnections,
       loginame as Loginame
FROM   sys.sysprocesses
where dbid>0
GROUP BY dbid,loginame,hostname
ORDER BY DB_NAME(dbid)

会出现以下result

wKioL1WVAZiSWxfYAAFx3yFK1go300.jpg

3)QUERY

EXEC sp_who2 'active';
GO

这个语句运行以后出现的是最全面的Connection信息,以Connection Session ID作为标识,除了会显示上一个语句的资料,还会有以下。 

wKioL1WVAovgg3I_AAEbY51X9hU066.jpg

4) QUERY

USE master;
GO
EXEC sp_who 'active';
GO

这个语句是上面语句的浓缩版。我是很少会用的。输出的是以下result。

wKioL1WVBHKwFrkZAAEdGuO_Ejo455.jpg