ActiveMQ-mysql持久化

ActiveMQ默认开启持久化,使用自带的文件数据库kahadb。

启用mysql持久化需要修改配置文件 \conf\activemq.xml。修改内容如下:

(1)添加数据库连接的bean注入

 

 
 



 

同时要创建数据库activemq,数据库名称与jdbc:mysql://localhost/activemq?relaxAutoCommit=true中的保持一致即可。另外需要将相应的数据库连接驱动jar包放在ActiveMQ的安装目录的lib文件夹中。

(2)修改持久化方式persistenceAdapter


           

		 


        

配置createTablesOnStartup设置为true的话,ActiveMQ在启用时会自动在数据库中创建3个数据库表(数据库表不存在的情况下),用于持久化消息。

ActiveMQ-mysql持久化_第1张图片

 

  • activemq_msgs:queue和topic的消息都存在这个表中
  • activemq_acks:存储持久订阅的信息和最后一个持久订阅接收的消息ID
  • activemq_lock:跟kahadb的lock文件类似,确保数据库在某一时刻只有一个broker在访问

 

你可能感兴趣的:(消息中间件,mq,mysql,activemq)