問題タブ [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.
java - mysqlデータベースを並行して呼び出す場合の考慮事項
初めて複数のアプリケーションで並行して使用するmysqlデータベースを作成する必要があります。この時点まで、mysqlデータベースでの私の唯一の経験は、データベースをクエリする単一のプログラム(たとえば、Webサーバー)でした。今、私はいくつかのCXF javaサーブレットタイプのプログラムと、同じスキーマで編集および読み取りを行うバックグラウンドサーバーを持つシナリオに移行しています。Connector / J JDBCドライバーを使用して、すべてのインスタンスでデータベースに接続しています。
私の質問はこれです:並列アクセスが問題にならないようにするために何をする必要がありますか。必要に応じて取引を行う必要があることは承知していますが、本当に迷っているのは経営陣です。例えば。サーブレットがジョブを実行するたびに接続を閉じる必要がありますか?データベースにアクセスするプログラムごとに一意のユーザーが必要ですか?Connector / Jオブジェクトで何かする必要がありますか?別の方法でテーブルを宣言する必要がありますか?私は何かを逃しましたか、それとも私が考えなかった何かがありますか?トランザクションとSQL自体の処理方法についてはかなり良い考えがありますが、データベースをセットアップするときに何をする必要があるかについては、かなり迷っています。
mysql - 単純なストアド プロシージャの照合の不正な組み合わせ
MySQL サーバー (5.5.23) で Connector/J を使用して Java からストアド プロシージャを実行しようとしています。プロセスは
ただし、エラーが発生します
データベース全体で latin1_general_ci のみを使用しているため、何が起こっているのかわかりません。
mysql - ResultSetImpl が NullPointerException をスローする
私はmysql 5.1.18コネクタでmysql 5.5を実行しています。スタイルの単純なクエリ
select * from my_table where column_a in ('aaa','bbb',...) and column b=1;
Java アプリケーション内から実行されます。クエリは、25,000 行、それぞれに 8 列の結果セットを返します。whileループで結果を読みながら
通常は最初のループ中に次の例外がスローされますが、同じ行にはスローされません。
ResultSetImpl.java:5720 のソース コードを確認したところ、次のように表示されました。
メタデータの場所
getSQLType は、int を返すロジックのない getter です。興味深いのは、同じメタデータ オブジェクトが他のゲッターを使用して数行上で何度も呼び出され、例外をスローしないことです。
ところで、mysql 内で直接実行されている間は、上記のクエリに問題はありません。アプリケーションは aws で実行されます。
これを解決する方法はありますか?ありがとう。
mysql - MySQL、Grails 2 アプリで長時間非アクティブな間、プールされた接続を維持する (またはタイムアウトして新しい接続を取得する) 正しい方法
私は grails アプリを使用していますが、アクティビティが頻繁に発生しますが、非アクティブな期間が数時間から一晩続くことがよくあります。朝の最初のユーザーが次のような例外を受け取ることに気付きました。これは、プール内の接続が古くなり、MYSql データベースが接続を閉じたためだと思います。
Connector/J 接続プロパティ 'autoReconnect=true' を使用するのが良い考えかどうか (そして、接続が復元されてもクライアントが例外を受け取るかどうか)、または設定するかどうかについて、Google で矛盾する情報を見つけました。アイドル状態の接続を定期的に削除または更新したり、借用をテストしたりするその他のプロパティ。Grails はその下で DBCP を使用します。私は現在、以下のように単純な構成を持っており、長い非アクティブ期間の後にプールから取得された接続が有効であり、閉じられていないことを確認する最善の方法についての回答を探しています。
例外
mysql - Amazon EC2 の Java Servlet から MySQL に接続できない
最近、ローカル マシンの.war
からに を展開しました。私の Webapp のサーブレットは JBDCを使用しました。その jar ファイルは、Netbeans のライブラリにコピーされました。WebApp はローカル マシンでうまく機能していました。しかし、Amazon EC2 の Tomcat のログにはエラーが表示されます。Netbeans IDE
Amazon EC2
Connector/J
the host 'xyz' is not allowed to connect to this MySQL Server
tomcat - Connector / JJarをAmazonEC2のTomcat7のlibフォルダーにコピーするにはどうすればよいですか?
Connector/J
AmazonEC2インスタンスにインストールされたTomcat7とMySQL5.5の間に接続プールを設定するためのJDBCドライバーとして使用しています。JavaサーブレットからMySqlにアクセスしようとすると、次のエラーが発生します
lib
このエラーは、Tomcat7のフォルダにConnector/Jをコピーしていないことが原因だと思います。
私の質問
Connector / JJarをAmazonEC2のTomcat7のlibフォルダーにコピーするにはどうすればよいですか?
mysql - AmazonEC2でTomcat7とMySQLの間に接続プールを確立できません
connection pool
AmazonEC2マシン間Tomcat7
およびMySQL
AmazonEC2マシン上で確立しようとしています。Connector/J
JARファイルをフォルダにコピーしましWEB-INF/lib
たが、次のエラーが発生しますcatalina.out
私がしている可能性のあるエラーを考えることができませんでした、どんなポインタも大いに役立ちます。
mysql - MySQL: INSERT .... ON DUPLICATE KEY UPDATE: 影響を受ける行 == 3?
MySQL のドキュメントには、INSERT ... ON DUPLICATE KEY UPDATE を使用する場合、影響を受ける行の値は、レコードが挿入された場合は 1、既存のレコードが更新された場合は 2 になると記載されています。
Java から Connector-J を使用して MySQL 呼び出しを介して更新が実行された場合にのみこれが表示されますが、レコードが更新されると、影響を受ける行の値が 3 になります。MySQL Workbench からストアド プロシージャを呼び出すと、期待される結果として 2 行が更新されます。
これが何を意味するのか誰にも分かりませんか?これはおそらく Connector-J の異常でしょうか? 私はただそれを実行する傾向がありますが、合理的な説明がなければ、データの整合性に関する懸念が残ります (これは、影響を受ける行の値をチェックする理由の 1 つです)。
MySQL サーバーのバージョン: 5.1.57; Connector-J バージョン: 5.1.7 (Java 1.6)
追加の詳細: これは変更中のテーブルです:
挿入/更新を実行するストアド プロシージャは次のとおりです。
java - サーバー上のアプレットからSQLデータベースに接続する場合、ローカルホストまたは実際のIPを使用しますか
Java アプレットから Web サイトのデータベースに接続しようとしています。Eclipse から試してみると、通信リンクに障害があり、ドライバーがサーバーからパケットを受信していないと表示されます。データベースに接続できるのは実際のサーバー上のアプレットだけだからでしょうか。
そこで、それを jar としてエクスポートし、個人的に署名して自分の Web サイトにアップロードしました。次に、埋め込みタグとして使用して、Web ページに配置します。
アプレットをサイトに配置する適切な方法はありますか? アプレットが表示され、Web ページで動作しますが、ボタンを押してデータベースに接続すると、接続できませんでしたと表示されます。
Javaコードでlocalhostと実際のIPの両方を使用して接続しようとしましたが、どちらも機能しません。