内容へ移動
fl8 Wiki
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
現在位置:
Dokuwiki.fl8.jp
»
01_linux
»
11_データベース
»
01_mysql
»
03 InnoDBテーブル分割
トレース:
•
viで偶数行を置換
•
ApacheのBasic認証でPostgreSQLを参照
01_linux:11_データベース:01_mysql:03_innodbテーブル分割
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== 03 InnoDBテーブル分割 ====== InnoDB のデータファイルは,MyISAM テーブルと異なって,デフォルトでは ibdata1 というファイルにデータが蓄積されていくとこになります。\\ この ibdata1 は,大量のデータを追加していくと,自動的にサイズを拡張していきます。\\ ただし,データが削除されても自動的には縮小されません。 MySQLのクエリ処理した際とかにどんどんたまっていくようです。\\ INSERTやUPDATE、DELETE等ですね! [[http://opendatabaselife.blogspot.jp/2009/10/myisaminnodb.html|MyISAMとInnoDBの違い]] ====== テーブル分割 ====== ===== ダンプ ===== <code console> # mysqldump -u root -p --no-autocommit --all-databases > all_backup.sql </code> ===== MySQL 停止 ===== <code console> # /etc/init.d/mysql stop </code> ===== my.cnf修正 ===== <code console> # vi /etc/my.cnf [mysqld] default-storage-engine=InnoDB innodb_file_per_table skip-innodb-doublewrite # リストアが早くなる </code> ==== skip-innodb-doublewrite について ==== InnoDBは、耐障害性を高めるためにInnoDBデータファイル内で2箇所への書き込みを行なうという実装になっています。\\ すなわち「SHOW VARIABLES LIKE 'innodb_doublewrite'」で、innodb_doublewriteがONになっています。\\ ただ、実際にはInnoDBログファイルやバイナリログから復旧可能なため、必ずしも設定が必要なわけではありません。\\ そこで二重書き込みをやめるために、初期設定ふぁいるに「skip-innodb-doublewrite」を加えることで、innodb_doublewriteの値をOFFにできます。\\ これで、データファイルへの書き込み量を削減できます。これはMySQL5.0以降の機能です。 ===== 現在のデータファイル削除 ===== <code console> # rm -rf /var/lib/mysql/ib* </code> ===== MySQL起動 ===== <code console> # /etc/init.d/mysql start </code> ===== リストア ===== <code console> # mysql < all_backup.sql </code> これで、tablename.idb ができるようになります。
01_linux/11_データベース/01_mysql/03_innodbテーブル分割.txt
· 最終更新: 2013/11/01 06:15 by
matsui
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