2012-05-02 5 views
8

Я пытаюсь подключить базу данных с проектом java. После прочтения некоторых учебных пособий и поддержки курса я понял, что мне нужно создать новый источник данных в консоли администратора.источники данных derby - соединение отказано

Итак, я вошел в консоль администратора, затем перешел к ресурсам -> JDBC -> Источники данных -> Новый; заполнения полей и когда я тестирую соединение, то ошибка, я получаю это:

сообщения Операция проверки соединения Сбой источника данных MyDB на сервере server1 в узле RO2CVG6CNode01 со следующим исключением: ява .sql.SQLNonTransientException: java.net.ConnectException: ошибка подключение к серверу localhost на порту 1527 с сообщением Connection отказано: connect.DSRA0010E: SQL State = 08001, код ошибки = 40 000. Просмотр журналов JVM для получения дополнительной информации.

Я не знаю, где проблема. Возможно, с именем базы данных: jdbc: derby: D: \ MyDB? Кто-нибудь может мне помочь? Я также пытался использовать только MyDB, после this tutorial.
Но все же это не работает.

+1

Ошибка подключения к серверу локального хоста на порт 1527 -> эта ошибка говорит, что нет никакой базы данных не работает на порту 1527 – oers

+0

убедитесь, что сервер работает: HTTP: //www.myeclipseide .com/documentation/quickstarts/blueedition/blue_websphere_data_source/images/myeclipse_derby_server_running.png – oers

+0

Эта ссылка будет полезна: http://stackoverflow.com/a/30272670/3728901. Если мы сделаем шаг за шагом правильно, мы избежим ошибок. –

ответ

27

У вас есть сервер Derby работает?

Вполне возможно, что вы пытаетесь подключиться к базе данных без фактического сервер, работающий на порту 1527

Вы могли бы попытаться установить соединение с помощью командной строки/Linux оболочки - в зависимости от того, какую операционную систему вы с помощью.

Попробуйте это, если вы хотите:

  1. Открыть командную строку
  2. Перейдите в каталог установки Derby
  3. Перейдите в папку «Bin» (Примечание: Перейдите Далее в папку networkServer, если она существует)
  4. Тип "startNetworkServer" и нажмите Enter

Вы должны получить сообщение о том, что говорит somethi ng вот так:

2012-08-29 10: 57: 16.559 GMT: Менеджер безопасности установлен с использованием политики безопасности основного сервера. 2012-08-29 10: 57: 16.809 GMT: Сетевой сервер Apache Derby - 10.6.2.1 - (999685) начала и готово принимать соединения на порт 1527

Если вы этого не сделаете, то, возможно, вы могли бы проверить свой брандмауэр (комментарии приглашенных здесь :)

Если вы это сделаете, то вы можете проверить свой соединение, используя следующий метод:

  1. Открыть другой командной строки
  2. Перейдите в каталог установки Derby
  3. Перейдите в папку «Bin»
  4. Тип "IJ" и нажмите Enter
  5. Введите следующее:

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

    ... и нажмите Enter

Если все пойдет хорошо, вы получите "Ij>" приглашение назад.

Здесь вы можете ввести некоторые SQL-запросы для дальнейшего тестирования соединения.

Если нет, то могут быть и другие проблемы.

Если вы создаете базу данных в первый раз в дерби, то вы должны использовать это вместо шага 5 выше:

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

... и нажмите Enter

Надеюсь, после того, как делая это, вы получите соединение. В последнем случае вы, по крайней мере, получите новую базу данных MyDB, которая активна на Derby Server. Если ваша исходная база данных (MyDB) относительно невелика, возможно, быстрее восстановить ее снова для любой цели, в которой вы нуждаетесь.

В дополнение к этому, если вы установили соединение, вы можете попробовать другие инструменты, которые вы используете для разработки баз данных, поскольку вы хотя бы устранили возможность того, что проблема связана с этим соединением.

Просто убедитесь, что номер порта указан на шаге 4. Обычно это 1527. Если нет, то измените номер порта на шаге 5 (или его команду замены для новой базы данных) для любого порта в сообщении от Derby.

Надеется, что это помогает и удаче :)

Wayne Riesterer

+1

+1 для описательного объяснения. – dShringi

+0

+1 для этого подробного подробного объяснения .. – EsmaeelQash

1

Вы установили псевдоним идентификации? Кажется, та же проблема, что и в ссылке ниже;

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

Кроме того, если вы проверяете SystemOut.log вы можете увидеть сообщение об ошибке, о том какое свойство не установлен;

{ "08001", "Обязательный Derby DataSource свойство {0} не установлено.", "40000"},

1

Ознакомьтесь с Apache Derby документацией here .....

Настройка среды для использования драйвера Derby Network Client JDBC

Чтобы использовать драйвер Derby Network Client JDBC, установите CLASSPATH, чтобы включить файлы jar, перечисленные ниже:

  • derbyclient.jar: содержит драйвер JDBC
  • derbytools.баночка: по желанию, предоставляет средство IJ

Вы можете настроить свой CLASSPATH явно с помощью команды ниже: Окна:

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> connect

jdbc:derby://localhost:1527/Chapter01DB;create=true; 
1
  1. Скачать дерби следующему адресу:

    /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. команда Run Derby строка ниже:

    java org.apache.derby.tools.ij 
    
    connect 'jdbc:derby://localhost:1527//home/<user_directory>/<database-directory>/<database-name>'; 
    
    show tables; 
    
    disconnect; 
    
    exit; 
    
Смежные вопросы