目錄

簡介

必要條件

需求

採用元件

背景資訊

組態

疑難排解

相關資訊

簡介

本文檔介紹為SQL資料庫配置客戶語音門戶(CVP)Call Studio資料庫元素Tomcat Java命名和目錄介面(JNDI)。

必要條件

需求

思科建議您瞭解以下主題：

- 思科整合客服中心企業版(UCCE)版本12.6.2

- 思科套裝客服中心企業版(PCCE)版本12.6.2

- CVP版本12.6.2

- CVP通話工作室12.6.2

採用元件

本檔案中的資訊是根據以下軟體版本：

- Cisco PCCE版本12.6.2

- CVP版本12.6.2

- CVP通話工作室12.6.2

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

背景資訊

資料庫元素提供了在語音應用程式呼叫流中的外部資料庫上運行結構化查詢語言(SQL)命令的能力。該元素要求在Java應用程式伺服器中配置JNDI，以便處理資料庫連線。每個元素只能運行一個SQL陳述式。可以執行四種型別的命令，但在本文檔中只使用單個命令：

Single — 用於運行只返回單行的SQL查詢。將建立元素資料，變數名稱為所返回列的名稱，該列的值為元素資料值（字串）。 如果未返回任何行，則不會設定任何元素資料。

有關詳細資訊，請參閱CVP VXML元素指南。

組態

本節介紹如何在Tomcat中建立新的JNDI資料庫連線。

步驟1.確定CVP伺服器上的Java運行時環境(JRE)版本。

- 按一下Start按鈕（案頭欄上的左按鈕角）

- 按一下Run...選項

- 鍵入CMD，然後按一下OK以顯示DOS提示

- 然後鍵入java-version

步驟2.安裝與SQL版本相容的Java Database Connectivity(JDBC)驅動程式。要在應用程式伺服器上啟用資料庫訪問，必須安裝相容的JDBC驅動程式。這些驅動程式通常打包為JAR檔案，必須放在應用程式伺服器類路徑可以訪問的目錄中(例如，在Tomcat上，放在%CVP_HOME%\VXMLServer\Tomcat\lib中)。

此處可以找到不同的驅動程式。

MS支援清單的一個示例：

附註：資料庫必須存在，此連線才能正常工作。CVP語音XML(VXML)伺服器不會為您建立資料庫。本文檔以UCCE AW資料庫為例，安裝JDBC驅動程式12.6版。

步驟2.為資料庫連線新增Tomcat上下文，以便CVP VXML伺服器知道如何與資料庫通訊。有關更多資訊，請參閱https://tomcat.apache.org/tomcat-9.0-doc/jndi-datasource-examples-howto.html。

以下是使用SQL的範例(編輯AUDIUM_HOME\Tomcat\conf資料夾中的context.xml，其中AUDIUM_HOME通常為Cisco\CVP\VXMLServer):

<Context>

<Resource name="jdbc/<LABEL_YOU_CHOOSE>"

auth="Container"

type="javax.sql.DataSource"

username="USER_NAME"

password="USER_PW"

driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"

url="jdbc:sqlserver://HOSTNAME_OR_IP:PORT;DatabaseName=< DB_NAME>" />

</Context>

MS SQL的預設埠號為1433。早期上下文的示例url為'jdbc:sql://localhost:1433;databaseName=pcce_awdb'。

附註：或者，可以在<GlobalNamingResources>下的server.xml檔案中配置<Resource>，並在<Context>下的context.xml中建立一個<ResourceLink>。

為了提高安全性，建議使用元素設定使用者名稱或密碼，並從context.xml檔案中手動刪除使用者名稱和密碼欄位。

如果在元素中提供使用者名稱和密碼，context.xml檔案中的使用者名稱和密碼將被忽略。

步驟3.在負載較重的情況下，啟用資料庫連線池。

資料庫連線池建立和管理與資料庫的連線池。循環利用和重複利用與資料庫的現有連線比開啟新連線更有效。有關Tomcat資料庫池的詳細資訊，請參閱https://tomcat.apache.org/tomcat-9.0-doc/jndi-datasource-examples-howto.html。

附註：Tomcat 8.0有兩個連線池庫：commons-dbcp和tomcat-jdbc-pool。由於tomcat-jdbc-pool連線池庫存在已知問題，如果CVP VXML伺服器和遠端SQL Server之間的連線關閉，則不會自動重新建立連線。只有在重新啟動VXMLServer tomcat服務後，才能重新建立連線。

commons-dbcp連線池庫沒有此問題。預設情況下使用commons-dbcp庫，並且僅在tomcat context.xml檔案包含以下行時才使用tomcat-jdbc-pool:

factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"

由於此問題，思科建議不要使用tomcat-jdbc-pool庫。

步驟4.重新啟動CVP VXML服務。

步驟5.在CVP Call Studio中，編輯相關資料庫元素的配置。將您在<LABEL_YOU_CHOOSE>中輸入的字串從Tomcat上下文輸入到資料庫元素「設定」頁籤的「JNDI名稱」屬性中。

附註：請勿在此處包含jdbc/部分。

步驟6.儲存、部署和更新VXML伺服器上的應用程式。

疑難排解

目前尚無適用於此組態的具體疑難排解資訊。

相關資訊

- Microsoft JDBC Driver for SQL Server支援清單：Microsoft JDBC驅動程式

- VXMl元素指南：CVP VXML元素指南

- 技術支援與文件 - Cisco Systems