ActiveMQ数据持久方式

ActiveMQ数据持久方式

  1. ActiveMQ现在默认的数据持久方式是KaHaDB,她是一个基于文件的支持事务的消息存储数据库。具体详细信息可以参考链接http://www.cnblogs.com/dycg/archive/2013/07/16/3193285.html,切换到目录data中的kahadb文件夹中查看目录结构如图所示:
    kahadb目录结构
    简单描述下:
    db-1.log:具体的消息信息
    db.data: btree索引,纪录每条信息的具体引用
    db.redo:btree索引重建
    lock:锁文件
  2. jdbc数据库持久方式,可以通过配置数据库连接,将信息存储在数据库中,本人采用mysql数据库,端口为3307,用户名root,密码123456,配置方式如下:
    a.进入config目录,vi activemq.xml

      <persistenceAdapter>
                   <jdbcPersistenceAdapter dataSource="#mysql-ds" createTablesOnStartup="true" />
        </persistenceAdapter>

       <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://127.0.0.1:3307/test"/>
           <property name="username" value="root"/>
           <property name="password" value="123456"/>
       </bean>
       ```
   b.将commons-dbcp-1.2.1.jar,commons-pool-1.2.jar复制到lib目录下
   c.重启activemq后,利用连接工具查看生成的数据库表结构。
   ![数据库表结构](//img-blog.csdn.net/20150928221338778)
posted @ 2015-09-28 22:21  CoderToSurvive  阅读(388)  评论(0编辑  收藏  举报