データベースが壊れた・・・

以前このホームページは自宅サーバで運用していたが、今は某社のレンタルサーバでwordpressやらpukiwikiを使って運用している。

記事を投稿しようとしたところ、wordpressのカテゴリ一覧にカテゴリが表示されていない。
(レコードの件数は表示されているが、データが表示されていない。)
おや、と思ってホームページを覗いたら一見ちゃんと表示されているような、いないような。
・・カテゴリが表示されていない。

記事単体へのリンクがあるところをクリックするとちゃんとデータは表示されるが、カテゴリへのリンクを埋め込んでいるところをクリックするとエラーになる。

どうやら、DBが壊れたみたい。

 

管理ツールのphpMyAdminで調べていくと、
・テーブルのデータは表示できる
・テーブルの構造を表示しようとすると「#126 – Incorrect key file for table ‘/home/tmp/*******’; try to repair it 」というエラーメッセージがでる
・テーブルによっては「#1030 – Got error 28 from storage engine」というエラーがでる

wordpressの管理画面では、全ての投稿のカテゴリが未分類になっていた。
wordpressの場合、termsというテーブルにカテゴリ名の情報を持っているが、このテーブルのデータは残っているようだった。
また、postsのテーブルもちゃんとカテゴリIDは埋まっているようだった。

phpMyAdminで、テーブルのチェック(CHECK TABLE `xxxx`)と修復(REPAIR TABLE `xxxx`)を試すが、SQLはOKを戻すが 「Incorrect key file for table 」等のエラーは消えずwordpressでもカテゴリは見えない。

・・CHECK TABLEは、DBがMyISAM、InnoDB共に使用できるSQL文ですが、REPAIR TABLE は、DBがMyISAMのときだけのようです。念のため。

 

google先生に聞くと、「Got error 28」等は/home/tmp等の領域不足ででるようなこともあるそうな。
ただ、レンタルコースのお安いコースでは権限が無く見ることができない。

 

ちょっと時間がたったバックアップしかもっていないので、全てバックアップできるか不安だったが、あわよくばという気持ちでバックアップをとってサポートに電話で相談してみた。

案の定、「ハード的に問題は無いので、DBの内容についてはお客様の自己責任で」という回答。

そうですか。

 

一応、「telnetで操作できる範囲なら何やってもいいんですか?」と聞いてみたら「ちがう部署が回答するのでメールで問い合わせて」とのこと。
ウ~ム、普通メールのやりとりでらちがあかないから電話するんじゃ・・と思いつつメールに向かう。

 

で、本日。
まだサポートから回答はないので、ひとまず対処方法を考えてみる。

■DBを作り直したら、本当に動くのか?
試しに新しいテーブルを作成してみたが、テーブルは作成されるものの、「Incorrect key file for table 」のエラーメッセージもおまけについてくる始末。

これじゃぁ、DBの作り直しだけじゃ対応できない。

まぁ、ここらがレンタルサーバのお安いコースの限界と悟る。
商用サイトを運用するなら、もうちょっとサポートの厚いコースか権限のあるvirtualサーバなどのコースが必要ということですかねぇ。

 

じゃぁ、このサイトは閉鎖か?
というものねぇ。

 

で、ふと気が付いた。
このレンタルサーバのコースは昔1つのDBだけした使えなかったが、その後複数のDBが作成できるように変更になっている。しかも、その際の移行の流れだと思うが、DBサーバが2つに分かれたようだ。

このホームページは古いDBサーバにデータをおいているので、新しいDBサーバにDBを作ることにしてみた。

 

DBを作成して、古いDBからエキスポートしたテーブル類を新しいDBにインポート。
DBの接続設定を変更して完了。

ちゃんと、カテゴリも表示されるようになった。データは破損していなかったようだ。

?? そこまでして修復するようなホームページかって ??
まぁ、趣味ですから・・

 

■教訓
・DBと設定ファイル類のバックアップはこまめにとりましょう。
・商用などの止めては困るサイトはちょっとコストがかかってもサポートの厚いコースにしましょう。
・お安いコースでいくなら、2つのコースを契約して、1日分のデータ消失はあきらめるとして日々相手側にバックアップをとって障害に備えるのも手か?
って、ところでしょうか。

結局、Mysqlのエラーの原因は未だ不明。
■本来なら
・MySQLが使用するテンポラリ領域の空きの有無の確認
・MySQLの再起動
等を行って原因調査や確認ってところでしょうが、手が出せないレンタルサーバではここまで。



Nゲージ電機用コントローラ (その3) 主幹制御器-2 (ノッチ板加工)

主幹制御器(MC:マスターコントローラ)の部分を作る上で、一番肝になりそうなのが、主ハンドルをカチッと位置決め出来るように溝が切ってあるノッチの指示板。

EF65の場合、ノッチ指示板には「切」「1」「2」「3」「4」「S(シリース:直列)」「SP(シリース・パラ:直並列)」「P(パラ:並列)」「F1」「F2」「F3」「F4」の12個のノッチが切ってある。
S~SPは自動進段するので、それまでの機関車のものよりノッチ数は少なくなっている。

