简介
本文档介绍在无法连接到Contact Center Enterprise(CCE)管理和数据库服务器(ADS)时,如何对Cisco Unified Intelligence Center(CUIC)进行故障排除。
背景信息
CUIC连接到ADS服务器上的awdb。当连接因特定错误而失败并且您收集了CUIC日志时,您会看到此错误。
0000177816: 10.10.10.10: Jul 14 2018 00:18:21.816 -0700: %CCBU___________CUIC-6-INFO: Checking if it's ok to switch the DS nodes based on exception thrown: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
java.sql.SQLException: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
at com.informix.util.IfxErrMsg.getLocSQLException(IfxErrMsg.java:493)
at com.informix.jdbc.IfxDriver.checkURL(IfxDriver.java:560)
at com.informix.jdbc.IfxDriver.connect(IfxDriver.java:208)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
这是一个一般性错误,表明访问SQL Server数据源失败。此错误的一个常见原因与CUIC和ADS服务器之间的传输层安全(TLS)握手进程失败有关。
问题
当CUIC无法连接到数据库,因此当生成报告时不会显示任何信息时,在CUIC主页>数据源下,您会看到脱机数据源(红色X),如图所示。
编辑数据源时,如果选中Test connect按钮,则会看到此错误,如图所示。
这是报告的特定错误:"对于数据库主机UCCE.cc.lab无效子协议无效子协议:“sql server”,如图所示。
故障排除
步骤1.收集CUIC应用程序日志。
步骤2.在CUIC应用程序日志中,您会发现与此问题相关的异常。
0000177816: 10.10.10.10: Jul 14 2018 00:18:21.816 -0700: %CCBU___________CUIC-6-INFO: Checking if it's ok to switch the DS nodes based on exception thrown: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
java.sql.SQLException: Invalid sub-protocol Invalid sub-protocol: 'sqlserver'
at com.informix.util.IfxErrMsg.getLocSQLException(IfxErrMsg.java:493)
at com.informix.jdbc.IfxDriver.checkURL(IfxDriver.java:560)
at com.informix.jdbc.IfxDriver.connect(IfxDriver.java:208)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
注意:UCCE 11.6支持传输层安全(TLS)1.2以连接到ADS。此错误与TLS版本不匹配相关,因为CUIC 11.5仅支持TLS 1.0/1.1。有关详细信息,请参阅兼容性列表。
摘要
此场景中的错误是由于CUIC 11.5使用TLS 1.0,而Microsoft SQL Server使用的版本是TLS 1.2。
存在与此TLS兼容性问题相关的增强缺陷,其中对此行为进行了更详细的描述:CSCvd35048 .
解决方案
日志中的错误仅表示与数据源的连接因各种原因而失败。如果问题与TLS协商失败有关,则可以实施两个选项来解决此问题。
选项1.默认情况下,CUIC 11.6支持TLS 1.2。将CUIC服务器升级到11.6并主动安装最新的COP文件。这是推荐选项。
选项2.也可以使用临时解决方法。 为了使用TLS 1.0,您可以在ADS上更改某些注册表项。这些是需要更改的注册表项。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server] "Enabled"=dword:00000001(Defaults to 0 and disables by default)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client] "Enabled"=dword:00000001(Defaults to 0 and disables by default)
警告:不建议使用选项2。仅当无法将CUIC升级到版本11.6时才使用它。