##なんで導入?
Webアプリケーションを勉強していて、データベースも基本的な知識はしっかり身につけておきたいと思ったので。
データベースはAccessのアプリ開発、C#でADO.netの小規模アプリを開発した程度の偏った知識もち。
##環境
環境:MacOSX 10.11 ElCapitan
##参考にさせて頂いたもの
DBOnline
##インストール
HomeBrewでインストールするので、最初にHomeBrewをアップデート&アップグレードを行います。
$brew update
$brew upgrade
アップデートが終ったらインストールします。
$brew install mysql
2015/12/8時点ではバージョン5.7.9でした。
##MySQLの概要
MySQLのデータベース階層構造は3階層になっています。
Database(instance) - Schema - Table
ANSIの標準SQLでは4階層モデルが標準ですが、MySQLはデータベース層とスキーマ層が統合がされているため、3階層となります。
##実際に使ってみる
ルートでログイン
$mysql -u root
いつもルートでログインするのは危険なのでユーザーアカウントを作ります。
まずは現在のユーザーを確認。
mysql > select User,Host from mysql.user;
mysql.sys とrootの2ユーザーがあることがわかります。
ユーザーを追加します。
今回はユーザー名:Foo パスワード:barで設定してみました。
mysql> create user 'Foo'@'localhost' identified by 'bar';
一回ログアウトして作成したユーザーでログインします。
mysql> quit;
$mysql -u Foo -p
パスワードを入力し、成功すればログインできます。
実際にテーブルを作るため、まずはトップ階層になるデータベースを作成します。
データベースの追加
mysql> create database foo;
作成したデータベース"foo"を使用します。
mysql> use foo;
これでfooデータベースを使っている状態になります。
barテーブルの追加
ID,Elemの2つのカラムをもつテーブルにします。
IDを主キーに設定します。
mysql> create table bar(
-> ID MEDIUMINT NOT NULL AUTO_INCREMENT,
-> Elem CHAR(20) NOT NULL,
-> PRIMARY KEY (ID)
-> );
作成したテーブルを確認します。
確認方法はいくつかありますが、今回はOracle互換コマンドのdescを使います。
mysql> desc bar;
##あとがき
久しぶりにSQL文を書きましたが、数年使わないとすぐ忘れちゃいますね。
今回のデータベースの勉強し直しで以下の本を読みましたが非常にわかりやすかったので紹介します。
Kindle版なら1000円ちょっと、でこのボリュームはお買い得かな!
このおうちで学べるシリーズは初めて読みましたが、他にも読んでみたいと思いました。
おうちで学べるデータベースのきほん