勉強用のMySQLをいじっている時に、「もとに戻せない操作しちゃったけど戻せない……」ということはありませんか? MySQLのDDL(DROP TABLEやALTER TABLEなどの、定義を変更するためのステートメントのことです)はトランザクション非対応なので、一度DROPしてしまうとロールバックすることはできません。それどころか、DDLが実行される直前に「暗黙のコミット」が走る作りになっているので、トランザクションの最中にDDLを実行してしまうと、そこまでの操作はコミットされてしまうのです。そしてデフォルトでオートコミット……うっかりの種はどこにでも転がっています。 今回は、「勉強用のMySQLのテーブルをコピーしてバックアップする」「ついでにデータディレクトリーの構造を勉強する」がテーマです。 デモンストレーション環境について 今回利用している環境は、第2回 MySQLにはじめ