インターネット&PC120%活用:PC活用編

mySQLのインストール

データベース構築の入門として、一番手軽そうなmySQLに取り組んでみましょう。

1 mySQLの入手
(1) mySQLの入手
mySQLは、以下のサイトからダウンロードできます。
http://www.mysql.com/

Windows版としては、以下のような名前のファイルがありますので最新版をGETしましょう。
mysql-3.23.35-gamma-win.zip   バイナリーファイルです。
mysql-3.23.25-gamma-win-src.zip   ソースファイルです。

mySQLのバージョン番号の後ろに、gamma と付いているのが正式リリース版で、何もついて
いないのが「安定リリース版」です。
一番新しいgammaをダウンロードすればいいと思います。
ちなみに、alphaは開発途中、 betaはバグ修正中のバージョンということになります。

また、mySQLの入門書の付録のCDにもたいがいmySQLが収録されていますので、
それを利用するのもいいでしょう。

(2) myODBCの入手
mySQLにもmyODBCという名前で、ODBCドライバーが用意されています。
他のアプリケーションからデータベースに接続するのなら(これが普通だと思いますが)、
myODBCもダウンロードしておきましょう。
http://www.mysql.com/downloads/api-myodbc.html
Windows用のものは、95/98/Me用と、NT/2000用に分かれていると思いますので、
必要な方をGETして下さい。


2 mySQLのインストール
(1) インストール
Zipファイルを解凍して、setup.exeを実行して下さい。
おじさんの場合は特に、何の問題もなくインストール完了しました。

インストール途中で、Destination Folder(インストール先フォルダー)を聞かれますが、
デフォルト(c:\mysql )でいいでしょう。
また、Setup TypeはTypicalを選択しておけばいいでしょう。

インストールが完了するとmysqlフォルダーの下に以下のようなフォルダーができているはずです。
mysql
  -bench
  -bin      mySQLサーバーや各種コマンドファイルがあります。
  -data      データベースフォルダ。データベースを作ると、ここにサブフォルダができます。
       -mysql  mySQLのユーザー認証用のデータベース (消去してはいけない)
       -test   実験用のデータベース
  -Docs
  -example
  -include    開発用ヘッダファイル
  -lib       開発用ライブラリー
  -scripts
  -share     エラーメッセージなどmySQLサーバーが使うファイル

(2) コマンドファイル
上述のbinディレクトリにある、コマンドファイルです。これから使うことになりますので覚えて
おきましょう。

mysqld-nt.exe Windows NT/2000用のmySQLサーバー
mysqld.exe Windows95/98/Me用のmySQLサーバー
mysql.exe mysqlコマンド。このコマンドファイルを起動して、テーブルの作成、データの追加、修正
などの作業を行います。
mysqladmin.exe コマンドライン版の管理コマンドファイル。新規データベースの作成、MySQLサーバー
の停止などを行います。
winmysqladmin.exe 上記のGUI版です
myisamchk.exe テーブル検査プログラム
mysqlimport.exe load data infile のコマンドライン版

3 簡単なデータベース構築
細かいことは、後でおいおい勉強するとしてまず簡単なデータベースを作るところまでの
一連の操作をみてみましょう。

(1) MySQLサーバーの起動
まずは、MySQLサーバーの起動です。DOS窓等でコマンドラインで起動する場合は
以下のようにします。(以下の例はWindows 95/98/Meの場合です。NT/2000では、
mysqld-nt.exeを使います。)
--default-character-set=sjis というオプションは文字コードとしてシフトJISを使用するための
ものです。何もオプションを記述せずに起動すると、latin1の文字コードが選択されるようです。

C:\mysql\bin>mysqld --default-character-set=sjis

C:\mysql\bin>

winmysqladmin.exeをダブルクリックして起動することもできます。

(2) 新規データベース作成
新規データベースの作成はmysqladmin コマンドを使い、以下のように記述します。
mysqladmin create 新規データベース名
以下は、testというデータベースを新規作成した例です。(MySQLのインストールで「test」という
実験用データベースは、デフォルトで作成されていますので、あらためて作る必要はありません)

C:\mysql\bin>mysqladmin create test

新規データベースを作成すると、\mysql\data フォルダの下に新規データベース名のフォルダが
できます。

(3) データベース構築
では、簡単なデータデースを作ってみましょう。
直接SQL文を打ち込んでデータベースを構築するには、mysqlコマンドを使います。
mysql データベース
で、データベースに接続して、そのデータベースの構築が可能になります。
test というデータベース(先ほど作成しました)に接続して、データベースを構築する場合は、
mysql test
と記述して、mysqlコマンドを起動します。
起動すると、
mysql>
と表示されてSQL文の入力待ちになります。

C:\mysql\bin>mysql test
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 3.23.36-debug

Type 'help;' or '\h' for help. Type '\c' to clear the buffer

mysql>

SQL文は ; を最後につけます。
SQL文が長くて、1行に記述しきれない場合は、「Enter」キーで改行しながら、複数行の入力が
可能です。
「Enter」キーを押して改行すると、継続中であることを示す -> が表示されますので、続けて
SQL文を記述します。

まずは、新規にテーブルを作成します。テーブルはデータベースの枠組です(Excelのセルのような
ものととりあえず考えてください)。
create table テーブル名   
で新規のテーブルを作成します。
以下では、test というデータベースに programing というテーブルを新規作成しています。
( )内には、フィールド名と、そのフィールドの型を記述します。
以下では、articleというフィールドは int(3) 整数3ケタの型にし、  languageというフィールドは
char(15) 15文字の文字型にしました。

mysql> Create table programing (
   -> article int(3) unsigned zerofill default '000' not null,
   -> language char(15) default '' not null,
   -> primary key(article));
Query OK, 0 rows affected (0.27 sec)

mysql>

show tables文、 show fields文により、データベース内にあるテーブルの一覧と、テーブルの構造を
表示することができます。
どんなテーブルができたか確認して見ましょう。

mysql> show tables;
        +----------------+
        | Tables_in_test |
        +----------------+
        | programing   |
        +----------------+
2 rows in set (0.11 sec)

mysql> show fields from programing;
        +----------+--------------------------+------+-----+---------+-------+
        | Field  | Type                     | Null | Key | Default | Extra |
        +----------+--------------------------+------+-----+---------+-------+
        | article  | int(3) unsigned zerofill |    | PRI | 000   |       |
        | language | char(15)                 |      |   |     |       |
        +----------+--------------------------+------+-----+---------+-------+
2 rows in set (0.11 sec)

では、実際にデータの入力をしてみます。
データの挿入はinsert文を使います。

mysql> insert into programing values
   -> (1,'APL'),(2,'BASIC'),(3,'C'),(4,'DELFI'),(5,'FORTRAN'),(6,'COBOL');
Query OK, 6 rows affected (0.11 sec)
Records: 6 Duplicates: 0 Warnings: 0

これで、データが入力されましたので、今度はデータの検索をしてみましょう。
データの検索には select文を使います。
programing に以下のようなデータが入力されているのが確認できますね。
最後に終了する場合は、\q を入力します。

mysql> select * from programing;
        +---------+----------+
        | article | language |
        +---------+----------+
        | 001   | APL    |
        | 002   | BASIC  |
        | 003   | C    |
        | 004   | DELFI   |
        | 005   | FORTRAN  |
        | 006   | COBOL   |
        +---------+----------+
6 rows in set (0.11 sec)

mysql> \q
Bye

c:\mysql\bin>

各SQL文の詳細は別の機会に勉強してください。
これでとりあえず、簡単なデータベースの構築完了です

TopPage


inserted by FC2 system