質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
さくらのVPS

さくらのVPSは、さくらインターネット社が提供するVPS(仮想専用サーバー)です。高速なSSDの選択や複数台構成も可能。利用者に応じた柔軟なプランが用意されています。大規模システムにも対応可能なスケーラビリティを備えたホスティングサービスです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

Q&A

解決済

2回答

779閲覧

さくらVPSでサーバーを運用しておりMariaDBでデータベースを管理しているが扱っている最中のibdata1ファイルが大きくなってきてしまっている問題についてどう対処するか

gugupoo

総合スコア31

さくらのVPS

さくらのVPSは、さくらインターネット社が提供するVPS(仮想専用サーバー)です。高速なSSDの選択や複数台構成も可能。利用者に応じた柔軟なプランが用意されています。大規模システムにも対応可能なスケーラビリティを備えたホスティングサービスです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

0グッド

0クリップ

投稿2020/05/12 01:46

さくらVPSでサーバーを運用しておりMariaDBでデータベースを管理しているが扱っている最中のibdata1ファイルが大きくなってきてしまっている問題についてどう対処するか

前々回質問させて頂きましたこちら、 https://teratail.com/questions/255914 とも関係するのですが、
/var/lib/mysql/ibdata1 が20GBくらいに肥大化してきたので、
自分のケースではどう対処するのがよいのか、データを消して再度流し込む方法に危険などは無いのか、
などについて質問させて頂きたいと思います。

※現状
さくらVPSで、意味があったかなかったかは別として(自分の所持サイト規模などにはあまり無かった可能性もありますがそれは置いておいて)、1Gプランから4Gプランなどにスケールアップを申し込んでみました。それによってみディスク容量も50GBから200GBに増えましたので、ibdata1が20GB前後ならまだ全然大丈夫です。とはいってもこのまま放置しておいてはとてもまずいことになるので対処はしたいのですが、
データを消して・・リストア云々となると少し怖い気もしています・・ それら込みで自分がどうするのが一番良いのか伺いにきました。

ベストなものは

【1番目の選択肢】 データ自体を少なくする。そしてデータが今後も大きくなっていかない設定を施す。
https://qiita.com/kooohei/items/15607ffbc3226d636b3f
http://oshiire.to/archives/1684
http://teityura.wjg.jp/engineer/ibdata%E8%82%A5%E5%A4%A7%E5%8C%96%E3%81%AE%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95
など。

というものだと思います。しかしたまたまと言いますか、偶然200GBのスペースを自分は借りているので、

【2番目の選択肢】
大きくしないだけの設定。
も有効だと思います。 小さくするのは怖さを伴う?という意味で。
その大きくしないだけの方法も、実際に有効かどうかは分かりませんが。

で、まず最初に自分が今日質問させて頂きたいのは
[mysqld]
innodb_data_file_path = ibdata1:1G
innodb_file_per_table

これは大きくすることを防ぐ設定と思いますが、
これだけするというのは無意味でしょうか?
つまり消してリストア、再度流し込むという方法でなく、
今自分が200GBを借りているので
大きくなっていくスピードを減らすためだけでも十分良いと思ったためです。

そのうえで、
バックアップを取ってから、削除して、再度データを流し込むといった
そういう方法に危険はないかどうか・・ あるいは
時間がどれくらいかかるか、結構長時間かかってしまうのかどうか・・なども
一応お聞きしたく来ましたが、すみませんが、宜しくお願いします。
もしリストア自体、怖くない作業だったらやはりそうした方がよいとも思うので・・。

で、
https://freesim.tokyo/3980/
こちらはinnodb を MyISAMに変えるというものらしいですが、
こちらも有効だったらやってみるのも手段かと思いますが、
どれが推奨されるかをアドバイス頂けたら有難いです、すみません;。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

scsi

2020/05/12 03:25

バックアップからデータを流し込むのは一台追加で契約すればすぐに試せるので自分でやることをお勧めします。
gugupoo

2020/05/12 07:52

一台追加ですぐに試せることを知りませんでした。了解しました。有難うございました!
guest

回答2

0

それぞれの設定の意味がよくわからない状態なのであれば、とりあえずは何もしないのがベストです。

提示されている方法はどれも、正確に理解して設定しないと後々の爆弾になり得る設定です。

そのうえで、
バックアップを取ってから、削除して、再度データを流し込むといった
そういう方法に危険はないかどうか・・ あるいは
時間がどれくらいかかるか、結構長時間かかってしまうのかどうか・・なども
一応お聞きしたく来ましたが、すみませんが、宜しくお願いします。
もしリストア自体、怖くない作業だったらやはりそうした方がよいとも思うので・・。

安全に実施できるか、短時間で完了するかどうかは要件次第です。
原理的には、webアプリケーションを停止させておけば安全に実施は可能ですが、
その他の事情は分からないので安全に出来るかどうかを他人が保証することは出来ません。

幸い、ディスク容量にはまだ余裕があるということですから、
まずは仮想マシンやもう一つVPSを借りて実際に試せる環境を作って試してみて、
納得できる状態になったら本番環境で実施することをお勧めします。

投稿2020/05/12 03:18

tanat

総合スコア18727

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gugupoo

2020/05/12 07:52

もう一つのVPS環境というのは参考になりました。有難うございました!
guest

0

ベストアンサー

【1番目の選択肢】の方法で良いんじゃないでしょうか。

リストアに不安を感じているようですが、VPSでDBダンプを出力したら、別の環境(仮想マシンなど)にリストアをしてみると良いと思います。おおよその時間も把握できるのではないでしょうか。

また、消すことにも不安があるようなので、コールドバックアップもとっておくと良いと思います。

【2番目の選択肢】の場合は、innodb_file_per_table を設定しても すでに作成済みのテーブルは ibdata1 に存在しますので 効果がないと思います。

また、すでに 20GBある ibdata1 を 1GBに制限すると 上限を超えるので正常に起動できるのか?と言う疑問があります(すみません、どうなるかはよく分かりません)

MyISAM への変換はなるほど。と言う感じですが、経験がないのでよく分かりません。
一部、互換性が無い部分があるので、やるんであれば MyISAMでアプリケーションが動作することをテストする必要がありそうです。もしくは、MyISAMからInnodbに再変換して戻すのが良いでしょうね。

なんにせよ、作業の前をバックアップをとって、戻せるように事前練習しておいたほうが良いと思います。

投稿2020/05/12 03:17

take88

総合スコア1467

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gugupoo

2020/05/12 07:54

別環境へのリストアにチャレンジしたいと思います。有難うございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問