問題タブ [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 - 分離された読み取り/書き込み操作用のMysqlJDBCマスター/スレーブ

mysqlコネクタjのレプリケーションパラダイムをチェックし始め、マスターデータベースとスレーブデータベースで読み取り操作と書き込み操作を分離できることを確認しました。

以下のページを確認して操作の手がかりを得ましたが、mysql-jdbcがどのサーバーがマスターでどのサーバーがスレーブであるかをどのように理解するかを知る必要がありますか?(ばかげているかもしれません、これは申し訳ありません)

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

0 投票する
2 に答える
3305 参照

java - JDBC 接続でキーストアを無効にする

問題なく ConnectorJ を使用して MySQL DB に接続するアプリケーションがあります。ただし、追加のエンドポイントに対して相互認証された 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=パスワード DbTester

バージョン

Java バージョン "1.7.0_21" Java(TM) SE ランタイム環境 (ビルド 1.7.0_21-b11) Java HotSpot(TM) 64 ビット サーバー VM (ビルド 23.21-b01、混合モード)

mysql サーバー: 5.1.66-log ソース配布

connectorj: mysql-connector-java-5.1.24-bin.jar

編集/解決済み

HTTP 接続用に証明書を明示的にロードする (そして JVM レベルの環境パラメーターをドロップする) ことで、これが機能するようになりました。

0 投票する
1 に答える
2963 参照

mysql - MySQL 5.5 Connector/J CharacterSet エンコーディング (utf8mb4) の問題

utf8mb4 文字列を MySQL 5.5.30 に適切に格納しようとしています。ConnectorJ 5.1.18 を使用しています。

ドキュメントによると、ConnectorJ は character_set_server 変数に基づいて文字エンコーディングを自動検出する必要があります...

ただし、私が知る限り、常にデフォルトになっています

SET NAMES utf8mb4 の代わりに SET NAMES latin1

connector-j プロファイラーからのログ出力:

SHOW VARIABLES 呼び出しの出力は次のとおりです。

サーバーは現在実行されているため、 character_set_server 値を更新するために単純に実行しました

テートメント。

更新: my.cnf の character_set_server 値を変更してサーバーを再起動すると、ConnectorJ は想定どおりに utf8mb4 を検出します。

SET GLOBAL ConnectorJ を使用して手動で値を設定すると、引き続き Latin1 が使用されます。

なぜそうなるのか誰か知っていますか?mysql をオフラインにすることなく、ConnectorJ が検出する方法で文字セットを更新する方法はありますか?

0 投票する
1 に答える
1874 参照

java - INSERT/ON DUPLICATE KEY UPDATE のカウント

私はこのSQLクエリを持っています:

phpmyadmin でクエリを実行すると、正しい結果が返されます。

しかし、java/jdbc 経由でクエリを実行すると、クエリは 1-1-2 を返します。つまり、挿入/更新がまったくない場合は 1 が返されます。何か案が?それはバグですか、それとも何かが足りないのですか?

更新: 最新のコネクタ/j - v5.1.26

UPDATE2: Java コード

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 PM rad.MySQLTest メイン SEVERE: null 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 名前付きパラメーターの正しい構文は何ですか?