夜通し作業することなく、データベースを別のサーバーへ移行できます。
SQLmigは、4つのガイド付きステップでMySQLとMariaDBのデータベースをバックアップ、移行、復元します。しかも安全です。移行先サーバーに何かを書き込む前に、2つのサーバーを比較し、バージョンの違い、異なるストレージエンジン、特殊な照合順序、旧式のオブジェクトなど、問題になる点を正確にお知らせします。
買い切りで、サブスクリプションはありません。ライセンスは1台のマシンへのインストールに有効で、バージョン4の全期間、アップデートを含めてご利用いただけます。Windows、macOS、Linuxに対応。SQLmig 4のリリース記念として25%オフ。価格は米ドル表記です。
MySQL 5.7、本番環境
MySQL 8.0、新しいサーバー
移行経路:対応済み
外部キー、ビュー、予約語:問題は検出されませんでした
照合順序:既知の調整を2件、インポート時に適用します
utf8mb3:確認が必要なオブジェクトが14件あります
移行先のmax_allowed_packet:64 Mo、十分です
問題が発生するのは、ダンプの実行中ではありません。
問題が起きるのはインポート時です。1時間後、メンテナンス時間を半分使い、復元も半分まで進んだところで発生します。
$ mysqldump -h prod -u root --all-databases > dump.sql
$ mysql -h new-server -u root < dump.sql
ERROR 1273 (HY000) at line 41: Unknown collation: 'utf8mb4_0900_ai_ci'
ERROR 1005 (HY000) at line 2188: Can't create table `crm`.`facturation`
ERROR 2006 (HY000): MySQL server has gone away
# エラー3件。2時間のロス。しかも、新しいサーバーはすでに稼働しているのに、データベースの復元は半分しか終わっていません。データがすべて揃わなかったり、破損したりする可能性もあります。
バージョンが互換性を持たない
たとえば、MySQL 8で作成された照合順序は5.7にはありません。古いROW_FORMATは一方では使えても、もう一方では処理を妨げます。SQLモードはバージョン系列ごとに厳しくなります。移行元で問題なく出力できたものが、移行先では拒否されることがあります。
ストレージエンジンにも互換性の問題がある
MySQLとMariaDBでは、対応する照合順序、テーブルオプション、ビューやルーチンの構文が異なります。ダンプは警告しません。インポートは警告します。
すべてがたった1つのコマンドにかかっている
ターミナルの履歴に残った誤ったホスト、余計な--all-databases、上書きされたファイル。インフラで最もリスクの高い操作でさえ、確認を求められません。
監査する時間が誰にもない
40個のデータベースについて、照合順序、DEFINER、ビュー、制約名、max_allowed_packetを手作業で確認するのは丸一日かかります。そこで手順を省略し、うまくいくことを祈るのです。
違いが生まれるのは移行中ではありません。その前です。
コマンドラインの場合
互換性の問題に気づくのはインポート中です。
エラーの原因を特定するため、ダンプを手作業で読み直します。
80%で失敗すると、最初からすべてやり直しです。
本番サーバーに書き込んでしまい、誤ってデータを上書きする可能性もあります。
ターミナルで入力するSQLコマンドは複雑で、オプションはデータベースエンジンによって異なります。
コマンドラインのすべてのオプションを完全に把握していなければ、データベースが正しく移行されたという保証はありません。
半年後には、データベースをどのように移行したのか、どのコマンドラインオプションを使用したのかを誰も覚えていません。移行が適切に管理されていなかったため、気づかないうちにデータが破損している可能性もあります。
SQLmigなら
サーバーの設定は一度行えば、セッションをまたいで保持されます。
移行プロジェクトの互換性の問題は、ダンプの前に項目ごとに一覧表示されます。
各警告には、確認すべき内容とその理由が記載されています。
ダンプはライブラリに保存されるため、再起動後など、後からインポートを再開できます。
セキュリティ上の理由で役割「ターゲット」のチェックが外れているサーバーには、誤ってインポートされることはありません。
移行時に、ソースサーバーとターゲットサーバーの間でデータベース名を自動的に変更できます。
あなたにも同僚にも、毎回同じ手順で操作できます。数回クリックするだけで完了し、専門知識は不要です。
履歴には日付、状態、バージョン、データベース、完全なログが記録されます。
4つのステップ。サーバーを問わず、いつも同じです。
サーバーを「ソース」エリアに配置し、必要に応じて別のサーバーを「ターゲット」エリアに配置して、左から右へ進みます。単純なバックアップの場合はターゲットを空にしておけば、ステップ2と4は表示されません。
データベースを選択
SQLmigが接続してサーバーの実際のバージョンを確認し、アプリケーションデータベースを一覧表示します。システムスキーマは除外されます。各データベースのテーブル数、推定サイズ、照合順序が表示されます。
移行を分析
16項目のチェックで、ソース、ターゲット、選択内容を正確に比較します。レポートでは各項目が「OK」「警告」「エラー」に分類されます。レポートでエラーが検出された場合、対処するまで次の手順には進めません。
ダンプを作成
データベースごとに1ファイル、または全データベースをまとめて1ファイルにします。構造、データ、ルーチン、トリガーが含まれます。SQLアカウントに読み取り権限があれば、イベントも含まれます。
ターゲットにインポート
復元するデータベースを選択し、必要に応じて名前を変更して、インポートを開始します。SQLmigはファイルを変更せずに既知の調整を適用し、すべてが正しく取り込まれたことを確認します。
SQLmigが数秒で代わりに確認する項目をご紹介します。
移行する対象を正確に選択して、16項目をチェックします。各項目には状態と説明が表示され、可能な場合は対処方法も案内されます。
ソース → ターゲットの移行経路
両サーバーへの接続と識別情報
ターゲットで拒否されるSQLモード
ENUMおよびSETのサイズ制限
外部キー制約の名前
制限を超えるビューの列名
パーティショニングとストレージエンジン
utf8 / utf8mb3のままのオブジェクト
ターゲットに存在しない照合順序
オブジェクト名に使用されている予約語
ビュー、ルーチン、イベントのDEFINER
保存オブジェクト内のASC/DESCを含むGROUP BY
インポート時に拒否されるNULLまたは部分的な日付
古いROW_FORMAT InnoDBおよびKEY_BLOCK_SIZE
ターゲットのmax_allowed_packet不足
バージョンアップ時のMySQL Shellチェック
インポート中、SQLmigは既知の調整も適用します。MySQL 8から5.7への照合順序の調整、古いInnoDBの行形式、NULLの日付に関するモード、最近のMariaDBダンプに含まれる「sandbox」ディレクティブなどに対応します。元のダンプファイルは決して変更しません。
失敗が許されない操作のために設計されたツール。
ダンプライブラリ
SQLmigを終了して翌日に戻ってきても、ダンプはソース、データベース、日付、サイズとともに保存されています。ターゲットを選んでインポートするだけ。再設定は不要で、クリックひとつで完了します。
インポート時のデータベース名変更
hosting1_wordpressをhosting2_wordpressにワンクリックで復元したり、選択したすべてのデータベースにプレフィックスを適用したりできます。SQLmigは次回のために対応関係を記憶します。
部分インポート
30個のデータベースをまとめたダンプでも、そのうち3個だけを復元できます。SQLmigは本番稼働前に確認すべき依存関係を知らせます。
SQLクライアントを自動インストール
mysqldump、mariadb-dump、MySQL Shell:SQLmigは、お使いのサーバーに対応する公式クライアントをインストールします。お使いのマシンで稼働中のSQLサーバーには一切手を加えません。
本番環境を保護
重要なサーバーでは「対象」の設定をオフにしてください。SQLmigが誤ってそのサーバーに書き込むことはありません。そのサーバーの「対象」ボタンは無効になります。
暗号化接続
VERIFY_IDENTITYまで対応したTLS over TCP、認証局証明書、クライアント証明書、またはローカルのUNIXソケットを利用できます。必要に応じて、AWS RDSへの接続ガイドもドキュメントでご覧いただけます。
履歴とログ
操作の種類、日時、サーバー、バージョン、対象データベース、ダンプモード、完全なログを記録します。半年後でも、実際に行われた操作を確認できます。
既存のダンプを分析
他のツールで作成した.sqlファイルも読み込めます。データベースとテーブルの数を数え、進捗状況を測定し、移行先で問題になる箇所をお知らせします。
ポータブルな設定、16言語対応
サーバー設定や各種設定をエクスポートし、SQLmigをインストールした別のマシンに簡単にインポートできます。インターフェースは16言語に対応。ライト、ダーク、自動のテーマを選べます。
バックアップは無料。移行にはライセンスが必要です。
SQLmigは無料でインストールして利用できます。SQLサーバー1台で、好きなだけバックアップを作成できます。これは、誰もがいつでもSQLサーバーのデータをバックアップできるように、コミュニティに贈るものです。SQLmigのライセンスを購入すると、移行と別のサーバーへのデータのインポートなど、すべての機能が利用可能になります。購入前に、何を購入するのかを正確にご確認いただけます。
機能
無料
ライセンスあり
SQLサーバー数
1
無制限
接続テストとバージョン検出
はい
はい
データベースの一覧表示とバックアップの作成
はい
はい
個別のダンプ、または1つのファイルにまとめたダンプ
はい
はい
移行先サーバーの選択
-
はい
互換性の事前チェック(16項目)
-
はい
移行用に準備されたダンプ
-
はい
インポート前のダンプのSQL分析
-
はい
移行先サーバーへのインポートと復元
-
はい
インポート時のデータベース名変更
-
はい
SQLmig 4.xのアップデート
はい
はい
ライセンス1つ。お支払いは1回だけ。SQLmigを無制限に利用できます。
ライセンスに含まれる内容
SQLmig 4で期間無制限にご利用いただけます。
バージョン4のすべてのアップデートが無料で含まれます。
ライセンス1つにつき1台で使用できます。移行可能です。こちらでライセンスを解除し、別の場所で有効化してください。
Windows、macOS、Linuxのいずれでも、同じライセンスをお使いいただけます。インストール先は自由に選べます。
移行、分析、復元のすべての機能が利用可能になります。
まだ迷っていますか?SQLmigをインストールして、今すぐ本物のバックアップを無料で作成してみてください。10分あれば、このツールがご自分に合っているかどうかがわかります。
よくいただくご質問をご紹介します。
ライセンスはサブスクリプションですか?
いいえ。一度限りのご購入です。ライセンスに有効期限はなく、バージョン4のすべてのアップデートが含まれます。
SQLmig 5がリリースされたらどうなりますか?
バージョン4をご利用の間は、ライセンスを引き続きお使いいただけます。メジャーバージョンごとに、ライセンスを一度だけご購入いただきます。
パソコンを買い替えると、ライセンスを失いますか?
いいえ。SQLmigで「設定」→「SQLmigライセンス」をクリックし、「ライセンスを解除」をクリックしてから、新しいマシンでライセンスを有効化してください。各ライセンスは、一度に1台のマシンでのみ使用できます。
常にインターネットに接続している必要がありますか?
いいえ。初回のオンライン認証後、SQLmigはオフラインでも最長30日間ライセンスを認証できます。オンラインで確認するたびに、この期間は更新されます。
SQLサーバーのパスワードはどのように保存されますか?
サーバーのパスワードをSQLmigに保存することを選択できます。その場合、パスワードはSQLmigによって暗号化されて保存されます。または、まったく保存しないこともできます。その場合は、SQLmigで操作を実行するたびにパスワードを入力するだけです。
MySQLからMariaDBへ、またはその逆に移行できますか?
はい。SQLmigは異なるデータベースエンジン間の移行に対応しており、照合順序、ストレージエンジン、テーブルオプション、SQL機能など、注意が必要な点をお知らせします。切り替える前に、必ずコピー上でテストしてください。
MySQL 5.7から8.4へ直接データベースを移行できないのはなぜですか?
中間バージョンであるMySQL 8.0を経由しないことになるためです。SQLmigでは、MySQLの公式ドキュメントの推奨に従って、まずMySQL 8.0を経由します。この中間ステップもSQLmigを使えば簡単に実行でき、移行後に予期せぬ問題が起きる可能性を大幅に減らせます。
SQLmigはバックアップ戦略の代わりになりますか?
いいえ。また、そのような役割を謳っているわけでもありません。SQLmigは論理バックアップと論理移行を実行します。リアルタイムレプリケーション、データベースエンジンの物理バックアップ、社内のテスト手順に取って代わるものではありません。
SQLmigはどのSQLサーバーに対応していますか?
SQLmigは、MySQL 5.0、MySQL 5.1、MySQL 5.5、MySQL 5.6、MySQL 5.7、MySQL 8.0、MySQL 8.4、MySQL 9.7、MySQL 26.7、MariaDB 10.6、MariaDB 10.11、MariaDB 11.4、MariaDB 11.8に対応しています。
データを別のSQLサーバーに移行しませんか?今回はSQLmigを使えば簡単に行えます。
今ならSQLmig 4の発売記念価格をご利用いただけます。ライセンスを$149.99でご購入ください(通常価格$199.99)。お支払いは一度きりで、サブスクリプションはありません。または、お好きなサーバー上でSQLmigを使ったバックアップを今すぐ無料でお試しください。
MySQL 5.0~26.7 · MariaDB 10.6~11.8 · Windows、macOS、Linux · 16言語対応のインターフェース
ライセンスは1台のマシンへのインストールに有効です。価格は米ドルです。