ActiveMQ消息持久化到mysql数据库

  1. 将mysql驱动导入到activeMQ的lib文件夹
    ActiveMQ消息持久化到mysql数据库
  2. 修改ActiveMQ的conf目录下的active.xml文件,修改数据持久化的方式
    1. <persistenceAdapter>
    2. <!-- <kahaDB directory="${activemq.data}/kahadb"/> -->
    3. <jdbcPersistenceAdapter dataSource="#mysql-ds"/>
    4. </persistenceAdapter>
  3. conf目录下的active.xml文件添加数据库配置,注意代码位置,在<broker>标签外面(</broker>标签外即可)
    1. <!-- 用于持久化数据到Mysql数据库 -->
    2. <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    3. <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    4. <property name="url" value="jdbc:mysql://localhost:3306/activemq?relaxAutoCommit=true"/>
    5. <property name="username" value="root"/>
    6. <property name="password" value="1234"/>
    7. <property name="maxActive" value="200"/>
    8. <property name="poolPreparedStatements" value="true"/>
    9. </bean>


  4. 保存文件,然后运行activemq,发送消息后数据库中将添加三张表
    ActiveMQ消息持久化到mysql数据库
  5. 使用Activemq图形化管理添加消息即可严重数据库是否可用