勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

お名前.comのレンタルサーバ(SDサーバ)にMySQLデータのインポートする方法

   2024/02/22  MySQL

お名前.comのレンタルサーバにそこそこ大きいサイズのMySQLデータを移行したかった。色々面倒だったけど何とかなったのでメモ。先に結論から書くとbigdump.phpというものを使う。

 

bigdumpの使い方

以下ページの右サイドにあるBigDumpをダウンロードする。

http://www.ozerov.de/bigdump/

ダウンロードしたものを解凍し、中身のbigdump.phpにmysqlのデータベース名やユーザー名を書き換える場所があるので、そこを編集し、インポートしたいサーバの任意のディレクトリにアップロードする。

ブラウザからbigdump.phpにアクセスし、sqlファイルもしくは圧縮したファイルをアップロードし、インポートさせる。

注意点としてmysqldumpされたデータ長を少なめにしとかないとエラーが起こる。phpmyadminだとエクスポートのページに「作成するクエリの最大長」という部分があるのでそこで100等に指定する。

 

そもそもphpmyadminでエクスポートできない

VPSのメモリ1GBのプランでphpmyadminからエクスポートしようとしたけど、メモリが足りない為かエラーが発生した。

他のサーバに移そうかと思ったけど、所持している中でも最大メモリが2GBとかだったので自PCにXAMPPを入れて対応した。

XAMPPのコントロールパネルからApacheのconfigを押すとphp.iniを編集できるので、

post_max_size = 2G
upload_max_filesize = 2G
memory_limit = 2G

等、使えるだけメモリを使うと良い。

 - MySQL

  関連記事

MySQLでオートインクリメントを使用せずにグループ毎に連番を設定する方法
MySQLでオートインクリメントを使用せずにグループ毎に連番を設定する方法

MySQLでオートインクリメントを使用せずにグループ毎で連番を割り振りたかった。 ...

MySQLでIPアドレスを数値として入れると変な値になる場合の対処方法
MySQLでIPアドレスを数値として入れると変な値になる場合の対処方法

MySQLでIPアドレスをINET_ATON関数を用いてINT型に変換し格納する ...

MySQLのTEMPORARY TABLE(テンポラリテーブル)で高速化を図る方法
MySQLのTEMPORARY TABLE(テンポラリテーブル)で高速化を図る方法

MySQLで5000万件ぐらいデータが入っているテーブルから日本語検索しないとい ...

ON DUPLICATE KEY UPDATE後にinsert_idを取得すると結果が0になる
ON DUPLICATE KEY UPDATE後にinsert_idを取得すると結果が0になる

MySQLでON DUPLICATE KEY UPDATE句指定し、データの登録 ...

MySQLでdatetime型にもインデックスを使用して高速化を図る方法
MySQLでdatetime型にもインデックスを使用して高速化を図る方法

ログ関連のデータを格納するテーブルがあり、集計を行う際に非常に時間がかかった。レ ...