目录

简介

先决条件

要求

使用的组件

迁移TMS

准备

备份SQL数据库

使用SQL CLI

SQL Management Studio

TMS传统代理

从TMS版本14或更高版本迁移

保存本地文件

恢复SQL数据库

SQL CLI使用

SQL Management Studio使用

数据库恢复后操作

从TMS版本14及更高版本迁移

TMSPE使用

TMS传统代理使用

TMS工具实用程序用法

安装后

TMS传统代理使用

删除旧服务器

运行TMS代理诊断

启用TMS代理复制到VCS

相关信息

简介

本文档介绍将思科网真管理套件(TMS)数据库应用程序从一台服务器迁移到另一台服务器所使用的步骤，其中提供了移动结构化查询语言(SQL)数据库位置的选项。

注意：没有将本地用户帐户从一个Microsoft Windows服务器迁移到另一个服务器的方法。如果使用本地Microsoft Windows帐户访问TMS服务器，则必须在新服务器上手动创建这些帐户。

先决条件

要求

Cisco 建议您了解以下主题：

- Microsoft SQL 服务器

- 思科TMS

使用的组件

本文档中的信息基于以下软件版本：

- TMS版本12、13和14

- TMSPE版本1.0

- Microsoft SQL Server第2005版和第2008版

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

迁移TMS

本节介绍用于迁移TMS的流程。

准备

注意：如果使用TMS旧版代理，请确保首先禁用对所有设备的复制。

关闭所有TMS Microsoft Windows服务：

- TMS代理服务

- TMS数据库扫描程序服务

- TMS实时服务

- TMS PLCM目录服务

- TMS调度程序服务

- TMS服务器诊断服务

- TMS简单网络管理协议(SNMP)服务

如果使用TMS调配扩展(tmspe)，则也将其关闭。

注意：如果使用TMS传统代理，在TMS的TMS代理设置（通常是TMS的FQDN，如在Microsoft Windows中配置）页面底部配置的完全限定域名(FQDN)在视频通信服务器(VCS)执行时必须可解析为TMS的IP地址查找FQDN。反向查找也必须存在。

备份SQL数据库

备份和还原SQL数据库时使用两种方法。CLI可在所有安装了SQL的系统上使用，但SQL Management Studio可从Microsoft下载并使用（如果需要）。

使用SQL CLI

如果SQL数据库当前与TMS服务器应用程序位于同一服务器上，并且您计划将数据库移动到新服务器（托管TMS的新Microsoft Windows服务器或单独的SQL实例），则必须将数据库备份并还原到新位置。

本节中介绍的命令在托管SQL Express实例的当前TMS服务器的命令提示符下输入，该TMS服务器使用tmsng数据库。编写这些命令是为了允许SQL Server通过当前登录的Microsoft Windows用户进行访问。要使用SQL登录凭据，请将 — E替换为 — U <username> -P <password>,并将用户名和密码替换为SQL凭据和系统管理权限。

TMS数据库

要使用CLI备份tmsng SQL数据库，请输入以下命令：

sqlcmd -S (local)\SQLTMS -E -Q "BACKUP DATABASE tmsng TO DISK='

\tmsng.bak'

使用此命令时，请将<path>替换为要保存备份的位置。此位置必须有足够的空间用于备份，并且SQL服务必须具有对其的访问权限。

TMSPE数据库 （使用TMSPE时）

如果使用tmspe，请输入以下命令以从CLI备份tmspe SQL数据库：

sqlcmd -S (local)\SQLTMS -E -Q "BACKUP DATABASE tmspe TO DISK='

\tmspe.bak'

将文件复制到新服务器

将备份文件复制到新的SQL Server位置。这可以是单独的SQL服务器，也可以是运行SQL Server Express的新TMS服务器位置。

注意：将备份文件复制到的位置要求SQL服务用户具有完全访问权限。

SQL Management Studio

本节介绍使用SQL Management Studio时的备份过程。

TMS数据库

在当前SQL服务器上，打开SQL Management Studio并导航到tmsng数据库。右键单击数据库并导航到任务>备份……:

