|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Всем привет! Есть опыт с другими базами, но с информикс нет и глаза разбегаются, а поджилки трясутся от ужаса. Установил версию 14 для разработчиков, инициализировал сервер как предлагал установщик. Дальше непонятно, как создать объекты. Какая база существует по умолчанию? Каким пользователем можно подключиться? Обычно я работаю из SquirrelSQL по JDBC. Драйвер подключил, нужно заполнить строку соединения, но ни имя базы, ни пользователь/пароль не знаю где взять. Что почитать на IBM доках, чтобы найти эти значения? От количества административных утилит голова пухнет. Всё что от меня требуется - это создать 3 таблицы и если возможно несколько хранимых процедур для их CRUD. Ничего заумно-особенного. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2021, 21:19 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Установщик добавил в windows\system32\etc\services ol_informix1410 9088/tcp dr_informix1410 9089/tcp lo_informix1410 9090/tcp ol_informix1410_json 27017/json когда я вызываю netstat, то oninit.exe слушает только на 9090 порту. что нужно сделать, чтобы информикс слушал и внешние соединения? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2021, 22:33 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый, стандартные базы, создаваемые по умолчанию - sysadmin, stores и sysmaster. Используйте юзера/пароль из операционки, обычно при инсталляции еще и создает informix account, но я винду не помню. Основная утилита в которой делается 95% работы - dbaccess , лежит в $INFORMIXDIR/bin . Примеры кода на java с строками коннекта лежат в $INFORMIXDIR/demo . ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 03:52 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый, на каком порту информикс слушает описано в файле sqlhosts https://www.ibm.com/docs/en/informix-servers/12.10?topic=files-sqlhosts-file-sqlhosts-registry-key default location of the sqlhosts file is: UNIX: $INFORMIXDIR/etc/sqlhosts Windows: %INFORMIXDIR%\etc\sqlhosts.%INFORMIXSERVER% Там можно "в лоб" прописать номер порта, не заморачивась названием сервиса. Для винды есть утилита Setnet32 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 03:59 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Выбегалло, С файлами я, кажется, разобрался, там всё правильно, но слушать на портах кроме 9090 оно не желает. Зная IBM, я начинаю подозревать, что Developer Edition возможно доступен только локально. Подтвердить или опровергнуть из документации это я пока не смог: нигде не говорится о таком ограничении. Как только я откатил снапшот, переустановил в каталог в корне с именем длиной меньше 8 символов и руками добавил переменные среды, то сразу заработали утилиты. В dbaccess я смог создать себе тестовую базу и увидеть её из Squirrel установленной на саму виртуалку. Затык остаётся только с подключением извне. Поскольку установщик прописал в sqlhosts имя самой машины для ol_ и dr_, то для доступа по IP, как мне кажется, делать запись в etc/hosts не нужно, но я пробовал добавлять её, равно как и прописывать это имя в DNS, и всё равно ничего не изменилось. Может быть нужно регистрировать и запускать отдельные экземпляры oninit как сервисы? Увы, догадки закончились. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 13:24 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Выбегалло Сибирский Пушистый, Там можно "в лоб" прописать номер порта, не заморачивась названием сервиса. А как выглядит формат с прописыванием порта прямо в sqlhosts? сейчас там что-то вроде ol_informix1410 olsoctcp myvmhostname ol_informix1410 dr_informix1410 drsoctcp myvmhostname dr_informix1410 lo_informix1410 olsoctcp 127.0.0.1 lo_informix1410 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 13:33 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый Выбегалло Сибирский Пушистый, Там можно "в лоб" прописать номер порта, не заморачивась названием сервиса. А как выглядит формат с прописыванием порта прямо в sqlhosts? сейчас там что-то вроде ol_informix1410 olsoctcp myvmhostname ol_informix1410 dr_informix1410 drsoctcp myvmhostname dr_informix1410 lo_informix1410 olsoctcp 127.0.0.1 lo_informix1410 drsoctcp тебе не нужен, оставь ol_informix1410 olsoctcp myvmhostname 9088 lo_informix1410 olsoctcp 127.0.0.1 9090 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 18:34 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый Выбегалло, С файлами я, кажется, разобрался, там всё правильно, но слушать на портах кроме 9090 оно не желает. Зная IBM, я начинаю подозревать, что Developer Edition возможно доступен только локально. Подтвердить или опровергнуть из документации это я пока не смог: нигде не говорится о таком ограничении. Как только я откатил снапшот, переустановил в каталог в корне с именем длиной меньше 8 символов и руками добавил переменные среды, то сразу заработали утилиты. В dbaccess я смог создать себе тестовую базу и увидеть её из Squirrel установленной на саму виртуалку. Затык остаётся только с подключением извне. Поскольку установщик прописал в sqlhosts имя самой машины для ol_ и dr_, то для доступа по IP, как мне кажется, делать запись в etc/hosts не нужно, но я пробовал добавлять её, равно как и прописывать это имя в DNS, и всё равно ничего не изменилось. Может быть нужно регистрировать и запускать отдельные экземпляры oninit как сервисы? Увы, догадки закончились. у тебя уже есть доступ через tcp, локальный доступ через shared memomy требует отдельной строки в sqlhosts с типом onipcshm в поле типа сервиса. Если с другого компа нет доступа - то это проблемы сети, попробуй ping, укажи правильное полное имя вместо myvmhostname и правильный IP адрес вместо 127.0.0.1 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 18:40 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
[quot Выбегалло#22330521] Сибирский Пушистый Выбегалло, у тебя уже есть доступ через tcp, локальный доступ через shared memomy требует отдельной строки в sqlhosts с типом onipcshm в поле типа сервиса. Если с другого компа нет доступа - то это проблемы сети, попробуй ping, укажи правильное полное имя вместо myvmhostname и правильный IP адрес вместо 127.0.0.1 Это не проблемы сети: виртуалка пингуется с хоста. Проблема в том, что на её внешнем ip никто не слушает, что видно из netstat. Вот с хоста: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 20:09 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Выбегалло drsoctcp тебе не нужен, оставь ol_informix1410 olsoctcp myvmhostname 9088 lo_informix1410 olsoctcp 127.0.0.1 9090 Однако, Вы подали мне ценную идею! Всё заработало, когда я сделал вот так: ol_informix1410 olsoctcp 192.168.1.34 9088 lo_informix1410 olsoctcp 127.0.0.1 9090 Просто сменить имена сервисов на порты оказалось недостаточно: он всё равно слушал лишь на 9090. А вот когда я сменил хост на адрес, вот тогда он сразу услышал. Спасибо за помощь! ... |
|||
:
Нравится:
Не нравится:
|
|||
02.06.2021, 22:34 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
В итоге, достаточно лишь сменить имя хоста на IP для ol_ и всё работает. Но осадок остался: почему и зачем IBM везде распинается про записи в hosts, services, и везде использует имена, когда они не работают? Может быть нужны ещё какие-то телодвижения, о которых документация так же точно умалчивает? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 00:22 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый В итоге, достаточно лишь сменить имя хоста на IP для ol_ и всё работает. Но осадок остался: почему и зачем IBM везде распинается про записи в hosts, services, и везде использует имена, когда они не работают? Может быть нужны ещё какие-то телодвижения, о которых документация так же точно умалчивает? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 01:30 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Следующий затык случился с .NET Provider. Естественно, я наступил на грабли ibm.data.informix x86 нугет пакета и понял, что нужно пользоваться чем-то другим. Вроде бы изо всего выходит что IBM настаивает и рекомендует чтобы пользовались IBM.Data.Db2. Но теперь когда я его подцепил, его DB2ConnectionStringBuilder не может построить строку соединения из той, которую, как мне кажется, следует использовать для Informix: "Database=test;Host=192.168.1.34;Server=ol_informix1410;Service=9088;Protocol=olsoctcp;" А с этим-то как бороться? Пока ничего внятного в документации я не смог найти. Видимо не там ищу. К Informix вообще можно подключиться из-под .NET, не покупая контракт, позволяющий скачть Informix SDK? Relic Hunter вместо ИП лучше поставить 0.0.0.0 нафсякей. А чем это лучше? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 03:01 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый, будет слушать на фсех адресах сервера ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 03:36 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Relic Hunter будет слушать на фсех адресах сервера полагаю, это уже не нужно. этой виртуалке осталось жить ровно столько, сколько займёт создать и отладить несколько маленьких процедур. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 05:26 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый, Informix SDK - он бесплатный ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 18:06 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый В итоге, достаточно лишь сменить имя хоста на IP для ol_ и всё работает. Но осадок остался: почему и зачем IBM везде распинается про записи в hosts, services, и везде использует имена, когда они не работают? Может быть нужны ещё какие-то телодвижения, о которых документация так же точно умалчивает? Имя хоста работает когда нормально работает DNS сервер и Informix может транслировать из имени в IP. Имя сервиса работает ( unix/linux) когда это имя есть в /etc/services , где оно транслируется в номер порта, не знаю как в винде. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2021, 18:09 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Другой вопрос: Почему параметры хранимой процедуры не получается объявлять как IN? Хотя OUT работает... На стр 5-74 в мануале IBM Informix Guide to SQL: Syntax говорится, что параметры могут быть IN, OUT, INOUT. Но когда я объявляю их как IN, то получаю 201 Syntax errror на первую букву типа данных. Если со всех параметров убрать IN и оставить только OUT на одном, то процедура компилируется. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2021, 02:53 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый, от же вопрос - а зачем так? В SPL удобно входные параметры получать при вызове а возвращать данные через return create procedure test_proc (par1 int, par2 date) returning int as r1, date as r2; return par1, par2 with resume; return par1, par2 with resume; return par1, par2 with resume; end procedure; ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2021, 09:52 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
cpr Сибирский Пушистый, от же вопрос - а зачем так? В SPL удобно входные параметры получать при вызове а возвращать данные через return create procedure test_proc (par1 int, par2 date) returning int as r1, date as r2; return par1, par2 with resume; return par1, par2 with resume; return par1, par2 with resume; end procedure; Конечно можно, но вопрос был про IN. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2021, 18:46 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
cpr Сибирский Пушистый, В SPL удобно входные параметры получать при вызове а возвращать данные через return Попробовал так, но возвращаемые поля не имеют имён. Им можно присвоить имена? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2021, 02:36 |
|
Начать с нуля с Informix 14
|
|||
---|---|---|---|
#18+
Сибирский Пушистый cpr Сибирский Пушистый, В SPL удобно входные параметры получать при вызове а возвращать данные через return Попробовал так, но возвращаемые поля не имеют имён. Им можно присвоить имена? нет, надо просто знать порядок возвращаемых параметров. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2021, 01:31 |
|
|
start [/forum/topic.php?fid=44&msg=40075021&tid=1606684]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 147ms |
0 / 0 |