Apache ActiveMQ 持久化到MySQL数据库的简单配置

Apache ActiveMQ 持久化到MySQL数据库的简单配置,第1张

1、默认提供的是持久化到文件的方式,即activemq.xml文件中的:

2. 步骤

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

2.1 添加MySQL驱动

首先需要把MySql的驱动放到ActiveMQ的Lib目录下,我用的文件名字是:mysql-connector-java-5.1.30-bin.jar

2.2 修改配置文件activemq.xml

将其中的这段配置:

修改为下面这段内容:

3、另外需要在节点的下面定义id为mysql-ds的bean,如下:

4、 新建数据库

从配置中可以看出数据库的名称是activemq,需要手动在MySql中新建一个activemq的空数据库。

此时,重新启动MQ,就会发现activemq库中多了三张表:activemq_acks,activemq_lock,activemq_msgs,OK,说明已经持久化成功啦!

Qt项目里用到了mysql,运行后报错:

查阅资料知道需要配置mysql驱动,本以为几分钟解决的事情,没想到开启了恶魔经历,整整两天时间,mmp!

Stop! 废话别说啦,入正题:

首先,Qt &mysql的安装和环境配置就略了,一搜一大把。

不过注意两点:

先进入到/Users/ing/Qt5.14.2/5.14.2/Src/qtbase/src/plugins/sqldrivers目录下,执行

这里确保qmake用的qt里的就行

其实你可以配置下qt相关的环境变量,在bash_profile里添加:

然后,source ~/.bash_profile ,还有别忘了 source ~/.zshrc

执行成功的话会输出:

根据提示 依次执行:

make sub-mysql

make

make install

进入/Users/ing/Qt5.14.2/5.14.2/clang_64/plugins/sqldrivers下执行,查看链接库:

输出:

此时,运行qt程序 依旧报错。

根据查阅的资料,问题出在

网友们所说的“诡异”的路径那一行(你的输出可能和我的不一样的,但问题应该一样) ,也就是有 libmysqlclient.21.dylib 这行。

另外查了下 @repath 的含义 意思是说 不能明确的指向。。。所以 这里就需要将libmysqlclient.21.dylib 指向扳到正确的道路。

方法就是利用 install_name_tool -change

执行

这里一定要注意顺序,刚开始我就是顺序搞错了,死活就是不行,最后跑到官方论坛里用蹩脚的英语发帖求教也无果,最后还是一遍的重试,一遍的检查才发现的。一天就这么浪费了。

此刻在运行qt程序 ,就不会再报上面的错误了。

撒花,礼花搞起~~~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7900973.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存