■月末日を求める
※MySQL4.0以前
SELECT DATE_SUB(CONCAT(PERIOD_ADD(DATE_FORMAT('2006-12-15', '%Y%m'), 1), '01'), INTERVAL '1' DAY) FROM dual;
※MySQL4.1.1以降
SELECT LAST_DAY('2006-12-15') FROM dual;
■月末日を求める
※MySQL4.0以前
SELECT DATE_SUB(CONCAT(PERIOD_ADD(DATE_FORMAT('2006-12-15', '%Y%m'), 1), '01'), INTERVAL '1' DAY) FROM dual;
※MySQL4.1.1以降
SELECT LAST_DAY('2006-12-15') FROM dual;
■データベースローカル接続
/usr/local/mysql/bin/mysql -D db_name -u hoge -p
■リモート接続
/usr/local/mysql/bin/mysql -D db_name -h hostname -u hoge -p
■データベース変更
USE db_name;
■キャラクタセット変更
SET NAMES sjis;
■ユーザ確認
SELCET user, password, host FROM mysql.user;
■ユーザ追加
GRANT ALL ON db_name.* TO hoge@localhost IDENTIFIED BY '*****'; GRANT ALL ON db_name.* TO hoge@'192.168.0.%' IDENTIFIED BY '*****'; GRANT ALL ON db_name.* TO hoge@'192.168.0.6' IDENTIFIED BY '*****';
■権限追加
GRANT ALL ON db_name.* TO hoge@'192.168.0.%' IDENTIFIED BY '*****';
■ユーザ削除
REVOKE ALL ON hoge.* FROM db_name@hostname; DELETE FROM mysql.user WHERE USER LIKE 'hoge' AND HOST LIKE 'localhost';
REVOKE ALL ON hoge.* FROM db_name@hostname; DELETE FROM mysql.user WHERE USER LIKE 'hoge' AND HOST LIKE 'hostname';
REVOKE ALL ON mt.* FROM mt@192.168.0.6; DELETE FROM mysql.user WHERE USER LIKE 'hoge' AND HOST LIKE '192.168.0.6';
■リフレッシュ
FLUSH PRIVILEGES;
■データベース作成
CREATE DATABASE db_name CHARACTER SET utf8; CREATE DATABASE db_name CHARACTER SET sjis; CREATE DATABASE db_name CHARACTER SET ujis;
■データベース削除
DROP DATABASE db_name;
■データベース情報表示
SHOW CREATE DATABASE db_name;
■データベース一覧
SHOW DATABASES;
■現在接続中データベース表示
SHOW PROCESSLIST;
毎回、Apache と php と MySQLをインストールすると必ずハマる。
今回は、下記構成
Windows XP
Apache2.2
php5.2
MySQL5.0
Apacheについて
一言、Apacheのインストールは問題ない。
phpについて
バイナリWindows用のphp5.2は、msiインストールで行うと、設定ファイルが最低限の構成となってる為、zipファイルのphpをダウンロードして解凍して私用したほうが良い。必要なライブラリも揃っている。
インストーラで行うと、http.conf に下記記述を追加してくれる。
http.conf
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL PHPIniDir "C:/usr/local/php5.2/" LoadModule php5_module "C:/usr/local/php5.2/php5apache2_2.dll" #END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
但し、具体的なパスは自分で確かめて記述すること。
extension_dir を指定して、コメントアウトを外す
php.ini
extension_dir = "./ext" extension=php_mysql.dll extension=php_mysqli.dll
それでもダメな場合は、コマンドラインから php -v を打てば何かのエラーが表示される。
自分は、これで解明できた。
MySQLについて
phpinfo()で、一覧に出てこないのでハマった。
おそらく、上記php.ini に正しく記述すれば問題ないはず。