Установка и начало работы с WebSphere MQ
Существует еще один важный параметр CCSID – кодовая страница менеджера. При создании менеджеров на разных серверных платформах и в разных операционных системах кодовые страницы могут отличаться. Для того чтобы исключить процедуру конвертации при передаче сообщений между менеджерами с разными кодовыми страницами рекомендуется на всех менеджерах установить одну и ту же кодовую страницу, например 1251. У WebSphere MQ существует множество таблиц перекодировки, с помощью которых осуществляется конвертация сообщений. Данные таблицы находятся в каталоге C:\Program Files\IBM\WebSphere MQ\conv\table. Если нет соответствующей таблицы перекодировки, то существует вероятность, что соединение между менеджерами очередей будет невозможно.
Просмотреть и изменить текущую кодовую страницу можно с помощью утилиты runmqsc.exe и соответствующих команд в ней, например, alter qmgr force ccsid(1251). Итак, используя простейший синтаксис :
crtmqm /u DEAD_LETTER QM_Win2000
можно создать менеджер QM_Win2000. Затем следует его активизировать (стартовать).
Для этого существует утилита strmqm :
strmqm –c –z MQMName
где:
-c - При указании этой опции менеджер стартует, пересоздает все системные объекты с параметрами по умолчанию и затем останавливается.
-z - Запрещает появление сообщений об ошибках. Использовать ее не рекомендуется.
MQMName - Имя менеджера.
Для простого старта менеджера по умолчанию достаточно набрать в командной строке:
strmqm
Для остановки менеджера очередей существует утилита endmqm :
endmqm –c/-w/-i/-p –z MQMName
где:
-c - Менеджер остановится только после того, как все приложения, работающие с объектами WebSphere MQ "отсоединятся" от самих объектов, то есть ни один объект не будет "захвачен" приложениями. Причем менеджер будет ждать, пока не выполнятся все запросы (действия) приложений. При выполнении команды с этой опцией управление сразу же передается командной строке и не выдается никаких сообщений об остановке.
-w - Практически то же, что и с опцией –с, за исключением того, что пока менеджер останавливается, управление не передается командной строке, а выводится сообщение "Waiting for queue manager MQMName to end".
-i - Менеджер выполнит все текущие запросы приложений и остановится. Если в процессе остановки появятся новые запросы и необработанные транзакции, то при последующем старте менеджера произойдет откат незавершенных транзакций. Управление передается командной строке после остановки менеджера.
-p - Немедленная остановка. Менеджер остановится, не обрабатывая все текущие транзакции и запросы приложений. Остановка с данной опцией может привести к непредсказуемым результатам. Все процессы WebSphere MQ, которые не могут быть корректно остановлены в течение 30 секунд после начала работы endmqm будут отключены.
Перед остановкой менеджера необходимо остановить все приложения, работающие с WebSphere MQ, несмотря на то, что WebSphere MQ в процессе остановки менеджера будет пытаться их отключить.
И последняя команда – удаление менеджера:
dltmqm –z MQMName
где:
-z - Запрещает появление сообщений об ошибках. Использовать ее не рекомендуется.
MQMName - Имя менеджера.
При выполнении этой команды удаляется не только менеджер, но и все его объекты. Перед удалением менеджера следует его остановить с помощью команды endmqm . Важно, чтобы в момент удаления менеджера, каталог с содержимым менеджера (для WindowsNT это - C:\Program Files\IBM\WebSphere MQ\Qmgrs\QM_Win2000 ) не был никем "захвачен", иначе удалить менеджер невозможно.