jdbc持久化activemq消息
1. 下载mysql驱动架包放到我们安装的activemq路径的lib目录下:
2. 在我们activemq的安装路径下找到conf目录,该目录下有个activemq.xml的配置文件
3. 打开这个配置文件,作如下修改:
①activemq默认使用kahadb作为消息的持久化,现在我们换成jdbc持久化消息
找到如下配置将其注释掉:
<persistenceAdapter>
<kahaDB directory="${activemq.data}/kahadb"/>
</persistenceAdapter>
然后添加jdbc配置:
<persistenceAdapter>
<jdbcPersistenceAdapter dataSource="#mysql-ds"/>
</persistenceAdapter>
如下图:
4. 配置mysql数据源:
注:在activemq.xml配置文件的标签和标签中间添加mysql数据源
<bean id="mysql-ds" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://10.1.1.177:3306/activemq?relaxAutoCommit=true"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
<property name="poolPreparedStatements" value="true"/>
</bean>
如下图:
5. 打开数据库创建名为activemq的数据库:
6. 运行activemq:
7. 如果配置都正确,则会在activemq数据库中生成如下三张表:
这三张表用于记录你的消息发送和消费的具体情况