模型とはいえ、主ハンドルをカチッ、カチッと動かそうとするとどうしてもこのノッチにツメをかます必要がありそうなので、多少は丈夫に作っておく必要がありそう。

ただ、弧を描いているし、多少は厚みを持たせたいので金属は加工に難ある。と、いうことで3mmのアクリル板を1mmのプラ版ではさむことにした。

ノッチ板 素材
アクリル樹脂用の接着剤で、プラ板、アクリル板、プラ板と3段重ねに接着。

モデラ MDX-20
加工は3Dプロッタ「MODELA」のMDX-20。
ノッチ板の大きさは約190mm×70mm。ノッチ部分は4mm×4mm。

試しに、Virtual MODELAでR0.5のボールエンドミルでの切削時間をみたら200時間くらいになっていた。
さすがに話にならないので、5mmのエンドミルで加工。

ひとまず、プラ板部分の1mm分をABSのデフォルトの切削条件のうち、Z方向の切り込みを0.3mmに変更して切削。

加工中のノッチ板
アクリル部はアクリルのデフォルトの切削条件のうち、Z方向の切り込みを0.1mmから0.2mmに変更して時間節約。
今回は比較的切れ味のよいエンドミルを使ったので0.2mmでも問題は無かった。
ただ、切れ味が落ちたエンドミルだと0.2mmが限界っぽい感じ。

加工中のノッチ板
5mmのエンドミルで加工が終わった状態。
ノッチ部分にはエンドミルが入らないため、「ここがノッチ位置ですよ」程度の状態。

ここで、R0.5のボールエンドミルに交換してノッチ部分だけを加工していく。
MODELA Playerだと方形を指定してしか切削パスが作れないので、1つの溝ごとに切削しては、次の条件を設定する繰り返し。

ノッチ板
三十数時間かけてアクリルが溶けることもなく、無事に切削完了。
途中で、左右の端が浮いてきて、表面が一部削れたが、最終的には目立つソリは無かった。

ノッチ指示板の表面にはノッチの番号が刻印されている。
これは、機関車の製造メーカによって違うのか、製造年度によって違うのかはわからないが、刻印文字の大きさが全て同じものと、「切」「S」「SP」「P」が大きくその他が小さいものがあるようだ。

私の場合、大きさを違えるようにしてみた。

ノッチ板 表面
0.2mmのミルで削り始め、しばらくして様子を見に行くと..刃が折れていた。
1万円もする刃なのに(T_T)

0.2mmを折るのは2回目。もう、予備もない。

かなり早い段階で折れていたようで、素材の方はほぼ無傷。
喜んでよいのかどうだか。

ひとまず、文字を大きくするようにしてR0.5のミルで削ることにした。
やはり、ミルが入らないので文字サイズをちょっと大き目にしたのだが、やっぱ大きすぎるなぁ。

ノッチ板 裏面
EF65の主幹制御器は、「S」「SP」「S」からノッチを進める場合、注意を促すため主ハンドルの端にあるボタンを押す必要があるように作られている。

今回の模型ではどうするか検討中だが、ひとまずノッチ指示板の裏側に穴だけ掘っておいた。
これを使えばなんとかなるでしょう・・か?

ノッチ板
厚みは5mm。

扇形となっているし、5mmのエンドミルで仕上げた部分があるのでどうしても端面には刃物跡が残るようだ。
ちょこっとパテで修正しようっと。

ノッチ板作成中

Nゲージ電気機関車用のコントローラの部品、ノッチ板を作成中。

弧を描いていること、溝は中心点に向けておく必要があること、そこそこの強度が必要であることなどが求められる要件。
本来なら金属にしたいが20センチ弱の大きさであるため、加工がちょっと面倒。

と、いうことで3mmのアクリルを1mmのプラ版ではさんで作ることにした。

モデラ MDX-20
加工はモデラで。

モデラはMDX-20。

ノッチ板
5mmのエンドミルで仕上げた状態。
現在、ここまで。

両端にソリがでて表面が少し削れたが、裏面から切削しているのであとでパテで補修すれば大丈夫かな?

溝部分は幅5mmとしているため、ここでエンドミルをR0.5のボールエンドミルに交換して切削予定。
さて、無事に完成するでしょうか。

切削時間は延べ30時間くらいになりそう。
失敗したらショックは大きい・・

D51形機関車 (D51 70)

 

 


キャブ内に入ることが出来る
埃がつんでいるものの、内外ともに状態はいい方だと思う。
D5170 蒸気分配箱

運転台中央にある蒸気分配箱

 

D5170 案内板
案内板には・・

D5170号は日立製作所で製造され昭和12年9月に完成しました。
岡山機関区に置かれ山陽本線の姫路と広島の間を走っていましたが、昭和25年8月北海道に移され、五稜郭、小樽築港、追分等の機関区で昭和50年12月まで活躍していました。その間に走った距離は287万8164キロメートル。

D51形機関車 (D51 70)

まるでホームにいるような雰囲気で自然に展示されている。

D51形機関車 (D51 70)

D51形機関車 (D51 70)

もう1線用意されているが、現時点では空き。

腕木式信号機

腕木式信号機も展示されている。

 

茨城県つくば市吾妻4-3-3 さくら交通公園
(撮影 2007年)

1 2 3 6