rails + MySQL on Win で "No such file or directory - /tmp/mysql.sock"

前に win で rails したときにも引っかかったのだが、また同じところで引っかかったのでメモ。

Windows で rails + MySQL なときに
<pre class="prettyprint">Errno::ENOENT in Rails/infoController#properties
No such file or directory - /tmp/mysql.sock
</pre>
と言われたら、それは database.xml で host に localhost を指定しているから。127.0.0.1 ならつながる。
<pre class="prettyprint">development:
adapter: mysql
database: inquiry
username: test
password:
host: 127.0.0.1
</pre>

MySQL の NO_AUTO_CREATE_USER

Windows版の MySQL で、GRANT で新ユーザを作成しようとしたら、
<pre class="prettyprint">mysql> grant all on inquiry.* to ‘ODBC’@’localhost’;
ERROR 1133 (42000): Can’t find any matching row in the user table
</pre>
と言われた。

Windows版では、my.ini の sql_mode に NO_AUTO_CREATE_USER が指定されていて、パスワード無しのユーザを作成できない。そんな時は、NO_AUTO_CREATE_USER をはずすか、パスワード付きでユーザを作ればいい。

<dl>
<dt>NO_AUTO_CREATE_USER をはずす</dt>
<dd>
<pre class="prettyprint">mysql> set sql_mode=””;
Query OK, 0 rows affected (0.00 sec)

mysql> grant all on inquiry.* to ‘ODBC’@’localhost’;
Query OK, 0 rows affected (0.00 sec)
</pre>
</dd>

<dt>パスワード付きでユーザを作成する</dt>
<dd>
<pre class="prettyprint">mysql> grant all on inquiry.* to ‘test2’@’localhost’;
ERROR 1133 (42000): Can’t find any matching row in the user table
mysql> grant all on inquiry.* to ‘test2’@’localhost’ identified by ‘test2’;
Query OK, 0 rows affected (0.00 sec)
</pre>
</dd>
</dl>

Google と Yahoo に広告を出してみた

Google と Yahoo に、つまり、AdWordsOverture で検索連動型広告を出してみた。仕事で作っているサイトの広告なのだけど、会社を通すと支払いで手間がかかるので、まずは自腹で。



<p>日本では、Google と Yahoo で検索の 80% を占めるらしい。パソコンというか、ネットに詳しくない人が使うのが Yahoo で、慣れた人が使うのが Google。IT系の人を対象に広告を出すのなら Google だけでよいかもしれない。ウチは一般人向けのビジネスなので Yahoo にも。</p>

<p>どちらも、クレジットカードさえあれば、30分とかからずに広告を出稿できる。初めて Google や Yahoo に自分の出した広告が載るのを見ると、ちょっとした感動を味わえる。当然のことならが、広告は出稿した後が本当の勝負で、よりよいキーワード、よりよいキャッチコピー、入札価格、ウェブサイト自体の改善など、やることが山のようにある。4月の本格オープンに向けて、今から試行錯誤の経験を積んでおきたい。</p>

<p>まずはこれを読んでから。
<ul>
<li>Google AdWords ラーニングセンター</li>
<li>オーバーチュア公式 ラーニングポータル</li>
</ul>
</p>

<p>Google の場合は、なんと Google Advertising Professional Exam というプロメトリックでの資格試験も存在するが、日本のプロメトリックではリストに入っていないので、受けられないようだ。</p>

RRDtool でピーク値が残らない

サーバ監視に nagios を使っている。履歴は nagiosgraph 経由で RRDtool。nagiosgraph の良いところは、何も考えなくても nagios の出力が RRDtool に取り込まれるところ。しかし、ピーク値が残らないという問題を一月以上、放置したままだった。



<p>例えば、過去一日の間の CPU load の最大値が 1.0 だったとする。それが、過去一週間のグラフでは、CPU load の最大値が 0.6 などに丸められていた。これでは、最大瞬間風速が判らない。</p>

<p>ようやく nagiosgraph の insert.pl を調べると、RRA(Round Robin Archive) の consolidation (データ圧縮) が AVERAGE のみであることが判った。前々から、そうではないかと疑っていたのだけれど。</p>

<pre class="prettyprint">
$ds .= “ RRA:AVERAGE:0.5:1:” . $RRA_1min;
$ds .= “ RRA:AVERAGE:0.5:6:” . $RRA_6min;
$ds .= “ RRA:AVERAGE:0.5:24:” . $RRA_24min;
$ds .= “ RRA:AVERAGE:0.5:288:” . $RRA_288min;
</pre>

<p>そこで、MAX と MIN も記録に残すことにした。</p>

<pre class="prettyprint">
$ds .= “ RRA:AVERAGE:0.5:1:” . $RRA_1min;
$ds .= “ RRA:AVERAGE:0.5:6:” . $RRA_6min;
$ds .= “ RRA:AVERAGE:0.5:24:” . $RRA_24min;
$ds .= “ RRA:AVERAGE:0.5:288:” . $RRA_288min;
$ds .= “ RRA:MIN:0.5:1:” . $RRA_1min;
$ds .= “ RRA:MIN:0.5:6:” . $RRA_6min;
$ds .= “ RRA:MIN:0.5:24:” . $RRA_24min;
$ds .= “ RRA:MIN:0.5:288:” . $RRA_288min;
$ds .= “ RRA:MAX:0.5:1:” . $RRA_1min;
$ds .= “ RRA:MAX:0.5:6:” . $RRA_6min;
$ds .= “ RRA:MAX:0.5:24:” . $RRA_24min;
$ds .= “ RRA:MAX:0.5:288:” . $RRA_288min;
</pre>

<p>AVERAGE は傾向把握用、MAX は最大瞬間風速記録用。MIN は…使い道が思いつかないけれど、とりあえず入れておく。RRD(Round Robin Database) を後から作り直すのは困難だから。</p>

<p>ついでに、グラフも nagiosgraph そのままではなくて、自前で作ってみると、楽しい… nagiosgraph でも生きていけるけど、RRDtool のフロントエンドとして、なにかまともなのを用意したい。自前のグラフ作成スクリプトを cron で動かすか、このスクリプトを cgi にするか、RRDtool 付属の cgi を使うか、cacti みたいな便利ツールを入れるか。</p>

<p>以下のページを参考にした。
<ul>
<li>RRDtoolの使い方</li>
</ul>
</p>

JOBA体験

職場が変わって以来、足の遠のいていたジムに、四か月ぶりくらいで行ってきた。するとそこには JOBA が! とりあえず乗っかってみる。説明書きを読みながらスイッチを入れて、やっぱり腹回りだよねってことでウエストのエクササイズを選んで、速度を上げると、、、けっこうキツイ。15分で切れるようになっているけれど、5分経過したあたりで、終了が待ち遠しくなった。最後まで頑張って乗っかっていたけど。



<p>昔の人が急ぎの時に丸一日馬で走り続けるというのがあるけれど、あれって、大変なんだなと実感した。</p>