溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Apache ActiveMQ 的消息持久化到MySQL數(shù)據(jù)庫詳細步驟

發(fā)布時間:2020-05-09 15:16:32 來源:億速云 閱讀:253 作者:三月 欄目:數(shù)據(jù)庫

下文主要給大家?guī)鞟pache ActiveMQ 的消息持久化到MySQL數(shù)據(jù)庫詳細步驟,希望Apache ActiveMQ 的消息持久化到MySQL數(shù)據(jù)庫詳細步驟能夠帶給大家實際用處,這也是我編輯這篇文章的主要目的。好了,廢話不多說,大家直接看下文吧。

ActiveMQ提供多種數(shù)據(jù)持久化方式:可以持久化到文件,也可以持久化到數(shù)據(jù)庫,其中數(shù)據(jù)庫可以支持MySQL和Oracle兩種類型。

默認(rèn)提供的是持久化到文件的方式,即activemq.xml文件中的:

<persistenceAdapter>

<kahaDBdirectory="${activemq.base}/data/kahadb"/>

</persistenceAdapter>

2.  步驟

本文重點接收的是持久化到MySQL中的配置方式:

2.1    添加MySQL驅(qū)動

首先需要把MySql的驅(qū)動放到ActiveMQ的Lib目錄下,我用的文件名字是:

mysql-connector-java-5.1.30-bin.jar

 commons-pool-1.6.jar

commons-dbcp-1.4.jar

2.2    修改配置文件activemq.xml

將其中的這段配置:

<persistenceAdapter>
<kahaDB directory="${activemq.base}/data/kahadb"/>
</persistenceAdapter>

修改為下面這段內(nèi)容:

<persistenceAdapter>

        <jdbcPersistenceAdapter  dataSource="# mysql-ds "/>

</persistenceAdapter>

 Apache ActiveMQ 的消息持久化到MySQL數(shù)據(jù)庫詳細步驟

在</broker>結(jié)點之后,增加數(shù)據(jù)源的配置,如下:

   <!-- MySql DataSource Sample Setup -->  

 <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">  

      <property name="driverClassName" value="com.mysql.jdbc.Driver"/>  

      <property name="url" value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/>  

      <property name="username" value="root"/>  

      <property name="password" value="123456"/>  

      <property name="poolPreparedStatements" value="true"/>  

    </bean>  

        

    <!-- Oracle DataSource Sample Setup -->  

    <!--  

    <bean id="oracle-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">  

      <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>  

      <property name="url" value="jdbc:oracle:thin:@localhost:1521:AMQDB"/>  

      <property name="username" value="root"/>  

      <property name="password" value="123456"/>  

      <property name="poolPreparedStatements" value="true"/>  

    </bean>  

 -->  

   

2.3    新建數(shù)據(jù)庫

從配置中可以看出數(shù)據(jù)庫的名稱是test_mq,需要手動在MySql中新建一個test_mq的空數(shù)據(jù)庫。

此時,重新啟動MQ,就會發(fā)現(xiàn)test_mq庫中多了三張表:activemq_acks,activemq_lock,activemq_msgs,OK,說明已經(jīng)持久化成功啦!

對于以上關(guān)于Apache ActiveMQ 的消息持久化到MySQL數(shù)據(jù)庫詳細步驟,大家是不是覺得非常有幫助。如果需要了解更多內(nèi)容,請繼續(xù)關(guān)注我們的行業(yè)資訊,相信你會喜歡上這些內(nèi)容的。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI