MySQLとは何か?について初心者の方向けの説明をしています。またWeb制作とシステム開発で学び方が異なりますので、MySQLの学習の経路を紹介しています。
この記事の目次です。
1. MySQLとは
2. MySQLで何ができるか
3. 初心者から上級者へ向けてのMySQLの学習方法
4. 最後に
MySQLは、リレーショナルデータベースを管理するシステム(RDBMS)の1つです。 世界的に広く普及していて、各レンタルサーバ、AWSなどあらかじめ用意されていたり、企業内の多くのシステムで利用されています。
MySQLの読み方は「まいえすきゅーえる」です。
MySQLで何ができるのでしょうか。MySQLでできることを挙げてみます。
他のRDBMSと同様の機能が利用できます。
MySQLはオープンソースですので、ライセンス費用が削減できます。
導入事例を見てもわかるように、名立たる企業で利用するような大きなシステムに導入されています。
導入事例)https://www.mysql.com/jp/why-mysql/case-studies/
個人で公開するような小さなホームページでも利用されています。
WordPressで使用するデータベースはMySQLですので、WordPressが利用できます。
MySQLの初心者の方で、システム開発者ではない方など、上記説明でぴんと来ない方もいると思いますので用語と関連知識についての補足です。
Excelの表にデータを記入して保存し、必要に応じて集計しますがこれもデータベースです。 データベースとは?略してDB。DBとは?データベースとは何かをまとめています。
データベースはあくまでもデータの入れ物にすぎません。データベースに対してデータを出し入れする役割を果たすソフトウェアのセットがデータベース管理システムです。
データベース管理システムはデータベースを操作/管理するための「汎用的な」手段を提供するソフトです。それだけでは、ユーザが使用するWebサイトやシステムができません。 PHPやJavaなどのプログラミング言語を使用して連携するアプリケーションを作成する必要があります。
Webサイトの作成を主目的につくられたプログラミング言語です。ほとんどのレンタルサーバで利用できます。
WindowsやMac、Linuxなど異なるプラットフォームで同じプログラムコードが利用できるプログラミング言語です。 使用するにはJRE(Java実行環境)というソフトをインストールする必要があります。レンタルサーバでは利用できません。
最終的にMySQLマスターの完成系は同じですが、Web制作系の方とシステム開発系の方で、初心者からの実務知識獲得へ向けた導入知識が異なるので注意が必要です。
Web制作系の方が触れるMySQLは、レンタルサーバが用意したMySQLがほとんどと思います。 インストール方法などMySQLの構築から行う必要はなく、予め用意されたMySQLをレンタルサーバの多くで利用できるPHPのプログラムで操作することが多いと思います。 (WordPressなど接続先だけ設定する場合もありますが。)
ですので、以下のように進めるのがよいと思います。
システム開発者の方は、まずは事務PCでテストが行えるように進めていくのがいいと思います。 そのためには、Windows版のMySQLをインストールから始める必要があります。
ですので、以下のように進めるのがよいと思います。
初心者の方向けのガイダンスとして、最後に覚えておきたいことです。MySQLは、データ量が増えてくると遅いです。
ずいぶん前に、Webをクロールして、MySQLに数千万件Webページの情報を蓄えるシステムを作ってみたことがあるのですが(Googleにあこがれて趣味で)、 10万件を超えるテーブルが出てくると体感でわかるくらいデータの取り出しが遅くなりました。100万件を超えると30秒とか使い物にならないくらいです。
乾いたぞうきんを絞るように、いろいろチューニングしたり、MySQLのサーバーを増やしたりして2倍程度まで高速化しましたが、30秒が15秒とかその程度で根本解決になりませんでした。
あれこれ情報収集して、Redisが有力であることを知りました。 驚くべきことに、Redisを知って、勉強しつつたった1週間くらいで複数サーバで30秒かかっていた一連の検索処理が1サーバのRedisで0.1秒と体感ではわからないくらいの速度になりました。 しかもRedisは、さらにパイプライン化という機能の使用など、そこから数倍の高速化ができました。数千万件でも体感で感じないです。
「MySQLとは」の補足で、「データベースには種類がある。」と書きました。 データベースにはMySQLのようなRDB以外に種類があることを忘れずに。RDBに困ったら別のデータベースを試した方がいいです。 特にお勧めは、NoSQLのインメモリKVS(キ―バリューストア)のRedis(レディース)。Redisがお勧めです!
もちろんRedisは、シングルプロセスとか楽観的なトランザクションなど懸念点はありますが、 言いたいのは、データベースはシステムに合わせて選択の余地がたくさんあるということです。データベースは要件に合わせて選択すべきという点です。
もっと知識を広げるための参考です。
データベースのモデル、データベースの制御について説明していきます。
このページは、MySQL関連の技術情報を掲載しています。
この記事の更新履歴です。
スポンサーリンク
サイト内のページ
言語
C・C++
/HTML
/Java
/JavaScript
/PHP
/シェルスクリプト
開発環境
Ant
/Burp
/Eclipse
/Fiddler
/gcc
/gdb
/Git
/g++
/JDK
/JMeter
/JUnit
/Teraterm
/ZAP
技術・仕様
Ajax
/CORBA
/Jakarta EE(旧称J2EE、Java EE)
/JNI
ライブラリ/Framework/CMS
bootstrap
/jQuery
/FuelPHP
/Lucene
/MyBatis
/Seasar2
/Spring
/Struts
/WordPress
Web API
Google Maps
ITインフラOSとミドルウェア
Linux
/Windows
/シェル
ActiveMQ
/Tomcat
/MariaDB
/MySQL
/Nagios
/Redis
/Solr
ITインフラセキュリティ
公開サーバーのセキュリティ
SI
ホームページの作り方
スポンサーリンク
関連サイト内検索ツール
zealseedsおよび関連サイト内のページが検索できます。
IPアドレス確認ツール
あなたのグローバルIPアドレスは以下です。
18.221.167.11
HTMLの表示色確認ツール
パスワード生成ツール
文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。
ここに生成されます。
スポンサーリンク
Copyright (C) 2007-2024 zealseeds. All Rights Reserved. Loarding…