LinuxはどのようにMQを実現して自動的にキューマネージャを起動します

1658 ワード

前のMQインストールでは、手動でMQ環境変数を設定し、キューマネージャを起動する必要があります.再起動するたびに、手動で、実際の本番ではMQサーバが自動的に再起動できるはずです.
解決:linuxの下でMQのデフォルトのインストールはmqの実行環境変数と起動自動起動MQキューマネージャを自動的に設定していないので、毎回手動で環境変数を追加する必要があります.
実験環境:SUSE Linux Enterprise 11 SP 4手動プロセスは以下の通り:
# su - mqm 
~ cd /opt/mqm/bin
~ source setmqenv -s   //  mqm    ,    shell  ,    
~ strmqm JAVA.QUEUE.MANAGER.1  //          

注:sourceコマンドは、新しいサブシェルプロセスではなく、現在のshellプロセスで直接有効であることを示します.
自動プロシージャ構成:
# su - mqm
~ cd /opt/mqm/bin
~ ./crtmqenv -s > /home/mqm/.profile  

mqm環境変数を作成し、mqmユーザー環境変数ファイルに永続的に追加する注意:/etc/profileファイルはグローバルな環境変数、/home/mqm/である.プロファイルは現在のユーザーの環境変数設定であり、SUSE linuxで新しいshellを開くたびに有効になります.shellを再開し、mqmログインで有効にします.
自動起動キューマネージャスクリプトを定義し、/etc/initに定義します.d/下
# cd /etc/init.d
#  vim  mq8
   su - mqm -c "strmqm JAVA.QUEUE.MANAGER.1"   
# chmod 755 mq8
# cd rc3.d
# ln -s ../mq8 mq8
# cd ../rc5.d
# ln -s ../mq8 mq8
# reboot

再起動有効、再起動後に表示
# ps -ef | grep mqm

有効にならないことを発見して、よく検査して、スクリプトを完備して、依然として有効にならないことを発見します.
su - mqm -c "source /opt/mqm/bin/setmqenv -s; /opt/mqm/bin/strmqm JAVA.QUEUE.MANAGER.1"

セルフ起動スクリプト名が間違っていたことをよく確認します.rc*.dディレクトリの下のネーミングには仕様があります.
S{number}{name}          start,     ,   
K{number}{name}          stop

ファイル名を変更します.
# cd /etc/init.d/rc3.d
# mv  mq8  S14mq8
# cd /etc/init.d/rc5.d
# mv  mq8  S14mq8

再起動は有効ですが、このスクリプトは起動スクリプトにすぎず、startなどのコマンドパラメータはサポートされていません.
Windows環境:crtmqmコマンドはsaをサポートし、saxはキューマネージャパラメータを自動的に起動し、キューマネージャを作成するときに設定できます.