在备份提示页面中，确保设置与显示的设置类似。可能指定了默认目标。如果要使用此位置存储备份，请单击确定，然后将备份发送到指定位置。如果未指定目标位置，请单击Add，单击……，然后输入tmsng的文件名。然后，单击所有三个屏幕的“确定”，数据库备份应发生。

注意：如果收到访问被拒绝消息，请确保您写入到SQL服务用户可以写入的位置。通常，这包括Microsoft SQL(MSSQL)内的备份文件夹。

TMSPE数据库（使用TMSPE时）

如果使用tmspe，请完成上述步骤，但右键单击tmspe数据库而不是tmsng数据库。将此备份命名为tmspe.bak。

将文件复制到新服务器

将备份文件复制到新的SQL Server位置。这可以是单独的SQL服务器，也可以是运行SQL Server Express的新TMS服务器位置。

注意：将备份文件复制到的位置要求SQL服务用户具有完全访问权限。

TMS传统代理

如果使用TMS旧版代理，请在旧TMS服务器上打开Windows资源管理器并导航至%OPENDS_HOME% > db > userRoot。

示例如下：

C：> Program Files > TANDBERG > TMS > Provisioning > OpenDS-2.0 > db > userRoot

将*.jdb文件复制到新TMS服务器上的临时位置。

从TMS版本14或更高版本迁移

如果TMS运行版本14或更高版本，则存在加密密钥，用于在tmsng数据库中安全地存储凭据。必须将此密钥从旧服务器复制到新服务器。要从旧服务器收集此信息，请打开TMS工具并选择加密密钥。然后，复制密钥。

注意：稍后在安装TMS时使用。

保存本地文件

TMS可能包含最终用户自定义文件。应检查这些位置。如果这些位置中有自定义文件，请确保保存这些文件并在重新安装后将其复制到新的TMS服务器位置。

以下目录是默认路径：

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > CiscoSettings

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > CompanyLogo

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > ExternalSourceFiles

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > Image

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > Language

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > Logo

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > Map

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > MGCSettings

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > Software

- C：> Program Files > TANDBERG > TMS > wwwTMS > Data > Sound

- C：> Program Files > TANDBERG > TMS > wwwTMS > Public > Data > SOFTWARE

恢复SQL数据库

备份和还原SQL数据库时使用两种方法。CLI可在所有安装了SQL的系统上使用，但SQL Management Studio可从Microsoft下载并使用（如果需要）。

SQL CLI使用

本节介绍SQL CLI的使用。

TMS数据库

注意：要继续，需要SQL Server（2005或2008版）或SQL Server Express（2005或2008版）的当前副本。

如果要在新TMS服务器上使用SQL Express来容纳数据库，请安装TMS，然后卸载它。这允许您创建恢复数据库所需的SQL Express实例。在安装期间，您不需要包括版本密钥和选项密钥，因为当从备份还原数据库时，此数据会被覆盖。如果使用单独的SQL服务器，则无需安装和卸载TMS。

在运行SQL Server或SQL Server Express的服务器上，输入本节中描述的命令以恢复SQL数据库。编写这些命令是为了允许SQL Server通过当前登录的Microsoft Windows用户进行访问。

要使用SQL登录凭据，请用-U <username> -P <password>替换-E，并用SQL凭据和系统管理权限替换用户名和密码。您还必须进行以下替换：

- 用SQL Server的主机名替换servername。

- 用SQL服务实例名替换实例名。

- 将<pathofbackup>变量替换为备份(.bak)文件的位置。

- 将<pathofdbfiles>变量替换为要存储数据库MDF文件(tmsng_data.mdf)的位置以及要存储数据库LDF文件(tmsng_log.ldf)的位置。

如果必须将数据库还原到SQL Version 2005，请输入以下命令：

sqlcmd -S <servername\instancename> -E -Q "DECLARE @Table TABLE (LogicalName

varchar(128),[PhysicalName] varchar(128), [Type] varchar, [FileGroupName]

varchar(128), [Size] varchar(128), [MaxSize] varchar(128), [FileId]varchar

(128), [CreateLSN]varchar(128), [DropLSN]varchar(128), [UniqueId]varchar

(128), [ReadOnlyLSN]varchar(128), [ReadWriteLSN]varchar(128),

