web-dev-qa-db-ja.com

データソースダービー-接続が拒否されました

データベースをJavaプロジェクトに接続しようとしています。いくつかのチュートリアルとコースサポートを読んだ後、管理コンソールで新しいデータソースを作成する必要があることを理解しました。

それで、私は管理コンソールにログインし、次にリソース-> JDBC->データソース->新規に移動しました。フィールドに入力し、接続をテストすると、次のエラーが発生します。

メッセージ次の例外で、ノードRO2CVG6CNode01のサーバーserver1上のデータソースMyDBのテスト接続操作が失敗しました。 SQL状態= 08001、エラーコード= 40,000。詳細については、JVMログを表示してください。

問題がどこにあるのかわかりません。多分データベース名:jdbc:derby:D:\ MyDB?誰かが私を助けてくれますか? このチュートリアル の後、MyDBのみを使用することも試みました。
しかし、それでも機能しません。

11
Steffi

Derbyサーバーを実行していますか?

実際のサーバーがポート1527で実行されていない状態でデータベースに接続しようとしている可能性は十分にあります。

使用しているオペレーティングシステムに応じて、コマンドライン/ linux Shellを使用して接続を確立してみることができます。

あなたが好きならこれを試してください:

  1. コマンドプロンプトを開く
  2. Derbyインストールディレクトリに移動します。
  3. 「bin」ディレクトリに移動します(注:networkServerフォルダが存在する場合は、さらに移動します)。
  4. 「startNetworkServer」と入力してEnterキーを押します

次のようなメッセージが表示されます。

2012-08-29 10:57:16.559 GMT:基本サーバーのセキュリティポリシーを使用してインストールされたセキュリティマネージャー。 2012-08-29 10:57:16.809 GMT:Apache Derby Network Server-10.6.2.1-(999685)が起動し、ポート1527で接続を受け入れる準備ができました

そうでない場合は、ファイアウォールを確認できます(コメントはここに招待されています:)。

その場合、次の方法を使用して接続をテストできます。

  1. 別のコマンドプロンプトを開く
  2. Derbyインストールディレクトリに移動します。
  3. 「bin」ディレクトリに移動します
  4. 「ij」と入力してEnterキーを押します
  5. 次のように入力します。

     connect 'jdbc:derby://localhost:1527/MyDB';
    

    ...そしてEnterキーを押します

すべてがうまくいくと、「ij>」プロンプトが表示されます。

ここからSQLクエリを入力して、接続をさらにテストできます。

そうでない場合は、他の問題がある可能性があります。

Derbyで初めてデータベースを作成する場合は、上記のステップ5の代わりにこれを使用する必要があります。

     connect 'jdbc:derby://localhost:1527/MyDB;create=true';

...そしてEnterキーを押します

うまくいけば、これらのことをした後、あなたは接続を取得します。最後のインスタンスでは、少なくともDerbyサーバーでアクティブなMyDBという新しいデータベースを取得します。元のデータベース(MyDB)が比較的小さい場合は、必要な目的のためにデータベースを再構築する方が速い場合があります。

これに加えて、接続を確立する場合、少なくとも接続が問題である可能性を排除しているので、データベース開発に使用する他のツールを試すことができます。

手順4で報告されたポート番号を確認してください。これは通常1527です。そうでない場合は、手順5(または新しいデータベースの代わりのコマンド)で、メッセージに記載されているポートのポート番号を変更します。ダービー。

これがお役に立てば幸いです:)

ウェイン・リーステラー

32
Wayne Riesterer

認証別名を定義しましたか?以下のリンクの問題と同じ問題のようです。

http://www.webspheretools.com/sites/webspheretools.nsf/docs/Error%20when%20testing%20a%20JDBC%20connection%20to%20Derby

また、SystemOut.logを確認すると、設定されていないプロパティを示すエラーメッセージが表示される場合があります。

{"08001"、 "必須のDerby DataSourceプロパティ{0}は設定されていません。"、 "40000"}、

1
Kurtcebe Eroglu
  1. Derbyを次の場所にダウンロードします。

    /home/ <user_directory> /Apache-derby/
    
  2. 以下のようにクラスパスを設定します。

    export DERBY_HOME=/home/<user_directory>/magister-database
    
    export DERBY_INSTALL=/home/<user_directory>/Apache-derby/db-derby-10.11.1.1-bin
    
    export CLASSPATH=$DERBY_INSTALL/lib/derbyclient.jar:$DERBY_INSTALL/lib/derbytools.jar:$CLASSPATH
    
  3. ネットワークサーバーを起動します。

    /home/<user_directory>/Apache-derby/db-derby-10.11.1.1-bin/bin/startNetworkServer
    
  4. 以下のようにderbyコマンドラインを実行します。

    Java org.Apache.derby.tools.ij
    
    connect 'jdbc:derby://localhost:1527//home/<user_directory>/<database-directory>/<database-name>';
    
    show tables;
    
    disconnect;
    
    exit;
    
1
Amit Kaneria

Apache derbyのドキュメント here ....を確認してください。

Derby Network Client JDBCドライバーを使用するための環境の構成

Derby Network Client JDBCドライバーを使用するには、以下のjarファイルを含めるようにCLASSPATHを設定します。

  • derbyclient.jar:JDBCドライバーが含まれています
  • derbytools.jar:オプション、ijツールを提供

以下に示すコマンドを使用して、CLASSPATHを明示的に設定できます:Windows:

C:\> set CLASSPATH=%DERBY_INSTALL%\lib\derbyclient.jar;%DERBY_INSTALL%\lib\derbytools.jar;.

UNIX:

$ export CLASSPATH=$DERBY_INSTALL/lib/derbyclient.jar:$DERBY_INSTALL/lib/derbytools.jar:.

次に、プロンプトでijコマンドを入力した後、このようなデータベースを作成してみてください。.....ij>接続

jdbc:derby://localhost:1527/Chapter01DB;create=true;
1