Linux-Ubuntu 问题:连接到 mysql 后找不到 mysql 数据库

Linux-Ubuntu 问题:连接到 mysql 后找不到 mysql 数据库
  1. 我在 webapps 文件夹中部署了一个 war 文件,/srv/apache-tomcat-7.0.53/webapps/ War 名称是InIndia.war

  2. 我已经inindiadb.properties在类路径中部署了/srv/apache-tomcat-7.0.53/lib

    内容inindiadb.properties

    jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/inindia jdbc.username=root jdbc.password=admin

  3. 我已经安装并运行 mysql

    netstat -vulntp |grep -i mysql
    tcp   0    0 127.0.0.1:3306    0.0.0.0:*      LISTEN      563/mysqld
    
  4. MySql 数据库有inindia数据库并inindia有 3 个表(place、、user_rolesusers

    mysql> show databases;
    
    +--------------------+    
    | Database           |    
    +--------------------+    
    | information_schema |    
    | inindia            |    
    | mysql              |    
    | performance_schema |    
    | test               |    
    +--------------------+
    
    5 rows in set (0.00 sec)
    
    mysql> use inindia;
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    
    Database changed
    mysql> show tables;
    
    +-------------------+    
    | Tables_in_inindia |   
    +-------------------+    
    | place             |    
    | user_roles        |    
    | users             |    
    +-------------------+
    
    3 rows in set (0.00 sec)
    
  5. 问题是当我重新启动 tomcat 时,会与 mysql 建立连接,但在 tomcat 日志中显示

    catalina.out

    SEVERE: Error listenerStart
    Apr 18, 2014 11:02:17 AM org.apache.catalina.core.StandardContext startInternal
    SEVERE: Context [/InIndia] startup failed due to previous errors
    

    本地主机本地主机.2014-04-18.log

    INFO: Initializing Spring root WebApplicationContext
    Apr 18, 2014 10:50:11 AM org.apache.catalina.core.StandardContext listenerStart
    SEVERE: Exception sending context initialized event to listener instance of 
    
    class com.inindia.listener.ApplicationInfoLoaderListener
    org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [SELECT * FROM PLACE order by placeName]; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'inindia.PLACE' doesn't exist
    

我无法找出错误原因。错误提示inindia.Place无法找到,但数据库和表都存在。

inindiadb.properties它连接到文件中提到的 URL

我甚至编写了一个 java 类来连接到 mysql 服务器并将其显示为其中一个表的输出数据。连接和数据提取均成功。

甚至我在 Windows 上的本地 tomcat 上也部署了同样的内容,部署也正确。因此战争似乎没有问题

我是 Linux 新手。请告诉我是否需要在 mysql 服务器中进行任何设置。比如为数据库提供特权或类似的东西

答案1

我认为下面这一行有错误。

org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [SELECT * FROM PLACE order by placeName]; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'inindia.PLACE' doesn't exist

您在 inindia 创建了名为 place 的表,但您将其称为 PLACE。

地方“ 不是 ”地方“。

我建议您修改“地方“ 到 ”地方“。

相关内容