`

使用ActiveMQ出错.Table 'mq.activemq_acks' doesn't exis

    博客分类:
  • J2EE
阅读更多
2008-08-25 11:44:43,250 [MQ ShutdownHook] INFO  BrokerService                  - ActiveMQ Message Broker (localhost, null) is shutting down
2008-08-25 11:44:43,265 [MQ ShutdownHook] INFO  NetworkConnector               - Network Connector default-nc Stopped
2008-08-25 11:44:43,281 [MQ ShutdownHook] INFO  TransportConnector             - Connector openwire Stopped
2008-08-25 11:44:43,281 [MQ ShutdownHook] INFO  TransportConnector             - Connector ssl Stopped
2008-08-25 11:44:43,281 [MQ ShutdownHook] INFO  TransportConnector             - Connector stomp Stopped
2008-08-25 11:44:43,281 [MQ ShutdownHook] INFO  TransportConnector             - Connector xmpp Stopped
2008-08-25 11:44:43,296 [MQ ShutdownHook] INFO  BrokerService                  - ActiveMQ JMS Message Broker (localhost, null) stopped
2008-08-25 11:47:05,625 [main           ] INFO  BrokerService                  - Using Persistence Adapter: JDBCPersistenceAdaptor(org.apache.commons.dbcp.BasicDataSource@3afb99)
2008-08-25 11:47:05,625 [main           ] INFO  BrokerService                  - ActiveMQ 5.1.0 JMS Message Broker (localhost) is starting
2008-08-25 11:47:05,625 [main           ] INFO  BrokerService                  - For help or more information please see: http://activemq.apache.org/
2008-08-25 11:47:06,046 [main           ] INFO  JDBCPersistenceAdapter         - Database driver recognized: [mysql-ab_jdbc_driver]
2008-08-25 11:47:06,328 [main           ] WARN  DefaultJDBCAdapter             - Could not create JDBC tables; they could already exist. Failure was: CREATE TABLE ACTIVEMQ_ACKS(CONTAINER VARCHAR(250) NOT NULL, SUB_DEST VARCHAR(250), CLIENT_ID VARCHAR(250) NOT NULL, SUB_NAME VARCHAR(250) NOT NULL, SELECTOR VARCHAR(250), LAST_ACKED_ID INTEGER, PRIMARY KEY ( CONTAINER, CLIENT_ID, SUB_NAME)) Message: Specified key was too long; max key length is 1000 bytes SQLState: 42000 Vendor code: 1071
2008-08-25 11:47:06,375 [main           ] INFO  DefaultDatabaseLocker          - Attempting to acquire the exclusive lock to become the Master broker
2008-08-25 11:47:06,390 [main           ] INFO  DefaultDatabaseLocker          - Becoming the master on dataSource: org.apache.commons.dbcp.BasicDataSource@3afb99
2008-08-25 11:47:06,421 [main           ] WARN  JDBCPersistenceAdapter         - Old message cleanup failed due to: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'mq.activemq_acks' doesn't exist
2008-08-25 11:47:06,593 [main           ] ERROR BrokerService                  - Failed to start ActiveMQ JMS Message Broker. Reason: java.io.IOException: Failed to get last broker message id: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'mq.activemq_acks' doesn't exist
java.io.IOException: Failed to get last broker message id: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'mq.activemq_acks' doesn't exist
	at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:33)
	at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.getLastMessageBrokerSequenceId(JDBCPersistenceAdapter.java:148)
	at org.apache.activemq.broker.region.DestinationFactoryImpl.getLastMessageBrokerSequenceId(DestinationFactoryImpl.java:128)
	at org.apache.activemq.broker.region.RegionBroker.<init>(RegionBroker.java:106)
	at org.apache.activemq.broker.jmx.ManagedRegionBroker.<init>(ManagedRegionBroker.java:97)
	at org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:1595)
	at org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:1588)
	at org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:1530)
	at org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:540)
	at org.apache.activemq.broker.BrokerService.start(BrokerService.java:444)
	at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:50)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1288)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1257)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:438)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:383)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:353)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:169)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:400)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:736)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:369)
	at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
	at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
	at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:96)
	at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:52)
	at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
	at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
	at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:111)
	at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:73)
	at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
	at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:129)
	at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
	at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:79)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.activemq.console.Main.runTaskClass(Main.java:222)
	at org.apache.activemq.console.Main.main(Main.java:106)
Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'mq.activemq_acks' doesn't exist
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2941)
	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
	at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715)
	at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
	at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1268)
	at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1403)
	at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:91)
	at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:91)
	at org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doGetLastMessageBrokerSequenceId(DefaultJDBCAdapter.java:155)
	at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.getLastMessageBrokerSequenceId(JDBCPersistenceAdapter.java:145)
	... 40 more


这个看出是自动创建表出错了.
没有成功创建表activemq_acks.

最后在http://www.java1995.cn/article/495.html中,找到了自动创建三个表的结构信息.
手动创建好三个表,JMS服务才成功运行.!
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics