ExcelとAccessの違いに付いて説明した。

さて、今回もMysqlを勉強しようと思う。
参考にするサイトは大雪が降ったら毎日家を雪かきしてあげたいでおなじみの名無し先生の下記のサイトだ。


MySQL初心者入門講座: ■MySQLの使い方 初級
http://mysqlweb.net/category/3998098-1.html


これからやるMysqlの学習の一連の流れを説明している。
その前に気になる文があったので引用する。

Excelのような表計算ソフトは、インストールしたらすぐに利用できます。しかしMySQLのようなデータベースの場合は、どんなデータを保存するのかという設計が必要です。最初は面倒に感じますが、設計することで蓄積されたデータを効率よく利用できるようになります。


これは結構大事だと思う。
AccessというMicrosoftのデータベースソフトがある。
私は今の職場の同僚にExcelAccessとほとんど一緒でしょと言われたことがある。
そのとき私は「ExcelAccessExcelとWordぐらいに違う。」と答えた。
Excelはあくまで表計算ソフトだ。
表を書いたり計算をするのに適したソフトだ。
たくさんの人がたくさんのデータをいっぺんに処理するのには向かない。
銀行のATMが顧客名や顧客預金残高をExcelで管理しているなんて聞いたことがない。
たくさんの人がたくさんのデータをいっぺんに処理するのに向いているのはデータベースなのだ。
たまにはぼけずにまじめなことを書いてみたりもする。


まああとは今後の勉強の一連の流れなので引用だけでいいかな。

またMySQLではユーザーごとに、データベースに対してどのような操作を許可するのか設定することができます。これを権限付与といいます。

MySQLをインストールした段階では「root」という管理者ユーザーがありますが、rootはすべてのコマンドが使えるため、もしパスワードが漏れたらデータベースを改ざんされたり、削除される危険性もあります。

そこで通常は使えるコマンドを限定したユーザーを作成して、データベースを操作することになります。権限は細かく設定することができますので、セキュリティ面でかなり有効です。


・ユーザーA データベース作成、検索、追加、更新、削除ができる
・ユーザーB 検索だけできる
・ユーザーC 商品テーブルの商品名だけ検索できる

データベースを利用するまでの主な流れは以下のようになります。「MySQLの使い方 初級」ではデータベースを利用するための基本的な操作を、一通り学ぶことができます。

・rootで接続

・データベース作成

・テーブル作成

・ユーザー作成

・ユーザーに権限付与

・ユーザーで接続

・データ追加

・データ更新

・データ削除


まとめ。
ExcelAccessの違いに付いて説明した。

Mysqlの状態を確認してサンプルデータベースを見た。

さて、今回もMysqlを勉強しようと思う。
参考にするサイトは私がTotoBigで6億当たったら半分渡したいでおなじみの名無し先生の下記のサイトだ。


MySQL初心者入門講座: Step5・MySQLの状態を確認する
http://mysqlweb.net/category/3978187-1.html


また私用に下記のメモを作った。


Mysqlの状態を確認。

  • 文字コードは文字化けの原因になるから重要。
  • 方法。
    • サービス起動→接続→statusと入力しEnterキー。
    • Mysqlのステータス表示。
      • バージョンや現在のユーザーや文字コードやポートが表示される。
  • ワンポイント。
    • 文字コードの設定はMysqlをインストールしたフォルダにあるmy.iniを編集する。
    • 初期設定でデータベース文字セットをShift-jis以外にした場合は設定必要。


できた。
簡単だな。


次はお歳暮とお中元に毎年メロンを送ってあげたいでおなじみの名無し先生の下記の記事を参考にする。


MySQL初心者入門講座: Step6・既存のデータベースを見る
http://mysqlweb.net/category/3979479-1.html


また私用に下記のメモを作った。


サンプルデータベースを見る。

  • 方法。
    • サービス起動→接続。
    • show databases;→データベース一覧表示。
    • use mysql;→Mysqlデータベースを選択。
    • show tables;→テーブル一覧表示。
    • describe user;かshow columns from user;→userテーブルの構造表示。
    • select * from user;→userテーブルのデータ表示。


うーん。
今回はあんまり難しくないな。
ドラクエに例えるとまだスライムレベルだな。


まとめ。
Mysqlの状態を確認してサンプルデータベースを見た。

Mysqlの特徴を説明してダウンロードとインストールと初期設定をした。

さて、Mysqlを勉強しようと思う。
参考にするサイトは大仏にしたい人ナンバーワンでおなじみの名無し先生の下記のサイトである。


MySQL初心者入門講座
http://mysqlweb.net/


このサイトを参考にしてこのブログでもMysqlをひと通り説明したい。
パクリではない。
オマージュである。
おばあちゃんが好きなふかふかの白い生地で包まれて中にあんこが入っているあれだ。
誰も突っ込んでくれないと思うので自分で突っ込む。
それはおまんじゅう。


まずMysqlの特徴を名無し先生のサイトから引用する。

MySQLとは?

MySQL(マイエスキューエル)は、世界中で最もよく利用されているオープンソースのデータベースの一つです。高速で使いやすいことが特徴です。

MySQLは非商用利用なら無償で入手して使うことができます。商用利用に関してはライセンスの購入が必要です。(デュアルライセンス)

レンタルサーバーのデータベースとしてもよく使われています。中には数千万件から数億件のレコードを扱っている例もあり、Yahoo、Googleなどの大規模なサイトでも使われているようです。

MySQLはマルチユーザー対応であるため、複数の人が同時に利用するWebアプリケーションのようなシステムに使うデータベースとして適しています。

プログラミング初心者入門講座では、最初に学習するデータベースとして、Microsoft社の Access をおすすめしました。操作性に優れていて初心者が学びやすいデータベースだからです。

しかし Access ではシステムの規模が大きくなると限界があります。AccessSQLの基礎を学んだ次の段階として、MySQLに挑戦してみてはいかがでしょうか。基本的なSQL文は同じです。

初心者にとっては、インストールして利用するまでの設定が面倒ですが、JavaPHPのようなプログラミング言語からも簡単にアクセスできるので、より本格的なシステムが作れるようになります。


うは。
引用コピペめっちゃ楽。


次にMysqlをダウンロードする。
ここでも名無し先生のサイトから引用する。

MySQLをダウンロードして入手する。
データベースMySQLは個人利用に限り無償で入手することができます。商用で利用する場合はライセンスを購入しなければなりませんが、社内だけで利用する場合はライセンス料は要らないようです。個人利用なら迷わず MySQL Community Server版を選択してください。

またバージョンもいくつか選択できますが、最新版ではなく安定している Generally Available (GA) Release のほうをおすすめします。

MySQLは本などに付属しているCDに収録されていることも多いですが、今回は mysql.com からダウンロードする方法を解説します。

以下に掲載している図は、サイトの更新やバージョンアップなどにより変わる可能性がありますが、大まかな手順は変わらないと思いますので参考にしてください。


詳しいダウンロード方法は下記の名無し先生の記事を参考にしていただきたい。
画像をキャプチャーしてブログに掲載してとか面倒くさい。
こうやって人は堕落していく。
反面教師にするように。


MySQL初心者入門講座: Step1・MySQLをダウンロードする
http://mysqlweb.net/category/3963387-1.html


ダウンロードは問題なくできると思う。


次はインストールだ。
インストールも名無し先生のサイトから下記の記事を参考にしていただきたい。


MySQL初心者入門講座: Step2・MySQLをインストールする
http://mysqlweb.net/category/3971191-1.html


インストールは簡単にできると思う。
しかし、初期設定がちょっと大変だ。
これは根性で乗り切ってもらいたい。
人生は根性が大事だ。


私用に初期設定の要点を書いておく。

  • 「Detailed Configuration」を選択。
    • 詳細設定を行うため。
  • 「Developer Machine」を選択。
    • 開発マシンに入れるためメモリ使用量を最小限にする。
  • 「Multifunctional Database」を選択。
  • 「Decision Support(DSS)/OLAP」を選択。
    • 同時接続数が少ないことを想定した設定。
  • ポート設定はデフォルト。
  • 「Manual Selected Default Character Set /Collation」を選択。
    • 文字セットをShift-jisにする。
    • Windows以外のOsはUtf-8にする。
  • 下記の設定をする。
  • パスワードをメモ。
  • 「Execute」ボタンをクリック。
  • エラーが出る場合は下記を実行。
    • コンパネ→ファイアウォール→例外タブ→ポートの追加。
    • 下記を設定。
      • 名前 MySQL
      • ポート番号 3306
      • TCP 選択
    • Retryをクリック。


まとめ。
Mysqlの特徴を説明してダウンロードとインストールと初期設定をした。

Mysql→Php→Javaの順番で勉強する。

Javaの初心者向けサイトを探していたんだがなかなかいいのがない。
はてぶで「Java 初心者」を検索してみると引っかかるのはJavascriptばかり。
いっそJavascriptを勉強してみるかと偉大な名無し先生が作った下記のサイトを見てみた。
サイトに名前が記載されていないので名無し先生と呼ばせていただく。


JavaScript初心者入門講座
http://java-script.seesaa.net/


ちなみに私はこの名無し先生を尊敬している。
奈良の大仏並みの巨大な名無し先生大仏を建立したいぐらいである。
ネットにこのようなプログラミング言語初心者向けサイトをたくさん作っていただくのは神か仏かのどちらかである。


このサイトの左下隅に下記のようにある。

Javascriptの)次に何を学んだらいいの?
・より本格的なプログラミングを学びたい場合は Java初心者入門講座 を次のステップとしてご活用ください。
・Web系のプログラミングを学びたい場合は PHP初心者入門講座 をおすすめします。
PHPJAVAではデータベースにMySQLを使用しているため、 MySQL初心者入門講座 を先に学ぶと習得が楽になります。もちろん必要になった段階でMySQLを学んでもOKです。


名無し先生はプログラミング初心者にJavascriptを勧めている。
Javascriptはブラウザとメモ帳があれば開発できるからである。
あとJavascriptコンパイルがいらない。
つまりまとめると
・プログラミング初心者はJavascript
・本格的なプログラミングを学びたい場合はJava
・Webプログラミングを学びたい場合はPhp
PhpJavaはデータベースにMysqlを利用している。
である。


私はラーメン大学コンピュータ学科を劣悪な成績で卒業しているのでプログラミング初心者とはいえない。
また昨日の日記の今一番人気があるプログラミング言語2011年2月時点でJavascriptについて書いていない。
よってJavascriptは却下。


JavaPhpのどちらを勉強するべきであるかである。
その前にひとつのことに気づく。
PhpJavaはデータベースにMysqlを利用しているらしい。
つまりPhpJavaを使うにはMysqlの知識が必須だということだ。


これは冷静に考えると当たり前である。
PhpJavaはデータを扱う手段でしかない。
料理に例えるとPhpJavaは包丁でデータは食材だ。
食材は冷蔵庫に入れておかないと腐ってお腹があいたたになる。
その冷蔵庫にあたるのがMysqlだ。


よし、まずは下記の名無し先生のサイトでMysqlを勉強する。


MySQL初心者入門講座
http://mysqlweb.net/


次にPhpを勉強してJavaを勉強する。
Javaの前にPhpを勉強するのは下記の名無し先生の2つのサイトを比べたからである。


PHPプログラミング初心者入門講座
http://php5.seesaa.net/

Java初心者入門講座
http://sunjava.seesaa.net/


左のメニューを見て欲しい。
断然Phpのほうがメニューが少ない。
私はJavaのメニューの多さに腰を抜かしていた。
最初、小物を倒して経験値を稼いで最後にボスを倒すのはRPG界の鉄則である。


まとめ。
MysqlPhpJavaの順番で勉強する。

Mysqlの起動と終了の方法を学んだ。

さて、今回はMysqlの起動と停止を勉強する。
参考にするサイトはバレンタインデーでチョコを上げたい人ナンバーワンの名無し先生の下記のサイトだ。


MySQL初心者入門講座: Step3・MySQLの起動と停止 その1
http://mysqlweb.net/category/3974306-1.html


以下に私用にメモを書いておく。


Mysql起動方法。

  • サービス起動方法。
    • 初期設定で手動起動にした。
    • デスクトップにコマンドプロンプトのショートカットを作成。
      • 右クリック→プロパティ。
      • 作業フォルダにMysqlをインストールしたフォルダを設定。
      • 実はコマンドプロンプトの作業フォルダはどこでも大丈夫。
      • MysqlのBinフォルダにはPathが通っているので。
      • ここでは一番シンプルな場所にした。
    • コンパネ→管理ツール→サービス→Mysqlを右クリック→開始。
  • 接続方法。


おおお。
無事起動した。
クララがー。
クララが立ったー。


次は終了してみる。


Mysql終了方法。

  • 切断方法。
    • ExitかQuitか\qを入力。
  • サービス終了方法。
    • コンパネ→管理ツール→サービス→Mysqlを右クリック→停止。


おおお。
無事終了した。


なお、サービスの起動は自動化できる。
自動化する方法は
コンパネ→管理ツール→サービス→Mysqlを右クリック
→プロパティ→スタートアップの種類→自動を設定だ。
しかし、それなりにパソコンが重くなるらしい。
それはいかん。
パソコンでいやらしいサイトが見れなくなる。


またサービスはコマンドプロンプトから起動終了できるらしい。
肩をもみもみしたい人ナンバーワンでおなじみの名無し先生の下記のサイトを参考にした。


MySQL初心者入門講座: Step4・MySQLの起動と停止 その2
http://mysqlweb.net/category/3974552-1.html


起動:net start mysql
終了:net stop mysql
サービスが起動しているかどうかの確認は
コンパネ→管理ツール→サービスを確認する。
こっちのほうがコマンドプロンプトで全て操作できるので楽かも。
ものぐさな私にはもってこいである。


まとめ。
Mysqlの起動と終了の方法を学んだ。

MysqlとSqliteを比較した。

Mysqlについて勉強するとTwitterでつぶやいた。
そうしたらトレードクラスタですでにAndroidアプリを開発しているSynchack先生からSqliteを勧められた。
以下にSynchack先生のつぶやきを引用する。

@madtradejp SQLiteって手は?MySQLは環境を整えるのがメンドイす。SQLインジェクションとか考えると言語上で用意された関数経由での実装になろうかと。なので手っ取り早いのはAndroid->SQLiteという組み合わせ =)。ちょーおてがる。


おお。
Sqliteという名前は聞いたことはあるがMysqlとの違いを知らなかった。
Synchack先生、ありがとうございます(フル土下座)。


というわけでMysqlSqliteの違いについてGoogle先生に聞いてみた。
そうしたら下記のサイトを教えてくれた。


SQLiteを使うべき10の理由と5つのデメリット - CPA-LABテクニカル
http://www.cpa-lab.com/tech/046

MySQLか、SQLiteか。それぞれのメリットとデメリット。 | とりあえず9JP?
http://9jp.info/archives/4831


両者ともSqliteをプッシュしている。
Synchack先生を含めると3人がプッシュしている。
3人を魅了するSqliteは素晴らしいに違いない。
80年代のアイドルに例えると松田聖子並に素晴らしいに違いない。


というわけでMysqlの勉強が終わったらSqliteを勉強しようと思う。
勉強する順番はMysqlSqlitePhpJavaである。


まとめ。
MysqlSqliteを比較した。

初心者がJavaを“超高速”で学ぶためのコツ - Javaを“超高速”に学ぶ:ITpro

さて、Javaを勉強しようと思う。
なにせプログラミングについて勉強するのは8年ぶりである。
8年前、10歳だった小4の少女が今は18歳の女性である。
男性とあれしたりあれしたりあれしたりできる年である。
それだけ長い時間が経っている。
初歩的なところから解説すると思うが許していただきたい。


まずは下記の記事から勉強しようと思った。


初心者がJavaを“超高速”で学ぶためのコツ - Javaを“超高速”に学ぶ:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060927/249181/


はてぶがたくさんついていたから。
でも、はてぶコメントでちらほら否定的な意見が目立つ。
これはおかしいとGoogle先生に聞いてみたら下記のサイトで論破されていた。


初心者がJavaを“超高速”で学ぶためのコツ - カレーなる辛口Javaな転職日記
http://d.hatena.ne.jp/JavaBlack/20061007/p1


以外に勉強になる「初心者がJavaを“超高速”で学ぶためのコツ」 - hogehoge @teramako
http://d.hatena.ne.jp/teramako/20061007/p1


おいおい。
ここまで完璧に論破されていたらいくら8年ぶりに勉強する吾輩(猫)でもこの記事はだめだって分かるぜ。
次の教科書的記事を探そうと思う。