このページではLinuxApache/httpdPHP及びMySQLを用いたLAMPシステムの運用で必要なMySQLの起動や終了方法について解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
CMS/LAMPシステムの構築

CMS/LAMPシステムとは

ApacheとPHPの設定

MySQLの導入と基本設定

MySQLのコントロール

HTTPSのためのルーター設定

phpMyAdminのインストール

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

XOOPS Cubeのインストール

WordPressのインストール

MovableType3のインストール

MovableType4のインストール

MovableType5のインストール

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.2x" 、 CentOS5の "5.0.77" の起動、停止は、予め準備されている シェル スクリプト "/etc/init.d/mysqld" を利用して行います。

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

正確なスクリプトの場所は "/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 ~]$ su -Enter
パスワード: "root"のパスワードを入力します。 Enter
[root@web1 ~]# /etc/init.d/mysqld startEnter
MySQLを起動中:                       [ OK ]
[root@web1 ~]# /etc/init.d/mysqld stopEnter
MySQLを停止中:                       [ OK ]
[root@web1 ~]#

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

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

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

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

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

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

[root@web1 ~]# /etc/init.d/mysqld statusEnter
mysqld (pid 3736) を実行中...
[root@web1 ~]# ps ax | grep mysqldEnter パイプ処理の説明 grepコマンドの説明
3686 pts/0  S   0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --user=mysql
3736 pts/0  Sl   0:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --socket=/var/lib/mysql/mysql.sock
 ↑mysqldが実行中であることを示します。
3781 pts/0  S+   0:00 grep mysqld
 ↑このgrepコマンドのプロセスです。
[root@web1 ~]# /etc/init.d/mysqld stopEnter
MySQLを停止中:                       [ OK ]
[root@web1 ~]# /etc/init.d/mysqld statusEnter
mysqldは停止しています
[root@web1 ~]# ps ax | grep mysqldEnter
3851 pts/0  S+   0:00 grep mysqld
[root@web1 ~]#

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

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System