MySQL †
- いろいろ紆余曲折あって、2011年12月現在、Oracle社が権利を持っているデータベース。
- 無料で使用できるエディションあり。
目次 †
インストール †
- ダウンロードページから、MySQL Community Server 5.5.19(無料)をダウンロードした時の話。
- MySQL Community Serverをクリック。
- プラットフォームを選ぶ。⇒「Microsoft Windows」
- 提供形態を選ぶ。⇒「Windows (x86, 64-bit), MSI Installer」
- ここでログインを要求されるが、無視。⇒「No thanks, just take me to the downloads!」をクリック
- ミラーサイトの一覧が出てくるので近そうなサイトを選択してダウンロード開始。
- ダウンロードしたMSIを実行、インストール。
- あまりこだわりが無かったのでフルオプション、推奨設定で進める。
- Modify Security Settingで、パスワードを設定。Anonymous Accountは作成しなかった。
- コマンドライン型のクライアントソフトも一緒にインストールされているので、管理はそれで行える。
OSの違い †
データベース管理 †
データベース一覧 †
データベース作成 †
データベース削除 †
ユーザ作成 †
- GRANTコマンドで権限とパスワードを同時に設定する。
mysql> GRANT SELECT,INSERT,DELETE,UPDATE,CREATE,DROP,FILE,ALTER,INDEX ON *.* to
sample_user IDENTIFIED BY 'ABC123';
Query OK, 0 rows affected (0.00 sec)
- 変更事項の即時反映
mysql> FLUSH PRIVILEGES;
ユーザ一覧 †
- ユーザ情報もデータとして保存されているのでSELECT文を使って問い合わせる。
mysql> SELECT user, host, password FROM MYSQL.USER;
+-------+-----------+-------------------------------------------+
| user | host | password |
+-------+-----------+-------------------------------------------+
| root | localhost | |
| root | 127.0.0.1 | |
| root | ::1 | |
| admin | localhost | |
+-------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
- パスワードはハッシュ値なので紛失パスワードを知ることは出来ない。
- ハッシュ値なので同じワードを使えば同じハッシュ値になる。
データベースの使用 †
管理ツール †
MySQL Workbench †
- コマンドラインツールでは厳しいものがあるので、MySQL Workbench 5.2.36とやらをインストールしてみた。
- 公式サイトにあるので、MySQL本体と同じ要領でダウンロード&インストールでOK。
- SQL DevelopmentとData ModelingとServer Administationの3つのツールで構成されている。
- SQL Development
- SQLの実行、テーブル作成など
- Data Modeling
- Server Administation
- サーバの稼働状況を確認したり、詳細設定の変更、データのインポート/エクスポートなど
データベース活用 †
トリガ作成 †
- トリガとはテーブルへのレコード追加や削除などを契機にして実行する機能。
- MySQLではバージョン5.02以降で使用できる。
- テーブルAの更新に連動してテーブルBに追加、といった処理が実現できる。
- トリガ作成例
- 登録したトリガを参照したいとき。
mysql> show triggers;
リンク †
- Wikipedia MySQL
- http://ja.wikipedia.org/wiki/MySQL
- 日本MySQLユーザ会
- http://www.mysql.gr.jp/
- 公式
- http://www.mysql.com/
- 公式 ダウンロードページ
- http://www.mysql.com/downloads/
- 公式 エディション比較
- http://www-jp.mysql.com/products/
|