无法创建 PoolableConnectionFactory(用户 ''@'localhost' 的访问被拒绝

2023-11-22

在过去的几天里,我一直在尝试为网络应用程序设置 DatabaseConnectionPool,但没有成功。我已经阅读了 Tomcat 文档的相关部分以及围绕该主题的大量内容,并认为我做的一切都是正确的,但显然不是因为我不断收到以下错误:

Cannot create PoolableConnectionFactory (Access denied for user ''@'localhost' (using password: YES))

当我启动 Tomcat 运行时,我没有收到错误消息,但是当我尝试运行以下 servlet 时,我没有收到错误消息:

package twittersearch.web;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
import twittersearch.model.*;
public class ConPoolTest extends HttpServlet {

    public void doGet(HttpServletRequest request,
                  HttpServletResponse response) 
                  throws IOException, ServletException {
        Context ctx = null;
        DataSource ds = null;
        Connection conn = null;
        try {
            ctx = new InitialContext();
            ds = (DataSource)ctx.lookup("java:comp/env/jdbc/twittersearchdb");
            conn = ds.getConnection();
            if(conn != null) {
                System.out.println("have a connection from the pool");
            }
        } catch(SQLException e) {
            e.printStackTrace();
        } catch(NamingException e) {
            e.printStackTrace();
        } finally {
            try {
                if(conn!=null) {
                    conn.close();
                }
            } catch(SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

Web 应用程序的上下文是:

<?xml version='1.0' encoding='utf-8'?>
<Context>

    <!-- Configure a JDBC DataSource for the user database -->
 <Resource name="jdbc/twittersearchdb" 
           type="javax.sql.DataSource" 
     auth="Container" 
     user="root" 
     password="mypwd" 
     driverClassName="com.mysql.jdbc.Driver" 
     url="jdbc:mysql://localhost:3306/twitter" 
     maxActive="8" 
     maxIdle="4"/>


</Context>

我真正不明白的是,当我指定该用户时,为什么错误没有说“root”@“localhost”的访问被拒绝。

我尝试过的:

我有重复的 context.xml 吗?不,我删除了 Tomcat 6.0/conf 中的默认 on。我尝试将 context.xml 放入 [mywebappname]/META-INF/context.xml 中,但这不仅不起作用,而且导致创建了一个名为 TwitterSearch.xml 的文件,该文件是自动生成的并放入 Tomcat 6.0/conf 中/Catalina/localhost 目录。所以现在我只是编辑那个,这是我唯一的一个。

是Tomcat的版本吗?好吧,我完全重新安装了最新版本的 Tomcat 6.0,所以我认为不是这样的。

我们是否缺少一些罐子?我有 tomcat-dbcp.jar、jconnector.jar 以及我认为应该在 Tomcat 6.0/lib 目录中的所有其他文件。

当我查看 MySQL 数据库中的密码时,出于安全目的,它们似乎被编码成一个长字母数字字符串。这是正常的吗?我应该将其放在 context.xml 中还是只使用普通密码?

我真的不知道如何解决这个问题,非常感谢一些专家的建议。

提前谢谢了。

Joe


你的设置看起来不错。这看起来纯粹是权限问题。

您需要授予该用户访问 mysql 的权限。虽然 Java 将连接到 localhost,但它将使用 tcp/ip 来连接 - 但是在 mysql 中,localhost 和 127.0.0.1 具有不同的含义。发出这个 SQL 应该可以解决问题。

grant all on twitter.* to 'root'@'127.0.0.1' identified by 'mypwd';

假设 Java 将“localhost”解析为 127.0.0.1,如果仍然无法正常工作,您可以尝试将连接字符串更改为“jdbc:mysql://127.0.0.1:3306/twitter”

我应该在我的 context.xml 中包含这个吗 或者只是普通的密码?

正如您现在所拥有的,明文密码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法创建 PoolableConnectionFactory(用户 ''@'localhost' 的访问被拒绝 的相关文章

  • SQL DML:日期值不正确 (MySQL)

    我在数据库中创建了一个表 CREATE TABLE official receipt student no INT UNSIGNED academic year CHAR 8 trimester ENUM 1 2 3 or no MEDIU
  • 如何在 MySql Workbench 中禁用 INVISIBLE 索引选项?

    我刚刚安装了MySqlWorkbench我发现了实施INVISIBLE index所描述的here https dev mysql com doc refman 8 0 en invisible indexes html 我想禁用此功能 因
  • 带参数的 MySQL 脚本

    我想创建一个部署脚本 以某种方式模拟 Oracle 部署脚本 其中使用 param 您可以使用之前声明的参数 我需要为不同数据库上的不同用户自动调用此脚本 例如我的脚本应该是 USE param DROP TABLE IF EXISTS T
  • 为通用字符选择表排序规则

    我正在开发一个需要存储通用字符的后端 我选择了utf8mb4用于此目的的表编码 我还必须选择表格排序规则 最直接的选择是选择utf8mb4 general ci表整理 除了一般的排序规则之外 还有大约20种其他排序规则可供选择 更具体的排序
  • 在 MySQL 表中存储用户密码的最佳 PHP 哈希方法?

    我已经阅读 Stack Overflow 问题大约 15 分钟了 每一个问题似乎都与我之前读到的问题相矛盾 Bcrypt SHA1 MD5 等 我目前对我的密码进行 MD5 但我想让我的数据库在发生泄露时更加安全 我知道这个问题已经被问了一
  • 使用 LIKE 和撇号的 Mysql 查询问题

    所以我有一个有趣的问题 我从未遇到过 并且似乎找不到太多有关纠正该问题的信息 我有一个庞大的数据库 里面有大量的数据 相当于 10 年的数据 并试图对其进行搜索 现在搜索功能运行良好 但最近有人让我注意到一个 错误 如果你愿意的话 我尝试对
  • 安全转义表名/列名

    我在 php 中使用 PDO 因此无法使用准备好的语句转义表名或列名 以下是我自己实现它的万无一失的方法 tn str replace REQUEST tn column str replace REQUEST column sql SEL
  • 为什么 Clojure MySQL 查询结果中出现“M”

    我有一个返回一行的 Clojure 查询 下面是返回行 映射 的部分打印输出 employer percent 0 00M premium 621 44M 这两列在mysql表中分别是decimal 5 2 和decimal 7 2 为什么
  • 当我耗尽 bigint 生成的密钥时会发生什么?怎么处理呢?

    我自己无法想象一个好的答案 所以我想在这里问 在我心里 我总是想知道 如果AUTO INCREMENT PRIMARY ID我的专栏MySQL表用完了吗 举例来说 我有一个有两列的表 一个ID auto increment primary
  • MySQL:记录之间的平均间隔

    假设这张表 id date 1 2010 12 12 2 2010 12 13 3 2010 12 18 4 2010 12 22 5 2010 12 23 如何仅使用 MySQL 查询找到这些日期之间的平均间隔 例如 此表上的计算将是 2
  • 错误代码:1822(当数据类型匹配且具有复合键时)

    得到一个 错误代码 1822 添加外键约束失败 丢失的 引用表中约束 subject ibfk 1 的索引 注册 当尝试创建subject桌子 问题是 错误并没有出现在上一张表上student 数据类型相同 并且定义了主键 两者都会出现此错
  • ER_NOT_SUPPORTED_AUTH_MODE:客户端不支持服务器请求的身份验证协议;考虑升级MySQL客户端

    Nodejs中使用mysql的问题 const mysql require mysql var connection mysql createConnection host localhost user root password 1234
  • PHP 数据库显示在具有不同锚标记的相同字段中

    我四处寻找 看看这是否可行 但却空手而归 首先 这是我的代码 div style display none div ul li li li li li li ul
  • 捕获动态表中 HTML 元素的值

    我有从数据库生成的以下动态表
  • iPhone表情插入MySQL却变成空值

    我们正在开发一个 iPhone 应用程序 它将表情符号从 iPhone 发送到服务器端 PHP 并插入到 MySQL 表中 我正在做服务器端的工作 但是insert语句执行成功后 插入的值变成空了 我可以正确插入字段 varchar 的是文
  • 子查询与连接

    我重构了从另一家公司继承的应用程序的一个缓慢部分 以使用内部联接而不是子查询 例如 WHERE id IN SELECT id FROM 重构后的查询运行速度提高了约 100 倍 50 秒到 0 3 我预计会有改进 但谁能解释为什么它如此剧
  • php echo 不工作

    我的代码似乎不起作用 单选按钮出现 但旁边什么也没有 似乎 mysql fetch array 由于某种原因无法工作 因为我已经玩过代码并反复测试它以查找代码似乎遇到的位置出现问题并停止工作 有人可以告诉我出了什么问题吗 欢呼声我是新手 最
  • Java/Hibernate - 异常:内部连接池已达到其最大大小,当前没有可用的连接

    我第一次在大学项目中使用 Hibernate 而且我还是个新手 我想我遵循了我的教授和我阅读的一些教程给出的所有指示 但我不断收到标题中的异常 Exception in thread main org hibernate Hibernate
  • 优化mysql中日期类型字段的查询

    我目前准备了以下查询 select sum amount as total from incomes where YEAR date 2019 and MONTH date 07 and incomes deleted at is null
  • 是否可以在MYSQL中动态选择列名,其中列名是N个已知值中的1?

    我担心答案会是直接的 不 但我想知道是否可以在 MySQL 中执行如下操作 SELECT title label name FROM table 即选择单个列 可以称为title label or name from table 原因是 查

随机推荐

  • jQuery 单击除 div 及其子元素之外的所有内容

    我想在单击任意位置时执行某些操作 但单击 div 及其子级时除外 这是我到目前为止所尝试过的 但它不起作用 单击它的子级仍然会执行括号内的内容 body on click not calculator function e 我不能使用这样的
  • 动态更改android gridview中的列号?

    我的应用程序在 gridview 中以横向显示图像图标 为此 我使用 xml 作为
  • 根据一列对另一列进行排序

    我想根据 B 列的值对 A 列进行排序 在 Google 表格中 这很简单 SORT A1 A100 B1 B100 TRUE 如何做到这一点Excel 要手动执行此操作 您可以突出显示要排序的所有列 然后单击 主页 选项卡中 排序和过滤
  • 在 Matplotlib 极坐标图上设置径向轴

    我正在极坐标图上绘制方位角 仰角曲线 其中仰角是径向分量 默认情况下 Matplotlib 绘制从中心 0 到周边 90 的径向值 我想扭转它 所以 90 度是在中心 我尝试通过调用 ax set ylim 90 0 设置限制 但这会导致抛
  • 如何使用数据关闭来关闭引导面板?

    我有一个打开面板的按钮 我希望能够像使用警报一样关闭它 Bootstrap 文档中的默认面板示例 div class panel panel default div class panel heading Panel heading wit
  • Python dask 数组对象的项分配

    我创建了一个 Python dask 数组 并尝试按如下方式修改数组的一部分 import numpy as np import dask array as da x np random random 20000 100 100 Creat
  • 无法克隆存储库:致命:R 任何 gitolite-admin gitolite 均被 Fallthru 拒绝

    我正在设置gitolite第一次 我正在跟进本说明 当我 ssh 时 看起来很好 ssh p 2222 gitolite debian PTY allocation request failed on channel 0 hello git
  • std::allocator 构造/销毁与放置 new/p->~T()

    对于我的一个项目 我正在从头开始编写一些 STL 容器 我有我的理由 由于我如此密切地模仿 STL 的功能和接口 因此我会尽最大努力遵守 如果它与标准结构同名 它将尽可能符合标准 的政策 因此 当然我的容器将分配器作为模板参数 这非常好 因
  • NGINX“Access-Control-Allow-Origin”标头包含多个值

    我有一个带有 PHP 的 NGINX 服务器 假设主机名为http myserver com 我有一个 PHP 脚本 我正在通过 XHR 从本地主机上的网页访问该脚本 我将它用作类似于 freegeoip net 的 GeoIP 服务器 我
  • 将行从一个表复制到另一个表,忽略重复项

    我有 2 个具有相同架构的表 srcTable1 和 destTable 我试图将所有行从 srcTable 复制到 destTable 并忽略重复项 我想我可以添加一个带有子查询的 WHERE 子句 该子查询只会给我不重复的行 然而 它似
  • android.widget.Button 无法转换为 android.widget.EditText

    在开发我的第一个 Android 计算器应用程序时 我通过意图传递答案 成功更新了新活动中的 TextView 但这需要用户按 返回 来执行另一次计算 我试图让 doCalculation 按钮更新 MainActivity 中的简单 Te
  • unix 套接字上的原子写入?

    我正在尝试选择pipes and Unix 套接字对于IPC机制 两者都支持select and epoll 功能很棒 现在 管道具有 4kB 截至今天 的 原子 写入 这是由 Linux 内核保证的 unix 套接字是否存在这样的功能 我
  • OpenCV 中未记录的 groupRectangles 变体

    在OpenCV中的cascadeDetect cpp中 有以下几种变体groupRectangles功能 void groupRectangles std vector
  • 了解 JavaScript 中的事件队列和调用堆栈

    当我解决这个问题时 我对理解 事件队列 和 调用堆栈 概念的好奇心开始了 var list readHugeList var nextListItem function var item list pop if item process t
  • 构建参数化的 EntityFramework 核心表达式

    你好 我正在尝试构建一个表达式来通过主键获取通用实体并获取参数化的 SQL 查询 目前我可以获得正确的 WHERE 查询 但它没有参数化 public async Task
  • 将侦听器添加到通过 XTemplate 创建的 DOM 的正确技术?

    我们使用 XTemplates 很多 XTemplates 它们非常适合显示只读内容 但是您是否曾向通过模板创建的 DOM 添加 Ext JS 侦听器 您愿意分享您创建这些侦听器的首选技术吗 我首选的技术是使用类似的 live来自 jque
  • 有没有办法从 DataContract 导出 XSD 架构

    我正在使用 DataContractSerializer 将我的类序列化为 XML 或从 XML 反序列化 一切工作正常 但在某些时候我想为这些 XML 文件的格式建立一个独立于实际代码的标准架构 这样 如果序列化过程中出现问题 我可以随时
  • HTML 中所有锚点的一般偏移量?

    我有一些锚元素 但它们位于绝对位置 div 并且 div 的内容太大 以至于它在内部滚动 溢出 自动 div 中的所有条目顶部都有一个锚点 但是如果我转到这个锚点 我想要的元素直接位于侧面的顶部 但我希望它位于中心 我需要像偏移这样的东西
  • Java - 类方法可以看到同类参数的私有字段

    我遇到了一个相当奇怪的行为 不确定这是 Java 问题还是 Eclipse 的问题 采取以下代码 class Foo private String text public void doStuff Foo f System out prin
  • 无法创建 PoolableConnectionFactory(用户 ''@'localhost' 的访问被拒绝

    在过去的几天里 我一直在尝试为网络应用程序设置 DatabaseConnectionPool 但没有成功 我已经阅读了 Tomcat 文档的相关部分以及围绕该主题的大量内容 并认为我做的一切都是正确的 但显然不是因为我不断收到以下错误 Ca