вторник, 24 июня 2008 г.
Делаем поиск удобным
На домашней странице документации по информиксу 11.5 появились ссылки для добавления поисковых машин по документации в браузер. Установить поиск в браузер можно здесь.
понедельник, 23 июня 2008 г.
HDR: как secondary сделать на время доступным для обновлений
Бизнес требует от ИТ инфраструктуры постоянной доступности ресурсов и данных. В то же время некоторые задачи (например обновление ПО, модернизация оборудования) требуют перерывов в работе ИТ-сервисов. И здесь встает задача минимальной задержки в обеспечении работы ИТ. HDR обеспечивает высокую надежность и доступность данных, даже когда primary сервер HDR недоступен в течение некоторого времени. В этом случае обновления данных принимает на себя secondary сервер, который на время недоступности primary делается стандартным. После запуска primary репликация HDR восстанавливается в прежнем виде. Далее по шагам объясню как это сделать.
1. Сервер primary выключаем (или он недоступен после устранимого сбоя оборудования)
2. secondary переводим в режим standard:
onmode -d standard
3. клиентские приложения теперь могут работать с бывшим secondary в режиме обновления данных
4. Через некоторое время запускаем primary: переводим стандартный (бывший secondary) сервер в режим quiescent, делаем его вновь secondary:
onmode -s (или -u если требуется немедленно отключить сессии)
onmode -d secondary prm_srv_name
5. Запускаем primary, который накатывает на себя все обновления сделанные на secondary который был в режиме standard
после этого репликация снова восстанавливается.
Данная процедура переключения secondary > standard > secondary при отключенном primary является стандартной и описана в документации.
1. Сервер primary выключаем (или он недоступен после устранимого сбоя оборудования)
2. secondary переводим в режим standard:
onmode -d standard
3. клиентские приложения теперь могут работать с бывшим secondary в режиме обновления данных
4. Через некоторое время запускаем primary: переводим стандартный (бывший secondary) сервер в режим quiescent, делаем его вновь secondary:
onmode -s (или -u если требуется немедленно отключить сессии)
onmode -d secondary prm_srv_name
5. Запускаем primary, который накатывает на себя все обновления сделанные на secondary который был в режиме standard
после этого репликация снова восстанавливается.
Данная процедура переключения secondary > standard > secondary при отключенном primary является стандартной и описана в документации.
вторник, 29 апреля 2008 г.
Сбор статистики по фрагментированной таблице
Как то обсуждая на sql.ru сбор статистики по большим таблицам один из участников обсуждения пожаловался что нельзя собирать статистику отдельно для каждого фрагмента таблицы. Действительно, предположим что есть фрагментированная таблица (или например разбитая на partitions). Если данные в такой таблице меняются только в некоторых фрагментах, а остальные остаются неизменными, то нет смысла запускать сбор статистики по всей таблице. Гораздо рациональнее было бы собирать статистику только по фрагментам с измененными данными. Однако такая возможность сбора статистики в информиксе не реализована.
пятница, 25 апреля 2008 г.
А вы все еще используете старые параметры VP?
Как известно, параметры виртуальных процессоров в информиксе задаются в $ONCONFIG с помощью параметров AFF_SPROC, AFF_NPROCS, NOAGE, NUMCPUVPS, и NUMAIOVPS. Так вот эти параметры давно (уже года два) не рекомендуется использовать. Вместо них предлагается использовать единые параметры конфигурации VPCLASS, в котором перечисляются все характеристики каждого определенного в информиксе класса виртуальных процессоров.
Приведу пример. Вот конфигурация с использованием старых параметров:
NUMCPUVPS 2 # Number of user (cpu) vps
NUMAIOVPS 2 # Number of IO vps
NOAGE 1
А вот та же конфигурация с использованием нового параметра VPCLASS:
VPCLASS cpu,num=2,noage
VPCLASS aio,num=2,noage
Исключение сделано для сетевых процессоров, для них как обычно используем параметр NETTYPE.
Как видим новая конфигурация позволяет более гибко управлять отдельными параметрами каждого класса VP. Также все параметры сосредоточены в одном месте что также повышает удобство конфигурации.
Приведу пример. Вот конфигурация с использованием старых параметров:
NUMCPUVPS 2 # Number of user (cpu) vps
NUMAIOVPS 2 # Number of IO vps
NOAGE 1
А вот та же конфигурация с использованием нового параметра VPCLASS:
VPCLASS cpu,num=2,noage
VPCLASS aio,num=2,noage
Исключение сделано для сетевых процессоров, для них как обычно используем параметр NETTYPE.
Как видим новая конфигурация позволяет более гибко управлять отдельными параметрами каждого класса VP. Также все параметры сосредоточены в одном месте что также повышает удобство конфигурации.
понедельник, 21 апреля 2008 г.
Используем CSM
Если требуется шифровать трафик от клиента к информиксу, то сделать это довольно просто с помощью Communication Support Module. Например рассмотрим настройку SPWDCSM на клиенте и сервере. Во первых следует уяснить, что если алиас информикса использует шифрование, то на клиенте тоже должен быть настроен CSM, иначе клиент не сможет подсоединиться к информиксу. Ну и во вторых, в Windows CSM стабильно работает на клиенте 2.90.TC6 и 3.00.TC2. На AIX например CSM работает также с использованием клиента 2.90.UC4. Старые версии клиентов, например 2.7 я бы не советовал использовать для работы с CSM.
Итак, настраиваем информикс. В каталоге $INFORMIXDIR/etc (или %INFORMIXDIR\etc для Windows) создаем текстовый файл concsm.cfg куда добавляем строку (пути при этом заменяем на реальные):
SPWDCSM("client=C:\Progra~1\IBM\Informix\Client-SDK\lib\
client\csm\ispws07a.dll,server=libixspw.so","","")
(перенос строки сделал потому что в блоге вся строка не влезает по ширине)
Далее в Setnet32 (для Windows) или в $INFORMIXDIR\etc\sqlhosts (для UNIX) находим нужный нам сервер где будет включен CSM, и в поле Options добавляем строку csm=(SPWDCSM)
Настройку клиента можно считать законченной. Настройка сервера практически не отличается от настройки клиента. В каталоге $INFORMIXDIR/etc создаем текстовый файл concsm.cfg где прописываем строку вида (путь к библиотеке libixspw.so заменить на тот который у вас):
SPWDCSM("server=/informix/test/lib/csm/libixspw.so","","")
и в sqlhosts для информикса в поле Options добавить строку csm=(SPWDCSM). После этого перезапустить информикс и проверить соединение.
Итак, настраиваем информикс. В каталоге $INFORMIXDIR/etc (или %INFORMIXDIR\etc для Windows) создаем текстовый файл concsm.cfg куда добавляем строку (пути при этом заменяем на реальные):
SPWDCSM("client=C:\Progra~1\IBM\Informix\Client-SDK\lib\
client\csm\ispws07a.dll,server=libixspw.so","","")
(перенос строки сделал потому что в блоге вся строка не влезает по ширине)
Далее в Setnet32 (для Windows) или в $INFORMIXDIR\etc\sqlhosts (для UNIX) находим нужный нам сервер где будет включен CSM, и в поле Options добавляем строку csm=(SPWDCSM)
Настройку клиента можно считать законченной. Настройка сервера практически не отличается от настройки клиента. В каталоге $INFORMIXDIR/etc создаем текстовый файл concsm.cfg где прописываем строку вида (путь к библиотеке libixspw.so заменить на тот который у вас):
SPWDCSM("server=/informix/test/lib/csm/libixspw.so","","")
и в sqlhosts для информикса в поле Options добавить строку csm=(SPWDCSM). После этого перезапустить информикс и проверить соединение.
Промежуточное обновление для Informix 11.10.UC2 вышло
Вот список исправлений в 11.10.xC2W2:
APAR | Description |
| IC56222 | ABORTED TRANSACTION (ATS) OR DATA CORRUPTION POSSIBLE WITH UPDATE TRIGGER ON REPLICATED TABLE AND PARTIAL ROW REPLICATION |
| IC54613 | BAD PERFORMANCE FOR A QUERY WHICH USES THE IN CONDITION IN THE WHERE CLAUSE |
| IC54917 | THE START_ONPLOAD PROCEDURE IS NOT WORKING ON WINDOWS |
| IC54955 | CONVERSION OF DECIMAL SEPARATOR IS NOT WORKING FOR PARAMETERIZED INSERT |
| IC55116 | ASSERT FAILURE RELATED TO GET_FULL_QBUFH WHEN TSM STORAGE POOL IS FULL |
| IC55163 | HPL: EXCEEDING THE 3^32 NUMBER OF ROWS, THE NUMBER OF ROWS PROCESSED GOES NEGATIVE. |
| IC55164 | DBSCHEMA -D -HD CAUSES ERROR -1215 - VALUE EXCEEDS LIMIT OF INTEGER PRECISION |
| IC55213 | AUTHENTICATION FAILURE ACCESSING REMOTE TABLES FROM TRIGGERS |
| IC55350 | ONBAR REGRESSION ERROR CONNECTING TO IDS WITH LARGE SHARED MEMORY |
| IC55409 | HUGE MEMORY ALLOCATION DURING INDEX BUILD |
| IC55416 | CDR SYNC COMMAND HANGS WHEN COLUMN DATA VALUES ARE OUT OF THE FILTER RANGE IN THE REPLICATE |
| IC55419 | QUERY USING OUTER JOIN RETURNS WRONG RESULT |
| IC55436 | STANDARD MODE INFORMIX INSTANCE BECOMES PRIMARY AFTER RESTART IN A HDR/RSS ENVIRONMENT |
| IC55455 | PHYSICAL RECOVERY CAN HANG IN V11, WHEN USING CONFIGURABLE PAGE SIZE |
| IC55490 | INSTALLING IDS 11 ON A WINDOWS DOMAIN CONTROLLER FAILS WITH NOROLESEP_CREATEINFXUSER 3 ERROR |
| IC55661 | DRDA: SELECT STATEMENTS WAIT FOR A LOCK TWICE THE TIME OF LOCK WAIT TIMEOUT PERIOD |
| IC55663 | CRASH IN SQL WHEN USING SBLOBS IN MTS (XA) TIGHTLY COUPLED APPLICATION. |
| IC55673 | RUNNING ONINIT -S ON HDR SECONDARY CRASHES THE SERVER |
| IC55983 | WINDOWS DOMAIN USERS ARE ONLY ACCEPTED AS DOMAINUSERNAME NOT USERNAME. |
пятница, 28 марта 2008 г.
btscanner будет подробно документирован?
Почитал исправления ошибок а также известные ошибки для версии информикса 10.00.UC8 и нашел любопытную запись:
...
IC54482 ONLINE-DOCUMENT DOCUMENTATION FOR BTREE SCANNER AND ALICE MODE IS INCOMPLETE
...
Так что возможно таки добавят подробности о настройке и работе btscanner в документацию.
...
IC54482 ONLINE-DOCUMENT DOCUMENTATION FOR BTREE SCANNER AND ALICE MODE IS INCOMPLETE
...
Так что возможно таки добавят подробности о настройке и работе btscanner в документацию.
Подписаться на:
Сообщения (Atom)