[BackupSizeInBytes]varchar(128), [SourceBlockSize]varchar(128), [FileGroupId]

varchar(128), [LogGroupGUID]varchar(128), [DifferentialBaseLSN]varchar(128),

[DifferentialBaseGUID]varchar(128), [IsReadOnly]varchar(128), [IsPresent]

varchar(128));DECLARE @Path varchar(1000);SET @Path='<pathofbackup>\tmsng.bak'

;DECLARE @LogicalNameData varchar(256),@LogicalNameLog varchar(256);INSERT

INTO @table EXEC('RESTORE FILELISTONLY FROM DISK=''' +@Path+ '''');SET

@LogicalNameData=(SELECT LogicalName FROM @Table WHERE Type='D');SET

@LogicalNameLog=(SELECT LogicalName FROM @Table WHERE Type='L');RESTORE

DATABASE tmsng FROM DISK='<pathofbackup>\tmsng.bak' WITH REPLACE, MOVE

@LogicalNameData TO '<pathofdbfiles>\tmsng_data.mdf', MOVE @LogicalNameLog

TO '<pathofdbfiles>\tmsng_log.ldf'"

如果必须将数据库还原到SQL Version 2008，请输入以下命令：

sqlcmd -S <servername\instancename> -E -Q "DECLARE @Table TABLE (LogicalName

varchar(128),[PhysicalName] varchar(128), [Type] varchar, [FileGroupName]

varchar(128), [Size] varchar(128), [MaxSize] varchar(128), [FileId]varchar

(128), [CreateLSN]varchar(128), [DropLSN]varchar(128), [UniqueId]varchar

(128), [ReadOnlyLSN]varchar(128), [ReadWriteLSN]varchar(128),

[BackupSizeInBytes]varchar(128), [SourceBlockSize]varchar(128), [FileGroupId]

varchar(128), [LogGroupGUID]varchar(128), [DifferentialBaseLSN]varchar(128),

[DifferentialBaseGUID]varchar(128), [IsReadOnly]varchar(128), [IsPresent]

varchar(128), [TDEThumbprint]varchar(128));DECLARE @Path varchar(1000);SET

@Path='<pathofbackup>\tmsng.bak';DECLARE @LogicalNameData varchar(256),

@LogicalNameLog varchar(256);INSERT INTO @table EXEC('RESTORE FILELISTONLY

FROM DISK=''' +@Path+ '''');SET @LogicalNameData=(SELECT LogicalName FROM

@Table WHERE Type='D');SET @LogicalNameLog=(SELECT LogicalName FROM @Table

WHERE Type='L');RESTORE DATABASE tmsng FROM DISK='<pathofbackup>\tmsng.bak'

WITH REPLACE, MOVE @LogicalNameData TO '<pathofdbfiles>\tmsng_data.mdf',

MOVE @LogicalNameLog TO '<pathofdbfiles>\tmsng_log.ldf'"

TMSPE数据库（使用TMSPE时）

要将tmspe SQL数据库恢复为SQL版本2005，请在CLI中输入以下命令：

sqlcmd -S <servername\instancename> -E -Q "DECLARE @Table TABLE (LogicalName

varchar(128),[PhysicalName] varchar(128), [Type] varchar, [FileGroupName]

varchar(128), [Size] varchar(128), [MaxSize] varchar(128), [FileId]varchar

(128), [CreateLSN]varchar(128), [DropLSN]varchar(128), [UniqueId]varchar

(128), [ReadOnlyLSN]varchar(128), [ReadWriteLSN]varchar(128),

[BackupSizeInBytes]varchar(128), [SourceBlockSize]varchar(128), [FileGroupId]

varchar(128), [LogGroupGUID]varchar(128), [DifferentialBaseLSN]varchar(128),

[DifferentialBaseGUID]varchar(128), [IsReadOnly]varchar(128), [IsPresent]

varchar(128));DECLARE @Path varchar(1000);SET @Path='<pathofbackup>\tmspe.bak'

;DECLARE @LogicalNameData varchar(256),@LogicalNameLog varchar(256);INSERT

INTO @table EXEC('RESTORE FILELISTONLY FROM DISK=''' +@Path+ '''');SET

@LogicalNameData=(SELECT LogicalName FROM @Table WHERE Type='D');SET

@LogicalNameLog=(SELECT LogicalName FROM @Table WHERE Type='L');RESTORE

DATABASE tmspe FROM DISK='<pathofbackup>\tmspe.bak' WITH REPLACE, MOVE

@LogicalNameData TO '<pathofdbfiles>\tmspe_data.mdf', MOVE @LogicalNameLog

TO '<pathofdbfiles>\tmspe_log.ldf'"

要将tmspe SQL数据库恢复为SQL版本2008，请在CLI中输入以下命令：

sqlcmd -S <servername\instancename> -E -Q "DECLARE @Table TABLE (LogicalName

varchar(128),[PhysicalName] varchar(128), [Type] varchar, [FileGroupName]

varchar(128), [Size] varchar(128), [MaxSize] varchar(128), [FileId]varchar

(128), [CreateLSN]varchar(128), [DropLSN]varchar(128), [UniqueId]varchar

(128), [ReadOnlyLSN]varchar(128), [ReadWriteLSN]varchar(128),

[BackupSizeInBytes]varchar(128), [SourceBlockSize]varchar(128),

[FileGroupId]varchar(128), [LogGroupGUID]varchar(128), [DifferentialBaseLSN]

varchar(128), [DifferentialBaseGUID]varchar(128), [IsReadOnly]varchar(128),

[IsPresent]varchar(128), [TDEThumbprint]varchar(128));DECLARE @Path varchar

(1000);SET @Path='<pathofbackup>\tmspe.bak';DECLARE @LogicalNameData varchar

(256),@LogicalNameLog varchar(256);INSERT INTO @table EXEC('RESTORE

FILELISTONLY FROM DISK=''' +@Path+ '''');SET @LogicalNameData=(SELECT

LogicalName FROM @Table WHERE Type='D');SET @LogicalNameLog=(SELECT

LogicalName FROM @Table WHERE Type='L');RESTORE DATABASE tmspe FROM DISK=

'<pathofbackup>\tmspe.bak' WITH REPLACE, MOVE @LogicalNameData TO

'<pathofdbfiles>\tmspe_data.mdf', MOVE @LogicalNameLog TO

'<pathofdbfiles>\tmspe_log.ldf'"

SQL Management Studio使用

本节介绍SQL Management Studio的使用。

TMS数据库

在新SQL服务器上打开SQL Management Studio。右键单击“数据库”，然后选择“还原数据库:

在“恢复源”字段中，单击“从设备：单选按钮，然后输入tmsng.bak文件的位置。在选择要恢复的备份集：字段中，选中tmsng-Full Database Backup复选框。在“至”数据库中:字段中，选择tmsng，然后单击确定。这应会恢复tmsng数据库。

TMSPE数据库（使用TMSPE时）

恢复tmspe数据库所用的过程与恢复tmsng数据库所用的过程相同，但您选择tmspe备份文件而非tmsng备份文件，并选择tmspe数据库而非tmsng数据库。

注意：在新的数据库服务器上，确保SQL Browser服务运行。如果不运行，则tmspe安装失败。

数据库恢复后操作

恢复数据库后，请完成以下步骤：

1. 在新服务器上重新安装TMS，以托管TMS服务器应用。

2. 选择自定义安装以指向新的SQL Server位置。

从TMS版本14及更高版本迁移

在安装过程中，输入从原始TMS服务器复制的加密密钥。

注意：在某些情况下，此字段可能会灰显。如果是，在安装完成后，加载TMS工具并在其中输入加密字符串。然后，重新启动TMS服务器。

TMSPE使用

如果使用TMSPE，请在TMS服务器上重新安装TMSPE并指示新的数据库位置。

TMS传统代理使用

如果使用TMS传统代理，请完成以下步骤：

1. 停止TMS代理Microsoft Windows服务。这也会停止OpenDS Windows服务。

2. 浏览到%OPENDS_HOME% > db > userRoot。示例如下：C：> Program Files > TANDBERG > TMS > provisioning > OpenDS-2.0 > db > userRoot。

3. 删除文件夹中存在的所有文件。

4. 将从旧TMS服务器复制的.jdb文件移到文件夹中。

5. 启动TMSAgentService Microsoft Windows服务。

警告：此时不要访问TMS门户。

TMS工具实用程序用法

如果TMS服务器的主机名更改，并且您使用本地用户帐户(托管TMS服务器应用程序的服务器上存在的用户帐户 — 不是Active Directory(AD)帐户)，则必须运行TMS工具实用程序，以修改数据库中的数据，确保可以登录：

- 导航至TMS Tools > Utilities > Change Users Domain。

- 输入旧域名：<旧TMS服务器主机名>。

- 输入新域名：<new TMS server host name>。

警告：如果不执行此操作，可能导致无法访问TMS门户。

注意：在此迁移过程中，本地用户帐户不会移动到新服务器。如果使用本地Microsoft Windows帐户，则必须在TMS迁移到的新Microsoft Windows服务器上手动重新创建这些帐户。

安装后

要使用在TMS中具有站点管理员权限的用户帐户访问TMS门户，请完成以下步骤：

1. 导航至管理工具>配置>常规设置。

2. 确保软件FTP目录的值对于新服务器安装是准确的。如果在新服务器上（与旧服务器相比）安装了具有不同驱动器号的TMS，或者从32位版本切换到64位版本的Microsoft Windows Server操作系统(OS)，则此值可能错误。

3. 导航至管理工具>配置>网络设置。

4. 检查以下字段的值：

- 常规网络设置> 可下载软件包的URL

- 内部LAN上系统的高级网络设置> TMS服务器IPv4地址

- 内部LAN上系统的高级网络设置> TMS服务器IPv6地址

- 内部LAN上系统的高级网络设置> TMS服务器完全限定主机名

- 公共互联网/防火墙后系统的高级网络设置> TMS服务器地址（完全限定主机名或IPv4地址）

TMS传统代理使用

如果使用TMS传统代理，请完成以下步骤：

1. 导航至管理工具>配置> TMS代理设置。

2. 在“全局”>“设置”部分，输入LDAP配置密码和LDAP复制密码的密码。这可确保密码与数据存储位置同步。

3. 确保TMS Agent Backup > Backup Directory的值对于新服务器安装是准确的。如果在新服务器上安装了具有不同驱动器号的TMS（与旧服务器相比），或者从32位版本切换到64位版本的Microsoft Windows Server OS，则此值可能是错误的。

删除旧服务器

在页面底部的“TMS服务器”部分，您可能会看到多个TMS服务器。如果是，请完成以下步骤以删除旧服务器：

1. 单击计算机名称并选择“删除”。

2. 对于新计算机，验证网络地址是否正确（FQDN和IP地址）。 如果网络地址不正确，请完成以下步骤：

1. 单击Edit（位于右侧）。

2. 输入新TMS服务器的正确FQDN地址，然后单击Update。

3. 在页面顶部附近，在全局(Global)>设置(Settings)部分输入新的LDAP配置密码和LDAP复制密码。

4. 单击Save（在页面底部附近）。

运行TMS代理诊断

导航至管理工具> TMS代理诊断，并在本地TMS代理上运行TMS代理诊断。

注意：如果TMS代理诊断失败，请参阅《Cisco TMSAgent故障排除过程指南》。

启用TMS代理复制到VCS

在启用TMS代理复制到VCS时，请记住以下重要注意事项：

- 如果使用tmspe，则必须重新安装它并指明tmspe数据库的当前位置。

- 如果您使用Analytics Extensions，并且它们已安装在旧TMS服务器上，则必须在新服务器上重新安装它们。

- 如果使用TMS Extension for Microsoft Exchange，请使用其配置工具来指示TMS服务器的新位置。

- 如果由于域名系统(DNS)查找而复制失败，请确保在TMS的TMSAgent设置页面底部（通常是TMS的FQDN，如在Microsoft Windows中配置）附近配置的FQDN可解析为TMS的IP地址（当VCS执行此FQDN的查找时）。反向查找也必须存在。

相关信息

- TMSAgent故障排除步骤

- 技术支持和文档 - Cisco Systems