MYSQLは久しぶり

以前勤めていた会社で Linux 用のデータベース管理システム PostgreSQL を使っていたので、慣れていると思ったのですが、ちょっと自信をなくす事態が。

今勤めている大学では、WordPress で MySQL を使っており、他にも外部に作成を依頼したシステムでフリーのデータベースを利用しているようです。
MySQLなんて、PostgreSQL とあまり変わらないと思っていたので、ちょこちょこ使うにはいいかなと思い、手をだしたところ、はまってしまいまいした。

テーブル名や要素名を日本語にしたのが敗因です。
前の会社で見た、Windows Server に実装した Oracle Database 用の日本語のテーブルがわかりやすくていいな、と思っていたので、日本語を使ってしまいました。
(PostgreSQLを使うときは、テーブル名や要素名を英語にしていました)

次のミスがあり、エラーでまくりです。

(1) /etc/my.cnf に、[mysql]の文字設定記述が抜けていた。
[client]と[mysqld]だけに設定していて、PHP で作ったWeb画面では文字化けしてなかったのですが、コマンドラインからはだめみたいです。

(2) 「’」でくくる必要はなかった
ネットで調べたらテーブル名や要素名に日本語を使った場合は、「’」でくくるといい、という記事を見つけたので、そのとおりにしたらエラーになった。CentOSでやる場合は、不要です。

(3) 要素名を改行で区切っただけではダメで空白が必要
テキストファイルに「,」で区切って、直後に改行を入れたSQLを作ったのですが、「,」と改行だけではだめで、「,」と改行の間に半角の空白が必要でした。

(4) 空白が2バイト文字だったりする
テキストエディタでSQLを作った際、半角の空白と倍角の空白が混じってしまい、倍角の空白でエラーになっていました。もちろん半角の空白にすれば問題ありません。

(5) 予約もつい使ってしまった
日本語がだめで英語で要素名を作った際、予約語をそのまま使ってしまい、そのためエラーになってしまった。安易な命名はやはりダメでしょうね。

これを根気強く直すと、動くようになりました。このエラーメッセージ、解りにくいですね。
違うエディタで確認すればすぐ解ったようなミスもあったので、やり方も見直した方がいいかな。
(試しに、と思ったので vi でさらさらっと書いたのが、結局敗因だったのかも。)

MAC OSサーバーのトラブル再度

今勤めている大学のある学科で使っている MAC OS を使ったサーバーで、また、原因不明の応答不能が発生し、呼ばれました。

今の MAC OS は、BSD系のUNIX カーネルと使っているので、昔のUNIXサーバーと同じように使える?、と思っていてはダメだんでしょうね。かなり独自の機能があるようです。

システムログを見せてもらったのですが、クラッシュログが幾つかありました。

正直言うと、こういうクラッシュログを採取して、ソフトを保守する担当者に送ったことは何度もあるものの、ログを解析したことは無い。あの、メモリーのアドレスが書かれたリストを見ても、何をやっていたのかは解らない、というのが正直なところ。

ハード系の障害なら、そのものずばりがログに出ているので簡単なんですが。ソフト系のトラブルはハードルが高い、という気がしています。それでも、アプリケーションではなくOS付属のデーモンなどがクラッシュしていると、大抵は何をやっていたかはわかるので対策も立てやすい。

今回の MAC OS のサーバーも、クラッシュしたアプリがいくつかありました。
ところが、他人が設定した、ドキュメントもろくにないサーバーを調べるのは、ちょっと無理かもと思わせる現象が。

クラッシュしてたのは、smbd と cloudd の2つ。
smbd は、このサーバーがファイル共有のためのものだと聞いていたので、よく使われるものでしょう。クラッシュログには、キャッシュにアクセスできなくなったとも出ていました。HDDの容量も怪しいかもしれません。
もう1つの cloudd は、????
うわさの iCloud 関係のものかもしれない。(私はこの機能を使ったことがありません)
smbd のクラッシュに巻き込まれていっしょにクラッシュしたのかも。

使われているOSが、10.10.2 ということで、この辺をググルと、いろいろと障害が出てきました。
iCloud を有効にしてて、大きなファイルを扱うとCPUを使い切るほど負荷がかかるとか。メモリーのかなりの部分を使ってしまうとか。

これっぽいな、と思ったので、サーバーを使っている担当者に話だけさせてもらいました。
どうも、サーバーということで複数の人が触れて、OSのパッチとかもなおざりになっているようです。
個人的には、OSのパッチを当てて、iCloud の設定をオフにすれば再発しないと思います。

また、問い合わせがあったら、もう少し助言できるよう、勉強しておきます。

http://photoshopvip.net/file/2010/06/mac_telado_es_post.jpg