问题标签 [connector-j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1313 浏览

mysql - Mysql JDBC主/从分离读写操作

我已经开始检查 mysql 连接器 j 的复制范式,发现我们可以对主从数据库进行单独的读写操作。

我检查了下面的页面并获得了一些关于操作的线索,但仍然需要知道 mysql-jdbc 如何理解哪个服务器是主服务器以及哪些服务器是从属服务器?(可能有点傻,抱歉)

http://www.dragishak.com/?p=307

0 投票
2 回答
3305 浏览

java - 在 JDBC 连接上禁用密钥库

我有一个使用 ConnectorJ 连接到 MySQL 数据库的应用程序,没有问题。但是,我现在需要扩展应用程序以针对其他端点执行相互验证的 HTTP 请求。

我的麻烦是为 HTTP 请求定义客户端密钥库似乎会导致密钥库也用于 JDBC 连接。MySQL DB 不希望提供证书,握手失败,如下所示。

来源(简体)

例子

健全性测试运行(成功输出):

生成任意密钥:

keytool -genkey -keyalg RSA -keystore myKeystore.jks -storepass 密码

使用指定的键重新运行(失败!!):

java -cp .:mysql-connector-java-5.1.24-bin.jar -Djavax.net.ssl.keyStore=myKeystore.jks -Djavax.net.ssl.keyStorePassword=password DbTester

版本

java 版本“1.7.0_21” Java(TM) SE 运行时环境(内部版本 1.7.0_21-b11) Java HotSpot(TM) 64 位服务器 VM(内部版本 23.21-b01,混合模式)

mysql server: 5.1.66-log 源码分布

连接器j:mysql-connector-java-5.1.24-bin.jar

编辑/已解决

我通过为 HTTP 连接显式加载证书(并删除 JVM 级别的环境参数)来完成这项工作:

0 投票
1 回答
2963 浏览

mysql - MySQL 5.5 连接器/J 字符集编码 (utf8mb4) 问题

我正在尝试将 utf8mb4 字符串正确存储到 MySQL 5.5.30 中。我们使用的是 ConnectorJ 5.1.18。

根据文档,ConnectorJ 应该根据 character_set_server 变量自动检测字符编码...

但是,据我所知,它始终默认为

SET NAMES latin1 而不是 SET NAMES utf8mb4

连接器-j 分析器的日志输出:

SHOW VARIABLES 调用的输出如下:

服务器当前正在运行,因此要更新我简单运行的 character_set_server 值

述。

更新:当我更改 my.cnf 中的 character_set_server 值并重新启动我的服务器时,ConnectorJ 会完全按照预期检测到 utf8mb4。

当我使用 SET GLOBAL 手动设置值时,ConnectorJ 继续使用 Latin1。

有人知道为什么会这样吗?有没有办法以 ConnectorJ 检测到的方式更新字符集,而不必让 mysql 脱机?

0 投票
1 回答
1526 浏览

java - 使用 Matlab 创建 MySql 数据库

我正在使用 Matlab 的数据库工具箱来运行我的 MySQL 查询。我通过使用 JDBC 驱动程序 (Connector/J) 来做到这一点。

我能够为给定的数据库连接/创建/删除新表。

有没有办法可以直接从 Matlab 本身创建一个新数据库?我正在寻找一种解决方案,它可以让我通过使用工具箱或使用 Matlab 中的 Java 来做到这一点。

0 投票
1 回答
127 浏览

java - Classpath contains only the running file

I'm having issues trying to use the Connector/J JDBC driver in my code.

The code I have written uses the Class.forName("com.mysql.jdbc.Driver").newInstance() to load the class before DriverManager.getConnection() is used to load the driver.

This results in the ClassNotFoundException for com.mydql.jdbc.Driver. I have the binary JAR file for the mysql connector, mysql-connector-java-5.1.26-bin.jar.

My code is packaged into a JAR file by building in Netbeans.

To run the code I am using the following

This gives the exception: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

Adding System.out.println(System.getProperty("java.class.path")); to the beginning of the program prints only MyJarFile.jar.

I have tried adding the jar file to the CLASSPATH variable using export, and setting the last part of the -classpath flag to lib/*, but with the same results.

I tried running the program from a .class file, instead. It complained about being unable to find or load the main class. It would run only when both the wildcard was used in the classpath and the MyJarFile.jar was in that location. It would simply hang at the loading of the Driver, though.

Does anyone have any thoughts as to what is going on?

0 投票
1 回答
1874 浏览

java - 计数 INSERT/ON DUPLICATE KEY UPDATE

我有这个 sql 查询:

我用 phpmyadmin 运行查询,它返回了正确的结果:

但是当我通过 java/jdbc 运行查询时,查询返回 1-1-2 ,即根本没有插入/更新时返回 1。任何想法?这是一个错误还是我只是错过了什么?

更新:最新的连接器/j - v5.1.26

更新2:Java代码

0 投票
1 回答
77 浏览

java - Java、mySQL、connector-j、删除联系人

我正在尝试从使用 MySQL 数据库的通讯簿中删除联系人,我认为这就是它的完成方式,但是抛出了一个异常并打印“'where 子句'中的未知列'john'”。每个联系人都有 5 个属性 - 姓名、手机、家庭电话、电子邮件和地址,其中一个联系人的名字是“john”。

0 投票
5 回答
3903 浏览

mysql - 将 NetBeans 连接到 MySQL

我已经查看了所有内容并尝试了我能找到的所有内容,所以我正在发布一个帖子,以防我的问题很奇怪。

MySQL 工作台可以很好地使用服务器进行查询和更新。通知程序显示服务器正在运行。

我尝试使用 Eclipse Juno 和 Kepler 并得到 eclipse SQL State: 08S01 error 0。零数据包发送成功,服务器没有响应。我重新下载了 Connector/J 以确保下载中断没有错误。没有改善。

我更改为 Netbeans 以确保它不仅仅是 Eclipse 和我系统上的某些东西。没有成功发送数据包,也没有收到任何内容。

我进行了测试以确保服务器已打开,并且 telnet 在命令提示符中使用了正确的端口,并且正如预期的那样,它会要求输入密码。我使用 Wire Shark 来查看数据包数据的样子。看起来服务器正在侦听正确的端口,而 MySQL 工作台正在使用正确的端口。

我不知道出了什么问题。我什至更新到 Windows 7 以确保这不是 Vista 的驱动程序身份验证问题。

我在 NetBeans 中使用了这段代码:

最终收到了这个:

2013 年 10 月 22 日晚上 8:59:20 rad.MySQLTest main 严重:空 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接故障

最后一个成功发送到服务器的数据包是 0 毫秒前。驱动程序没有收到来自服务器的任何数据包。

我还应该尝试什么?看起来它正在到达服务器,而不是一切都在反弹。我已经关闭了我的防火墙,我没有使用代理,有点把我的头发拉在这里。

0 投票
1 回答
673 浏览

mysql - MYSQL(通过 Connector/J)是否支持命名参数?

我正在阅读 MYSQL refman-5.6.pdf。我很困惑。

mysql_stmt_bind 示例代码仅显示?语法。同时,Connector/J 样本有这个:

如果命名参数不是Connector/J的扩展函数,MYSQL命名参数的正确语法是什么?

0 投票
1 回答
739 浏览

java - 在 ubuntu 上使用 Connector/J 连接 MySQL 和 Java 时出错

我正在尝试做项目解释在这里输入链接描述(代码在页面末尾),但是当我运行它时出现错误:

我认为错误可能与 CLASSPATH 相关,但我完全不确定。此错误的原因可能是什么,我该如何解决?