MySQLはWebアプリケーションのバックエンドデータベースとして活用されることが多いリレーショナルデータベースです。実際の開発現場では、シンプルで手軽に利用できるデータベースとして認知されており、LAMP環境と呼ばれる形態で利用されることが多いです。
LAMP環境とはLinux・Apache・MySQL・PHP(またはRuby)の組み合わせのことです。それぞれの頭文字をとって「LAMP環境」と呼ばれています。
以前の記事でも少し触れましたが、LAMP環境はOS・Webサーバー・データベースソフト・プログラミング言語すべてオープンソースソフトウェアなので、コストが抑えられることもあり、非常に人気があります。当サイトはMySQLについて説明していますが、Linux、Apache、PHPについてもどんなものか軽く見ていきます。
Linux
Linuxはいわずれとしてら世界で最も使われているサーバーOSです。ディストリビューションという形態で配布されることが多いです。本来、Linuxはカーネルのみを指すため、そのままでは動作しません。 そのため、ユーザーが手軽にLinuxを利用できるように、OSの動作に必要なライブラリーやソフトウェアなどをまとめた「パッケージ」として配布されています。そのパッケージをディストリビューションと言います。ディストリビューションの種類はとても多く、「Red Hat Enterprise Linux」や「Ubuntu」などが有名です。
Apache
ApacheはWebサーバー用のソフトウェアです。Linux同様、世界で最も使われるWebサーバー用ソフトウェアです。Web上にサイトを公開するためには、必ず「Webサーバー」というものが必要になります。そのWebサーバー機能を提供してくれるソフトウェアが「Apache」です。
PHP
PHPは、サーバーサイドで使用するプログラミング言語です。
サーバーサイドとはサーバー側のことで、PHPで開発したプログラムはサーバー側で動作することになります。サーバーサイドに対して、クライアントサイドで動作するプログラムもあります。HTMLやCSS、JavaScriptなどはクライアントサイドで動作します。
画面デザインや入力チェックなどの簡単な動作はクライアントサイドで行い、データベースやファイルへのアクセスを必要とするような主処理はサーバーサイドで行うという構成が現在の主流です。
PHPでは掲示板やグループウェア、ショッピングカート、チケットなどの予約システムなど様々な開発に使われています。簡単にサイトやブログが作成できるWordPressもPHPで開発され、データベース管理システムにはMySQLを利用しています。
比較的簡単で学びやすいことからプログラミング初心者が初めて学ぶ言語となることも多いようです。
さて、前回の記事では「アプリケーションサーバー」という用語が出てきましたが、今回の記事で出てきたApacheは「Webサーバー」という用語を使っています。アプリケーションサーバーとWebサーバーは何が違うのでしょうか。また、Apacheはアプリケーションサーバーではないのでしょうか。
その点については次の記事で見ていきます。
