MySQLで存在しないユーザを削除しようとしてもエラーを出さない方法
データベースやテーブルを削除するSQLは、
DROP DATABASE IF EXISTS database;
と言う構文を使うことができる。
こうしておけば、もしデータベースdatabaseが
存在していなかったとしても、エラーになることはない。
しかし、ユーザーを削除するときに同様のことをやろうとして
DROP USER IF EXISTS user;
としても、構文エラーで怒られてしまう。
なぜなら、DROP USER シンタックスには"IF EXISTS"オプション(?)
がないから。
何か良い方法がないかと探していたら、同じこと考えている人を見つけた。
http://stackoverflow.com/questions/598190/mysql-check-if-the-user-exists-and-drop-it
個人的にはGRANT構文の使い方が面白くて好きだけど、やっぱり
DELETE FROM users WHERE user_login = 'foobar'
のほうがスマートかな。。(ヲ
MySQLの場合は
DELETE FROM mysql.user WHERE user = 'foobar'
だけど。
2011/11/29追記:
と、思ったけど、DELETE文で削除したユーザーと同じ名前のユーザーを
もう一度CREATEしようとすると、失敗した。
原因は下記に載っていた。
http://d.hatena.ne.jp/kobapan/20090910/1252552185
やっぱりGRANT USAGE かな(^^;)
5.CakePHPのインストール
今回は1.3系を使用する。
githubからzipファイルを取得する。
# wget --no-check-certificate https://github.com/cakephp/cakephp/zipball/1.3
取得したファイルを解凍して、
# unzip 1.3
作成されたディレクトリを、cake_1_3にリネームしてDocumentRootの下に配置する。
# mv cakephp-cakephp-ff993f8 /var/www/html/cake_1_3
ブラウザから
http://192.168.109.129/cake_1_3
に接続してみると、、
接続成功!
これで、とりあえずの開発環境は整った。
2011/11/29追記:
Apacheのmod_rewriteの設定が有効になっていなかったので、
後日修正した。
修正した箇所は、
AllowOverride None↓
AllowOverride All
4.PHPのインストール
今回、ここに一番苦労した。
以下の記事を参考にPHPをインストールしたが、私の環境では依存関係の影響で
php-mysqlがインストールできなかった。
http://d.hatena.ne.jp/bojovs/20081202/1228219561
そこでまず、
# yum --enablerepo=remi install mysqlclient16
で、mysqlclientを入れる。その後
# yum --enablerepo=utterramblings install php php-common php-mysql php-mbstring php-mcrypt
とすれば、うまくインストールできた。
ApacheからPHPプログラムが動くかどうかの確認をする。
DocumentRootにinfo.phpファイルを作り、中身に
<? phpinfo() ?>
と記述。
ブラウザから
http://192.168.109.129/info.php
に接続してみると、、
バージョンが古いorz
でも、Apacheを再起動してみたら直った。