The Cookbook の CakePHP ブログチュートリアルを実践してみる(1)

CakePHP 1.2 の学習を兼ねて The Cookbook の CakePHP ブログチュートリアルを実際に作成してみます ↓↓↓
http://book.cakephp.org/ja/view/219/CakePHP%E3%83%96%E3%83%AD%E3%82%B0%E3%83%81%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%82%A2%E3%83%AB

[ 10.1.1 Cakeをダウンロード ]

私のブログの CakePHP のインストールを参考にして cake_blog_tutorial という名前で eclipse のプロジェクトを作成します。
また、http://localhost/cake_blog_tutorial でアクセスできるように Apache の Alias の設定と、CakePHP.htaccess の設定をします。

[ 10.1.2 ブログデータベースの作成 ]

cake_blog_tutorial というデータベースを作成し、その中にテーブルを作成することにします。文字コードUTF-8 を使用します。
ターミナルから mysql に root ユーザでログインし、以下のコマンドを入力します。

mysql> CREATE DATABASE cake_blog_tutorial CHARACTER SET utf8;

CREATE TABLE 文 と、複数の INSERT 文を ターミナルから入力するのは手間なので、SQL ファイルを作成し、それを mysql に読み取らせる方法を取ります。テーブルのストレージエンジンは、トランザクション セーフな InnnoDB を。 文字コードUTF-8 を使用します。
以下の create_table.txt を作成します。

/Users/ユーザ名/create_table.txt
CREATE TABLE posts (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(50),
    body TEXT,
    created DATETIME DEFAULT NULL,
    modified DATETIME DEFAULt NULL
) ENGINE InnoDB CHARACTER SET utf8;

INSERT INTO posts(title, body, created, modified )
    VALUES( 'title1', 'body1', now(), now() );

INSERT INTO posts(title, body, created, modified )
    VALUES( 'title2', 'body2', now(), now() );

INSERT INTO posts(title, body, created, modified )
    VALUES( 'title3', 'body3', now(), now() );


ターミナルから mysql に root ユーザでログインし、以下のコマンドを入力します。 source コマンドが mysql に ファイルから SQL 文を読み取らせるためのコマンドです。

mysql> use cake_blog_tutorial
mysql> source /Users/ユーザ名/create_table.txt


次に、データベースにアクセスするためのユーザを作成します。
cake_blog_tutorial データベースの全テーブルに対し、SELECT , INSERT , UPDATE , DELETE を行う事ができるユーザ : cake_blog を作成します( パスワード : 12345 )。
ターミナルから mysql に root ユーザでログインし、以下のコマンドを入力します。

mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON cake_blog_tutorial.* TO 'cake_blog'@'localhost' IDENTIFIED BY '12345';