简介
本文档介绍对客户语音门户(CVP)报告服务器数据库清除故障(紧急和夜间清除)进行故障排除的步骤。
先决条件
要求
Cisco 建议您了解以下主题:
- CVP 服务器
- 思科统一智能联系管理(ICM)
- 思科统一联系中心企业版(UCCE)
使用的组件
本文档中的信息基于以下软件版本:
- CVP报告服务器8.5及更高版本
- CVP操作控制台(OAMP)
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
对最常见的情况进行故障排除
密码不匹配
确保CVP_dbadmin和CVP_dbuser密码相同。此CSCuw存在缺陷90124
.
这可在报告服务器的CVP日志中进行验证。
日志片段:
During night purge time 12:00 midnight as per the configuration done on OAMPserver, Purge started.
10.XX.XX.XX: Sep 20 2017 00:00:02.986 +0400: %CVP_10_5_RPT-1-REPORTING_ALERT_MESSAGE: Starting purge handler operation. [id:4024]
But failed due to password issue,
10.XX.XX.XX: Sep 20 2017 00:00:06.012 +0400: %CVP_10_5_RPT-3-REPORTING_DB_ERROR_MSG: (Database: cvp_data) Failed running the stored procedure sp_got_space(): java.sql.SQLException: Incorrect password or user com.informix.asf.IfxASFRemoteException: cvp_dbadmin@XX.com is not known on the database server.: java.sql.SQLException: Incorrect password or user com.informix.asf.IfxASFRemoteException: cvp_dbadmin@XX.com is not known on the database server. (DBScript.testPurgeNeeded)
java.sql.SQLException: Incorrect password or user com.informix.asf.IfxASFRemoteException: cvp_dbadmin@XX.com is not known on the database server.
密码不匹配解决方案
重置CVP_dbadmin和CVP_dbuser的密码:
步骤1.打开与报告服务器的远程桌面会话。
步骤2.使用具有管理员权限的用户登录到服务器。
第3步:确保CVP报告服务器上存在CVP报告用户Informix、cvp_dbadmin、cvp_dbuser。
步骤4. CVP报告用户必须是本地管理员和Informix管理员组的成员。
步骤5.确保CVP报告用户帐户未被锁定。
步骤6.确保在Windows密码更改之前,通过CVP OAMP控制台停止报告服务器。如果报告服务器未停止,它将尝试使用错误的用户名/密码组合进行连接,并锁定cvp_dbuser帐户。
第7步:确保CVP报告服务器上的思科CVP资源管理器服务处于Running状态。
步骤8.导航到计算机管理>本地用户和组>用户。
步骤9.将informix、cvp_dbadmin和cvp_dbuser的密码重置为临时密码。
步骤10.输入OAMP控制台网页并导航到Device Management > Unified CVP Reporting Server。选择并编辑CVP报告服务器配置。选择数据库管理>更改用户密码。
步骤11.输入步骤9中的临时密码作为旧密码,然后输入新的永久密码。
步骤12.确保帐户未通过Windows本地用户和组锁定。
步骤13.重新启动CVP报告服务器服务。
清除失败,错误为:运行存储过程sp_frag_mgt失败:-310
这可在报告服务器的CVP日志中进行验证。
日志代码段:
10.XX.XX.XX 00:00:03.683 -0500: %CVP_8_5_RPT-3-REPORTING_DB_ERROR_MSG: (Database: cvp_data) runDBPurge -- Failed running the stored procedure sp_frag_mgt: -310
10.XX.XX.XX 00:00:03.683 -0500: %CVP_8_5_RPT-1-REPORTING_DB_PURGE_FAILED:The Reporting (Database: cvp_data) database purge operation failed [Duration: 0.50
清除错误的解决方案–310
要解决此故障,请将垃圾邮件表放在报告服务器的cvp_data表中。
错误代码–310表示表(或分段)已存在。运行清除时,会将碎片分离到一个名为junk的表,然后该表被丢弃。由于清除未成功运行,因此清除过程结束时不会删除Informix.junk表。为了解决此问题,您需要手动删除表并采取以下步骤:
步骤1.导航到开始>所有程序> Informix Dynamic Server > cvp_db_<dbname>。
步骤2.输入dbaccess。
步骤3.从菜单中选择Connection。
步骤4.从数据库服务器列表中,选择适当的服务器。在本例中,cvp_data。
步骤5.在USER NAME >>提示符中,键入登录名。
步骤6.在PASSWORD >>提示符中,键入用户密码。
第7步:选择要使用的数据库cvp_data。
步骤8.选择退出以返回主菜单。
第9步:选择查询语言(Query-Language)以执行查询。
步骤10.运行查询丢弃表垃圾邮件。
一旦删除表,清除操作就会成功运行。
清除失败,错误运行存储过程sp_frag_mgt失败:-206
这可在报告服务器的CVP日志中进行验证。
日志代码段:
10.XX.XX.XX Nov 04 2017 00:02:55.489 +0400: %CVP_10_5_RPT-3-REPORTING_DB_ERROR_MSG: (Database: cvp_data) runDBPurge -- Failed running the stored procedure sp_frag_mgt: -206 [id:4012]
10:XX.XX.XX Nov 04 2017 00:02:55.520 +0400: %CVP_10_5_RPT-1-REPORTING_DB_PURGE_FAILED: The Reporting (Database: cvp_data) database purge operation failed [Duration: 89.72 seconds]. [id:4006]
清除错误的解决方案–206
检查Frag_mgt输出以了解存储过程失败的原因。如果这是因为Purgelist,请从cvpadmin表删除Purgelist。
警告:对于SQL分段日志,请确保在低语音流量期间采取这些步骤。
步骤1.使用dbaccess工具登录到cvp_data数据库并运行Call sp_frag_mgt('D')。输出以CVPHOME\logs\Frag_mgt.out格式写入
步骤2.检验它是否因垃圾清教徒而被卡住。
日志片段:
evaluates to alter fragment on table vxmlelement detach partition sys_p5962 junk
EXECUTE IMMEDIATE alter fragment on table vxmlelement detach partition sys_p5962 junk
;
exception : looking for handler
SQL error = -626 ISAM error = -106 error string = = ""
步骤3.针对cvp_admin表运行查询select * from ciscoadmin:purgelist,以检查purgelist。
警告:确保在低语音流量期间采取这些步骤。
步骤4.要删除纯字表,请在报告服务器上停止CVP服务Cisco CVP CallServer。
步骤5.运行命令dbaccess ciscoadmin "delete from purgelist where action='D';"
步骤6.手动运行过程sp_frag_mgt以检查是否成功执行。
步骤7.在报告服务器上启动CVP服务Cisco CVP CallServer。
验证
要验证清除是否正常工作,在清除失败并出现“Error 206(错误206)”后,请执行以下步骤:
步骤1.您可以检查cvp日志并确认不存在清除失败消息。
步骤2.运行命令onstat -d以检查数据库空间、使用情况、可用性等。
第3步:根据cvp_data表运行这些查询,以便根据为CVP OAMP清除设置中的相应表配置的保留期确认可用数据。
select min(dbdatetime) from vxmlelement
select min(dbdatetime) from call