このページではLinuxApache/httpdPHP及びMySQLを用いたLAMPシステムの運用で必要なMySQLの起動や終了方法について解説します。
補助ツールのセットアップ
CMS/LAMPシステムの構築

CMS/LAMPシステムとは

ApacheとPHPの設定

MySQLの導入と基本設定

MySQLのコントロール

HTTPSのためのルーター設定

phpMyAdminのインストール

データベースの作成と削除

XOOPS Cubeのインストール

WordPressのインストール

MovableTypeのインストール

osCommerceのインストール

データベースのバックアップ

データベースのリストア

MySQLのコントロールにおける注意点について

MySQL サーバー は、 WBEL CentOS インストール されている他の多くのサーバー デーモン と同じように起動や停止、再起動などを行うことができます。

ただここで注意すべき点があります。

MySQLを利用して CMS を構築し、 公開サーバー を運用する場合、MySQLは単独で動作するのではなく Apache PHP を介して間接的にバックグラウンドでこれらと協調して動作します。

従ってCMSによる コンテンツ の稼働中は、利用者がMySQLの データベース に常にアクセス中であって、データの参照や書き込みを行っていると考えてください。

MySQLに限らず、データベースはデータの書き込み中に接続が切れてしまうことがトラブルの最も大きな原因になるといわれています。

つまりCMSの稼働中にいきなりMySQLの停止や再起動を行うことはできるだけ避け、先にデータベースへのアクセスの窓口であるApacheを停止しておくと安心というわけです。

従ってMySQLを利用してCMSを運用する場合、システムの起動は、

MySQLの起動→Apacheの起動

の順序で行うことが望ましく、システムの停止や再起動は面倒でも、

Apacheの停止→MySQLの停止→MySQLの起動→Apacheの起動

の順序で行うようにしてください httpdのコントロールについて

このページの先頭へ↑

MySQLの起動/停止・再起動・状態の確認

WBEL3 CentOS3 MySQL "3.23.58" とWBEL4及びCentOS4の "4.1.20" の起動、停止は、予め準備されている シェル スクリプト "/etc/init.d/mysqld" を利用して行います。

これらはバージョンこそ違え、どちらもWBELやCentOSの標準添付のものですから基本的な扱いは同じになります(以下はWBEL3の3.23.58の例で説明します)。

正確なスクリプトの場所は "/etc/rc.d/init.d/mysqld" ですが、予めディレクトリ "/etc/rc.d/init.d/" シンボリックリンク "/etc/init.d/" で作成されていますので、 "/etc/init.d/mysqld" でも実行することができます。

このシェルスクリプトが格納されているディレクトリには パス が通っていませんのでパス名付きで実行する必要があります パスが通っていない場所のファイルを実行するには

書式は以下のとおりです。作業はすべてroot アカウント から行います。

/etc/init.d/mysqld start...MySQLデーモンの起動

/etc/init.d/mysqld stop...MySQLデーモンの停止

[tanaka@web1 tanaka]$ su -Enter
Password: "root"のパスワードを入力します。 Enter
[root@web1 root]# /etc/init.d/mysqld startEnter
MySQLを起動中:                       [ OK ]
[root@web1 root]# /etc/init.d/mysqld stopEnter
MySQLを停止中:                       [ OK ]
[root@web1 root]#

"/etc/my.cnf"を書き換えた後にその設定を有効にするには、一度MySQLを停止して起動しなおすか、以下のコマンドを実行します。

/etc/init.d/mysqld restart...MySQLデーモンの再起動

[root@web1 root]# /etc/init.d/mysqld restartEnter
MySQLを停止中:                       [ OK ]
MySQLを起動中:                       [ OK ]
[root@web1 root]#

MySQL3.23.58が現在稼動してるかどうかを確認するには、

/etc/init.d/mysqld status...MySQLデーモンの状態確認

あるいは、 ps コマンドで起動プロセスを確認します。

[root@web1 root]# /etc/init.d/mysqld statusEnter
mysqld (pid 1760) を実行中...
[root@web1 root]# ps ax | grep mysqldEnter パイプ処理の説明 grepコマンドの説明
1731 pts/0  S   0:00 /bin/sh /usr/bin/safe_mysqld --defaults-file=/etc/my.cnf --pid-file=/var/run/mysqld/mysqld.pid
1760 pts/0  S   0:00 /usr/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-locking
 ↑mysqldが実行中であることを示します。
1790 pts/0  S   0:00 grep mysqld
 ↑このgrepコマンドのプロセスです。
[root@web1 root]# /etc/init.d/mysqld stopEnter
MySQLを停止中:                       [ OK ]
[root@web1 root]# /etc/init.d/mysqld statusEnter
mysqldは停止しています
[root@web1 root]# ps ax | grep mysqldEnter
1829 pts/0 R 0:00 grep mysqld
[root@web1 root]#

CMS を利用する場合には、MySQLは可能な限り停止させないことが望ましいので、必要な設定は先にきちんと行い、運用中の再起動などはできるだけ避けるようにしましょう。

このサイトに対するご意見、ご要望、苦情、泣き言、献上品、資金援助などがございましたら こちら からお寄せください(お返事できなかったらごめんなさい)。もちろん リンクフリー です。趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。また、本サイトの更新情報をメールで知らせてほしい方は ここ からご登録ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
Powered by White Box Enterprise Linux