IT業界の用語って似たようなのとかアルファベットの頭文字とか多くて覚えにくいです。
データベースとデータベース管理システムって別物?
データベースサーバーって何?
1つのデータベースを構築するとはどういうことをさすのか?
などについて説明します。
データベースの構造を画像で説明
データベースの前に、もっと広い視点でWEBの通信についてです。
以前にもこの画像でWEBについて説明しました。
実は上の画像の「サーバーサイドの処理」と「DB」は別のサーバーに搭載されています。
物理的に別のコンピューター上で動いているということです。
つまり、本当は下の図のようになります。
もちろん1つのサーバー上で動く場合もありますが、その場合でも分かれてると思ったほうが色々分かりやすいです。
そして本題に入りますが、このDBサーバーについてもう少し詳しく解説します。
DBサーバーの中身をのぞくと下の図のようなイメージになっています。
一般的に「データベース」や「DB」と呼んでいるのもは、青い円柱のものをいいます。
その中にテーブルを作成し、データを管理します。
次からもう少し詳しく解説します。
データベースとは
データベースは上の画像で言うと青い円柱の部分です。
データベースとは「リレーショナルデータベース(RDB)とは」の記事でも説明しましたが、簡単に言えばデータを管理するためのものです。
一般的にはRDBというテーブルの関連を用いて管理するものを使います。
データベースは1つのシステム毎に作成される場合が多いです。
例えば1つのドメイン内に「自動見積をするシステム」や「メルマガを配信するシステム」「ユーザーを管理するシステム」などが入っているとします。
その場合は1つのドメインに3つのシステムが乗っており、DBも3つ作成されます。
ただ、それぞれのシステムが連携するなら1つのデータベースにまとめます。その場合はテーブル名が重複しないように気をつけましょう。
上の図でDBはたくさんありますが、それはシステムの数だけDBを作成しているということです。
逆にテーブル名だけ重複しなければ1つのDBで複数ドメイン複数システムを管理することも出来ます。それはあまりやりませんが。
データベース管理システムとは
データベース管理システム(DBMS)はデータベースの機能を提供するアプリケーションです。
Windowsで画像を編集するアプリケーションをインストールすると画像の編集が出来るようになりますね。
それと同じでDBMSはデータの管理が出来る機能を提供しています。
Xサーバーやさくらサーバーなどレンタルサーバーの多くにはMySQLというDBMSが搭載されています。
MySQLは一般的な関連モデルなのでテーブルを作成し、データの操作にはSQLを使います。
データベースサーバーとは
データベースを構築することを目的に設置されたサーバーのことです。
サーバー自体はパソコンのようなものですが、メモリやCPU、OSなどがサーバー専用のものを使います。(違いは分かりません)
データベースサーバーはパソコンのようなサーバー自体のことを指す場合もありますが、DBMSのことを指す場合もあります。
そこらへんは話のニュアンスで判断するしかないです。
ただ、どちらにせよあまり話がかみ合わなくなることはないです。
初心者はまず何を作ればいい?
DBサーバーを用意したりDBMSをインストールするのは初心者には難しいものがあります。
このブログはWEBプログラマーになるためのブログで、上記の作業はインフラの担当になるため実作業では行わないことがほとんどです。
では初心者はどこからの作業になるのか?
Xサーバーやさくらなどレンタルサーバーを使う場合、既にWEBサーバーやDBサーバーは用意されています。
なのでDBを作ることろからの作業になります。
お客さんのサイトを作成する場合にはサーバーの接続情報を得ることになります。もし個人で仕事を受ける場合には秘密保持契約書を作成し、お客さんの個人情報は漏らしませんと約束した方が親切です。
レンタルサーバーの場合DBの作成はサーバー管理画面から行えます。
XAMPPなどテスト環境で構築するならphpMyAdminというMySQLのDBへアクセスできるページがありますのでそちらから作成できます。
DBを作成したら次はテーブルの作成になります。
こちらはWEBサイトの仕様に大きく関わってくるので仕様に合わせて作成してください。
後はSQLを駆使してWEBアプリケーションからデータを登録したり更新したり取得したりします。
まとめ
DBは一般的にはRDBというテーブルでデータを管理するものを使います。
データはテーブルで表のように管理される。
テーブルはDBという単位で管理され、1つのDBの中に複数作成することが出来ます。
DBはシステムやドメイン毎に作成されるのが一般的で、レンタルサーバーだとあなたが契約したDBMS上に作成します。
DBMSはデータをテーブルで管理したりSQLを実行したりなどの機能を提供するシステム(アプリケーション)。
DBサーバーはDBMSを搭載したサーバーのこと。
コメントを残す