perl一回り 2011/06/08
Posted by digijun in Uncategorized.add a comment
12年ぶりにlinuxにapacheとperlのインストール。
それくらいサーバー関係の開発からは離れていたのです。
perl -MCPAN -e shellとか、完全に頭は忘れていたけど、背骨のあたりが覚えてました。
(いや、むしろ、理論的に思い出すべき?)
久々のDB作業 2011/06/07
Posted by digijun in Uncategorized.add a comment
最近あるクライアントさんからMySqlを使ったシステムの開発の依頼を受けているわけです。
そこで、10年ぶりくらいにガリガリ触ったりしているわけですが、前のシステムの保存とか、新しいシステムへの移行とかで、ずっと触っていないコマンド達が沢山あり、「お久しぶりー」といいながらも全然わからない。
昔だったら、すべて脳内に叩き込んでいたのですが、いい加減メモを取らねば、とここに書くことにしました。
「どうやってバックアップすんのさ?」
現行システムのDB内のものをバックアップするのは重要ですね。何かやる前に必ずバックアップを取っておきたいと思います。mysqldumpというコマンドを使いますが、コマンドにバグがあったりするので、以下にメモ。
mysqldump –add-drop-table –single-transaction -u ユーザー名 -p データベース名 出力ファイル名
–add-drop-tableは、既に新しい環境にDBのコンテンツが入っている場合に、それを空にしてから入れ直してね、という意味です。
–single-transactionは、今はまだ意味がよくわかってないけど、テーブルに一時的にロックをかけるのに使っているっぽいです。(後で調べる必要あり)
「んで、どうやってさっきバックアップしたのを復元するのさ?」
戻すときは普通にmysqlコマンドを使います。
mysql -h ホスト名 -P ポート番号 -u ユーザー名 -p データベース名 < さっきのダンプファイル名
ホストやポートは、デフォルト(localhostの3306ポート)の場合は省略可能です。DB名は指定しないと怒られる場合があるので、書いておきましょう。
これで、毎回検索しなくてもDBのバックアップとリストアができるようになったので、また作業を続けてきます。
