9月 17
mysqlcheck -o DB名
これだけです。ドキュメントを読む限り、内部的にcheck table、repair table、analyze table、optimize tableを呼んでいるようです。
「対象はmyisamだけ」みたいなこともどこかで読んだのですが、公式ドキュメントにはそういう記述はなし。4.xの話なのでしょうか。あ、ハセテツは5.0を利用してます。
必要なのはanalyze table、optimize tableだけで、これらはinnodbにも対応しているから特に問題はないでしょう。
6月 17
mysql> load data infile ‘ファイル名フルパス’ into table インポート先テーブル名 fields terminated by ‘\t’;
もちろん、ファイルはMySQLが触れる場所にないといけない。terminated(区切り文字)はカンマでもタブでも、任意で。文字コードに注意。
5月 05
select adddate(now(), interval- 3 month);
これで、3ヶ月前の日付が得られる。引数は前から
「基準日、差分、単位」
となっている。
year,day,hour等も利用可能。
5月 05
ずっとMS SQLSERVERかPostgreSQLをメインに使ってたんだけど、最近MySQLに触れることがどんどん増えてきました。まぁ覚えておいて損はないので備忘録に追加。
grant all on DB名.* to ‘ユーザ名’@'%’ identified by ‘パスワード’;
flush privileges;
allは全部できまっせ、という意味。DB名のあとのアスタリスクはワイルドカード。すべてのテーブルに対して、という意味。ユーザ名のあとの「%」はどっからでも、という意味。これを「localhost」としておけば、localhostからの接続しか許可しないようになる。まぁMySQLよりも先にLinuxのFWがあるが。
「flush privileges;」は設定情報を反映させるコマンド。ついついコレを忘れてしまう。