MySQL がちょいちょい落ちるので EC2 に swap 領域を設定

ちょいちょい MySQL が落ちるな~と思ってたんですが、swap 領域がないことが原因なのかもということで、swap 領域設定してみました。

メモリ確認

$ free
              total        used        free      shared  buff/cache   available
Mem:        1015348      423808      217400       46212      374140      400740
Swap:             0           0           0

Swap 0!

空き容量確認

$ df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   29G  4.2G   25G  15% /
devtmpfs                 487M     0  487M   0% /dev
...以下略

空ファイル作成

$ dd if=/dev/zero of=/swapfile bs=1M count=1024

swap 領域作成

$ mkswap /swapfile

権限変更

$ chmod 600 /swapfile

swap 領域有効化

$ wapon /swapfile

確認

$ swapon -s
Filename                                Type            Size    Used    Priority
/swapfile                               file    1048572 0       -1

$ free
Mem:        1015348      334316      279932       59680      401100      479768
Swap:       1048572           0     1048572

再起動しても swap が有効になるように

$ sudo vi /etc/fstab

で編集モードに入って、次の内容を末尾に追加

/swapfile   none    swap    sw    0   0

おわり。これで MySQL 落ちなくなるといいな~。

参考)

MySQL が起動しない原因がディスクフルだった

MySQL が起動しなくて、なんでだなんでだと調べたところサーバー容量が足りなかった、ということがありました。MySQL 起動しないのがディスクフルのせいだとは全然気づかなくて、しばらく journalctl -xn  してエラーログみたり色々してました。

珍しいケースだとは思いますが、MySQL 起動しなくて困った時は念のためサーバー空き容量を調べてみるといい、と勉強になりました。

未来の自分のために簡単に一応メモ。

CentOS7 でのサービスの起動・終了・再起動・状態

systemctl start 【サービス名】
systemctl stop 【サービス名】
systemctl restart 【サービス名】
systemctl status 【サービス名】

MySQL の状態を見たいなら次のようなかんじ。

systemctl status mysql

起動しない場合は、journalctl -xn  でエラーログを見る。

参考)CentOS7でのサービス(デーモン)の起動・停止方法 | server-memo.net

サーバー空き容量を調べる

$ df -h

Filesystem Size Used Avail Use% マウント位置
などが表示される。

サーバーのディスク容量アップ

今回はさくらのクラウドだったので、仮想サーバと仮想ディスク – 「さくらのクラウド入門」(1) – さくらのナレッジ を参考にディスク容量をアップ。

MySQL が壊れてる

さらに MySQL のテーブルが壊れてしまってたので、phpMyAdmin から

  • 「オーバーヘッド」のあるところは「テーブルの最適化」
  • 「使用中」になったままで構造が壊れてたところは「テーブルの修復」

をしました。これでなんとか復活。

参考)MySQL のテーブルを修復 – STAFF_01 [KYS-LAB]

ヘッドホン⇒プロジェクター(EH-TW5200)の接続で映像がおかしい場合

引っ越し後プロジェクターをちゃんと使っていなかったので GW に配置やら配線やら行いました。ベッドでゴロゴロしながらライブ映像を観れる状態になって満足です。途中困ったところもあったので、そのあたりを中心にまとめておきます。

音再生

プロジェクターは手持ちの EPSON EH-TW5200 を利用するとして、音をどうしようかなぁとまず考えました。

最初は手持ちの ONKYO BASE-V50 を使って 5.1ch とか作りたいなと思っていましたが、「真夜中に観たい時もある(むしろそっちの方が多いかもしれない)」、「ライブ映像は大きめの音量で観たい」、「夜中に音量をあげるのは迷惑になってしまいそう」などの理由からスピーカーではなくヘッドホンを利用することにしました。

どうせならば少しは良い音で聞きたいなあと思い、調べて評判が良さそうだった MDR-HW700DS を買いました。私にとっては十分良い音で、装着感もよく頭がしめつけられたり耳が痛くなるようなこともなく、満足度の高い買い物でした。

配線(問題と改善案)

パススルーなのでヘッドホン(の無線親機)からプロジェクターへ HDMI で繋ぐことができるはず、と最初は下図左のように繋ぎました。しかし画面が緑色がかかった色味になりチカチカ点滅してしまい、あきらかにおかしい状態に。

調べてみたところ他にも同じような状態になっている方がいて、ヘッドホンからこのプロジェクターに繋いだ際、そのような症状が出ることがあると分かりました。

wire_diagram2

相性が悪いのはどうしようもないので HDMI スプリッターを購入して、上図右の配線に変更。ちゃんと映像が映るようになりました。良かった。

ヘッドホンの HDMI 出力⇒プロジェクターの HDMI 入力、で繋いだら映像がおかしくなってしまって困ってる、という方は HDMI スプリッターが 5,000円強くらいで買えると思うので試してみると良いかと思います。

おまけ

その他の部分は次のような配線。

wire_diagram

Firefox + OneTab のデータを Dropbox に保存しておく

タブを開きすぎてしまって動作もっさりにしてしまうことが多かったので、結構前から Chrome でも Firefox でも OneTab という拡張を使ってます。

ただ、Firefox の OneTab たまにすっとぶことがあったので Dropbox に設定ファイルを置いて、シンボリックリンクをはっておくことにしました。…実は結構前からそうしていて、便利にしてたんですが、パス忘れるのでメモかねて記事にしました。

OneTab の設定ファイルの場所は次のパス。

%APPDATA%\Mozilla\Firefox\Profiles\ランダムな英数文字列.プロファイル名\jetpack\extension@one-tab.com\simple-storage\store.json

store.json を Dropbox の好きな場所に保存して、上記のパスにシンボリックリンクを貼っておく。何かの弾みでデータが壊れてしまったら Dropbox のバージョン管理から戻せば OK。

 

PhantomJS + CasperJS で一括キャプチャを撮ってみた

PhantomJS + CasperJS で自動キャプチャを撮ってみたり、BackstopJS でキャプチャ見比べたりしてみたので軽くメモ。

既に運用しているサイトの全ページのキャプチャを撮りたい場合

いかに楽をしてキャプチャを撮るか。

  • サイトの URL 一覧作るのが面倒だなあ。
    Website Explorer 使うと割と楽(ただし Windows のみ)
  • キャプチャ手作業で撮るのは面倒だなあ。
    PhantomJSCasperJS で一括で撮れば楽

“PhantomJS + CasperJS で一括キャプチャを撮ってみた” の続きを読む