为了测试我的一个业务系统在不同数据库上的表现,我的tomcat上配置了多个数据源,这样我可以轻松的切换系统到不同的数据源上。为了监测每个数据源的运行状况,随时观测执行的sql语句,我为每个数据源都配置了JDBMonitor,并且这些数据源的JDBMonitor的配置文件共用一个config.xml文件。
但是在我运行的时候却发现系统报错“java.net.bindexception: address in use: jvm_bind”,根据我三十多年的从医经验判断,俺认为是端口冲突。。。。。。唉,别扔臭鸡蛋呀,呵呵。原来是我在config.xml中配置了SocketDBListener,端口为默认的9527,这样当第一个数据源使用以后,这个数据源将启动一个SocketDBListener,所以9527端口就被占用了,以后其他的数据源被时候以后在启动SocketDBListener的时候,也尝试去监听9527端口,这样就出现了如上面的错误。解决问题很简单:为每个数据源都指定一个不同的配置文件(比如config1.xml,config2.xml),并且在每个配置文件中都配置不同的端口(比如9527、9528、3721、9981等等,只要不互相重复,并且不与系统中其他软件占用的端口冲突即可)。

一沙一世界 一花一天堂 掌中握無……

网络编程技术、多媒体技术、PC应用技术

| 我爱研发网 | 中电华信 | 阿里西西 | JAVA爱好者 | 北京英才网 | 全球大学查询网 |
| 中国人的网站导航 | 中国电脑论坛 | 信息产业部 | 新浪科技 | 搜狐IT | 信息产业部电子教育与考试中心 |
| IT世界网 | 软件项目交易网 | 中国软件交易网 | 国信培训网 | 亚远景科技 | ....[更多] |