乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
XtraBackupとは Percona社 が開発しているオープンソースのMySQLのバックアップツールです。InnoDB, XtraDBとMyISAMストレージエンジンをブロックすることなくバックアップをする事が出来ます。ライセンスはGPLv2で無料で使えます。MySQLのバックアップ方法としてよく使われているmysqldumpというツールが有りますが、 大量のデータを保存しているデータベースからダンプしたデータをリストア(復旧)する時に非常に時間が掛かってしまうという欠点があります。 ここでは、mysqldumpとXtraBackupを使ってバックアップを取り、両者のバックアップとリストアのスピードの違いを比較してみます。 使用するサーバは以下の通りです サーバ さくらのクラウド プラン8 CPU仮想4コア メモリ24GB HDD100GB OS CentOS 5.7 64bit M

一昨日に開催された hbstudy #7 にバックアップの話を聞きに行ってきました。Amanda を中心にした話で、とても勉強になりました。が、設定がめんどくさそうだなぁ、とも。自分の需要にはあわない感じでした。 勉強会が終わったあとで、自作のバックアップスクリプトblockdiff に関する話を何人かの方とさせていただいたのですが、思いのほか反応が良かったので、あらためて紹介したいと思います。blockdiff は、一言でいうと、パーティションやデータベースのデータファイルの差分バックアップツールです。rsnapshot に似ていますが、rsnapshot ではデータベースのホットバックアップ不可能です。逆にblockdiff はディレクトリ単位でのバックアップには対応していないかわり、ファイルシステムやデータベースを、一貫性を保ちつつ実質無停止で差分バックアップすることができます
Tritonn のホットバックアップ環境を構築しようと思って調査。結論から言うと 漢(オトコ)のコンピュータ道:MySQLバックアップ頂上決戦!! LVMスナップショット vs InnoDB Hot Backup の「MyISAMをスナップショットでバックアップ」でよさそう。 確認したこととしては、 Tritonn の全文検索データは FLUSH TABLES しても fsync されない つまり sync (1) の呼び出しが必須linux の場合 sync (1) は1回呼べば十分だと man に書いてある POSIX 的には何回呼んでも書き込みが完了してる保証はない ってあたり。実際に、FLUSH TABLES WITH READ LOCK して sync 3回呼んでから LVM snapshot とって、myisamchk と sennachk してみたけど、myisamchk
先日は、mysqldumpの出力結果をawkを使ってデータベースごとに分割する方法について紹介したが、セミナーも終わったことなのでパッチを書いてみた。awkで分割するというのはUNIXユーザーの伝統芸能なので嫌いではないがまどろっこしいと感じる方も居るかもしれない。そもそもmysqldump自体がそのような機能をサポートしていれば問題ないのだから! というわけで、興味のある人は次のバグレポートからパッチをダウンロードして試してみて欲しい。 http://bugs.mysql.com/45003 そして試した後にはフィードバックを残して頂きたい!! パッチの適用方法は以下。 まずはMySQLのソースコードを入手する。ダウンロードサイトから最新のものを入手するか、bzrでゲットして頂いて構わない。 ダウンロードサイト: http://dev.mysql.com/downloads/mysql/

タイトルのまんまのプチトリビアを紹介しようと思う。mysqlの--one-databaseオプションを使えば「mysqldumpで--all-databasesとか--databasesオプションを使って作成したダンプファイルに含まれる複数のデータベースから、一つのデータベースだけを選択してリストアする」という操作ができるけど、毎回ダンプファイル全体を読み込むのは無駄じゃないか?と思われることもあるだろう。だったら事前にダンプファイルを分けちゃいたい!と考えるのが人情というもの。そんなときはawkコマンドを使うといい。 #!/usr/bin/awk -f BEGIN { dump_current_db = 0; num_db = split(databases,db_arr, ",") for (i = 1; i <= num_db; i++) {db_arr[i] = "`"db_

スナップショットを使えばとある瞬間のディスクやファイルシステムのデータをいつでも後から参照することができる。しかもスナップショットの作成は一瞬だ。スナップショット機能を活用すれば最強のオンラインバックアップソリューションが出来るだろう。 しかし、スナップショットでバックアップを取るなんて危険な操作じゃないのか?!と不安に思われる方もいらっしゃるかも知れない。MySQL Serverが稼働中にいきなりデータだけをとってくるのだから、そのような疑問を持たれるのは頷ける。しかし仕組みさえ分かればスナップショットによるバックアップは怖くないということが分かるはずだ。そこで、まずはスナップショットによるバックアップの仕組みについて説明する。スナップショットを取る際の要件は次の通りである。 全てのデータを単一のボリュームに置くこと。つまり、一回のスナップショット操作でバックアップが取れることだ。 ディ

MySQLを使っていると書込みロックをかけてバックアップを取る、ってのは一般的だと思います。実際、標準添付のmysqlhotcopy や Xtrabackup もそういうことをやっています。 しかし、これらはいずれもロックの管理とバックアップ処理が密結合になっている(ですよね?)のが玉に瑕。 特にボリュームレベルのスナップショット機能を使ってバックアップを取る場合、スナップショットを取るためのコマンドは環境(LVM とか XenServer とか VMware ESXi とか...)によって異なるので、ロック管理とバックアップコマンドは疎結合にしておきたい。と思ったので、書くことにしました。というか、疎結合なのを探すより書いたほうが早かった。コードはこちら↓。 使い方は、以下のとおり。setlock 風のインターフェイスなので、慣れている人には簡単だと思います。 %mysqllock
2007年5月31日10:53 Tom-Adelstein、Bill-Lubanovic(2007年5月29日(火)) ファイルやディレクトリのバックアップは比較的簡単だが、データベースのバックアップとなると、いくつか特別な工夫を施す必要がある。ここではMySQLを取り上げているが、同じ原理はPostgreSQLやその他のリレーショナルデータベースにもあてはまる。本稿は、最近O’Reillyから出版された書籍『Linux System Administration 』の抜粋。MySQLサーバを休みなく稼働させ続ける必要がないなら、以下に示すような圧縮なしのオフラインバックアップ手法が手っとり早い。MySQLサーバを停止させる。 # /etc/init.d/mysqld stopMySQLのデータファイルおよびディレクトリをコピーする。例えば、MySQLのデータディレクトリ/var

いいね! 4 ツイート B! はてブ 185Pocket 22 さくらインターネットのレンタルサーバーは非常に高機能なんですが、バックアップ機能だけはありません。(私が確認する限り。)HTMLやGIF、PHPなどのファイルはローカルのPCで持っているから大抵は大丈夫だとして、データベース系は間違って全部消してしまった日には目も当てられません。。定期的にバックアップを取るようにしていますが、忘れることもよくあるので、自動バックアップスクリプトをcronに登録しときました。 よくあるスクリプトですが、参考までに張っておきます。3日間分のMYSQLのバックアップデータを保持します。mysqlのID/PWなどは書き換えて下さい。 何もバックアップなんてしてない!という人は、自己責任で使ってみて下さい。 #!/bin/sh PATH=/bin:/usr/bin:/sbin:/usr/sbin:/
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く