DB準備
まずはMySQLにrootでログイン。
c:\>mysql.exe -u root -p Enter password: *******
DB作成。
mysql> create database ff default character set utf8;
データベース名はFramework Fightを略してff。ん〜安易だ(笑)
次はユーザ作成
mysql> grant all on ff.* to db_user identified by 'db_pass';
これは後で出てくる(ハズ)のCakePHPのDB設定ファイルdatabese.phpに書きます。
一旦ログアウト後、今作成したdb_userでログイン。
c:\>mysql.exe -u db_user -p Enter password: *******
使用するDBを指定。
mysql> use ff;
PHP Framework Fight! DBについて - 肉とビールとパンケーキ by @sotarokに書いてあるSQLを流す。
CREATE TABLE `users` ( `id` int(10) unsigned NOT NULL auto_increment, `user_name` varchar(100) collate utf8_unicode_ci NOT NULL, `email` varchar(255) collate utf8_unicode_ci NOT NULL, `password` varchar(64) collate utf8_unicode_ci NOT NULL, `image` varchar(255) collate utf8_unicode_ci default NULL, `private_flag` tinyint(4) NOT NULL default '0', `created_at` datetime NOT NULL, `updated_at` datetime NOT NULL, `delete_flag` tinyint(4) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; CREATE TABLE `followers` ( `id` int(10) unsigned NOT NULL auto_increment, // 追加 `user_id` int(11) unsigned NOT NULL, `follow_id` int(11) unsigned NOT NULL, `created_at` datetime NOT NULL, PRIMARY KEY (`id`), // 修正 UNIQUE INDEX followers_fkindex1(`user_id`,`follow_id`), // 修正 CONSTRAINT FOREIGN KEY (`follow_id`) REFERENCES `users` (`id`), CONSTRAINT FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; CREATE TABLE `statuses` ( `id` int(10) unsigned NOT NULL auto_increment, `user_id` int(10) unsigned NOT NULL, `reply_user_id` int(10) unsigned default NULL, `comment` varchar(255) collate utf8_unicode_ci NOT NULL, `created_at` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
そのまま使ってエラーは出ませんでした^^
followersテーブルにidカラムがないので追加して、プライマリーキーをidに変更、ユニークインデックスを追加しました。
さて、これでDB側の準備は終了(だと思います)