Russian Qt Forum
Ноябрь 27, 2024, 22:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Firebird connect  (Прочитано 11175 раз)
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« : Июль 23, 2009, 12:55 »

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

Код:
static bool createConnect(QString basename)
{
        QSqlDatabase db = QSqlDatabase::addDatabase("QIBASE");
        db.setDatabaseName(basename);
        db.setUserName("sysdba");
        db.setPassword("masterkey");
if (!db.open())
{
                QMessageBox::critical(0,QObject::tr("DataBase Error"),db.lastError().driverText());
                qDebug() << db.lastError() << db.lastError().driverText();
                return false;
}else
{
return true;
}
}

путь к базе передаю точно правельный, вот что мне КуТе отвечает

Цитировать
QSqlError(-902, "Error opening database", "Unable to complete network request to host "localhost". - Failed to establish a connection. - В соединении отказано") "Error opening database"

Это к чему, зачем он через localhost коннектится? Использую ClasicServer, плагин для КуТе собрал.
Записан
crossly
Гость
« Ответ #1 : Июль 23, 2009, 14:53 »

укажи явно имя хоста...
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #2 : Июль 23, 2009, 14:55 »

Зачем если база в файле на локальной машине?

да и я пробовал явно указывать и localhost и 127.0.0.1
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #3 : Июль 23, 2009, 16:02 »

И похоже это не я с ума сошел, стандартный пример sqlbrowser, отображает драйвер QIBASE но при коннекте выдаёт ту же ошибку.  Непонимающий
Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #4 : Июль 24, 2009, 02:42 »

Сетка на компе живая? ping 127.0.0.1
Порт который использует файрберд по умолчанию не занят какой-тодругой программой? (не помню на память можно посмотреть в конфиге)
А на счет указания имени хоста лучше всегдя это делать явно как вам посоветовали, избавит от множества проблем.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #5 : Июль 24, 2009, 06:23 »

>>не помню на память можно посмотреть в конфиге
3050
Записан

Юра.
crossly
Гость
« Ответ #6 : Июль 24, 2009, 08:53 »

вообще советовал бы под linux super-server...

в общем qt тут совершенно ни причем.... для начала проверь запущен ли у тебя сервер вообще!!...

проверь порт в /etc/services.... и посмотри с помощью netstat и или тупо telnet localhost 3050 (gds_db в /etc/services)...
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #7 : Июль 24, 2009, 09:19 »

вот что в /etc/servies/

Код:
gds_db          3050/tcp   # gds_db
gds_db          3050/udp   # gds_db

тут всё нормально насколько я понимаю, команда nmap сказала что нет у меня открытого порта 3050.

Возникает совсем нубский вопрос, как тогда запустить огнептицу?
Записан
crossly
Гость
« Ответ #8 : Июль 24, 2009, 12:46 »

ну если сервер у тебя классик то запускатся должен он xinetd (inetd для старых дистрибутивов)... тобиш для начала проверь запущен ли у тебя xinetd... ну и соответственно надо бы проверить а прописан ли у тебя огнептиц в него...

кстати .... не вижу упоминания... какой именно дистрибутив linux...
« Последнее редактирование: Июль 24, 2009, 12:52 от crossly » Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #9 : Июль 24, 2009, 14:27 »

C xinetd попробую чуть позже сейчас работой загрузили, а дистрибутив OpenSUSE 11.1
Записан
crossly
Гость
« Ответ #10 : Июль 24, 2009, 16:02 »

ну.... на 11.1 он скорее всего даже не установлен по умолчанию... все же рекомендовал бы супер....
Записан
Blayder
Гость
« Ответ #11 : Июль 24, 2009, 21:50 »

в
/etc/hosts.allow
добавь
gds_db : ALL
может поможет.
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #12 : Июль 27, 2009, 07:56 »

crossly, спасибо xinetd помог, всё запустилось собралось и заработало Смеющийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.