技術報告一覧

サーバーがパンク

なーんかメールの送受信ができなくなっているなー
でもエラーがでないなー。
なんでだーなんて思っていたらサーバの容量がいっぱいになっていました。
なんでこんないっぱいと思ったら、年々蓄積されたコンテンツが一番大きいらしい、不要なログを削除しても
少し減ったくらいでまだあかん。
プラン変更OR引越しも考えないとなー。



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。


 




[MySQL] 登録したデータが反映されていない

ブラウザからユーザー情報を登録できる、CMS形式のサイトにて、ユーザーが100件近く情報をまとめて登録すると、すぐに情報が反映されずに2時間後くらいにやっと反映されるという不具合の報告がありました。

私も試しにまとめて登録するような動きをトライしたが
どうも現象がみられず。
んーこの遅延はなんだと考え推測で判断するしか
なくなってしまいました。

推測1.MySQL側のロックによる遅延
MyISAMテーブルへの登録なので、ロックレベルは
テーブルロック。まとめてがんがん登録しているときは
ロックがかかり参照するユーザーは遅延する。
この結果、すぐに情報が反映されないのだろう。
だけど、実際遅延によって古い情報を参照することに
なるというのがどうもしっくりこない。ここはタイムアウトになるのではないかとも思われる。ここらへんの挙動は
まだ調査していない。

推測2.クエリーキャッシュ
MySQLにも同様のSQLが頻繁に使われる場合、キャッシュを使用できるが、テーブルが追加、更新、削除などの変化があった場合、キャッシュはクリアされると
http://dev.mysql.com/doc/refman/4.1/ja/query-cache.htmlなっている。
んークリアされるのであれば問題ないなーと思いつつもとりあえず、SQL発行時にキャッシュを使用するか
しないかをコントロールできるので、それで検証できる。
下記はキャッシュを使用しない場合
SELECT SQL_NO_CACHE * FROM TABLE;



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。


 




[MySQL] InnoDBに変更

MySQLのテーブルタイプを
InnoDBに変更してみる
ALTER TABLE tables TYPE = INNODB;

phpMyadminの「操作」でも同様のことができます。
「操作」の画面はいろんなことができるんですね。

データが反映されない問題に関しても
テーブルのオーバーヘッドが原因と思われるので
「最適化」をかけてみてもよさそうですね。
phpMyAdminの「操作」でできます。



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。