キーワード†
- nohup
- ssh
- MySQL
現象†
mysqld をコンソールから立ち上げて ssh からログアウトすると、mysqld が停止する。
原因†
ユーザがシェルからログアウトすると、シェルが端末から起動したプロセスに向けて SIGHUP シグナルを発信するため。プロセス(mysqld)は SIGHUP シグナルを受けて終了する。
対策†
次のようにしてプロセスを実行すると、プロセスはSIGHUPシグナルを無視する。
$ nohup mysqld [options] &
バックグラウンド処理は nohup の機能ではない†
なにかの都合で fg(フォアグラウンド) したときは bg(バックグラウンド) することを忘れずに。
$ fg (Ctrl + z) $ bg