MySQL

あるサイトで使っているDBのメンテナンスをしたいと考えています。DBがなぜかlatin1のcharsetで運用されてしまっているので、UTF8にしたいのですが、なかなか難しいようです。とりあえず、なぜか–default-character-set=latin1を指定してダンプをとる必要があります。

$ mysqldump -u root –default-character-set=latin1 -c -n db > db_latin.sql

これを、nkfなどで変換。データはEUC-JP(ujis)なので、下記コマンドで変換できます。

$ nkf -wE db_latin.sql > db_w.sql
$ sed ‘s/CHARSET=utf8/CHARSET=utf8/g’ db_w.sql > db_utf8.sql

SQLの最初の方でset name latin1となっているので、そこもutf8と直します。そのあと、リストアをすればいいのですが、先にdb_utf8を用意しておきます。

$ mysql -u root db_utf8 -p
mysql> create database db_utf8 default character set utf8;

あとは、リストア。
$ mysql -u root db_utf8 < db_utf8.sql ところが、「Got a packet bigger than 'max_allowed_packet' bytes」エラーが発生。パケットサイズが大きいという事なので、オプションで --max_allowed_packet を使えばいいらしいのですが、うまくいきませんでした。 $ mysql --max_allowed_packet=128M -u root db_utf8 < db_utf8.sql my.cnfの設定を変更して対応という手もあるようですが、こちらは試してみていません。 [mysqld] (略) max_allowed_packet=128M

Adobe Reader

つい最近までAcrobat Readerだとばっかりおもっていたのですが、いつのまにやらAdobe Readerという名前に変わっていました。なんとびっくり。

JavaDB

JDK6u2のLinux版のセルフ解凍版ではJavaDBが同梱されていないようです。ということで、JavaDBを使いたいときは、下記から取得するということになるようです。ちなみに、RPM版は/opt/sun/javadb にインストールされます。

Java DB from Sun Microsystems
http://developers.sun.com/javadb/

JDK6u2にバンドルされているのは10.2ですが、JavaDBの最新版は10.3なので、注意が必要です。Apache Derby をそのまま持ってきてもいいような気もします。どちらを使うのかは好みということで。


$ DERBY_HOME=/opt/sun/javadb /opt/sun/javadb/bin/ij
ij バージョン 10.2
ij>

Kani

slashdot.jp で話題となっていますが、「スラッシュドット ジャパン | 前田製作所の「かにクレーン」がトミカに登場」ということで、欲しいなぁと思う今日この頃です。地元の新聞記事には写真がついています。信濃毎日新聞[信毎web] 「かにクレーン」ミニカーに 前田製作所の産業用機械

あ、もちろん、ミニカーが欲しいのであって、カニクレーンそのものが欲しいわけではありません。あしからず。

カテゴリー: etc