SQL Serverのデータ移行とは。互換性に注意が必要。

ハードウェアやソフトウェアを安全・快適に利用するためには、常に最新の状態を維持する必要があります。

具体的な対応として、バージョンアップや新環境への移行が挙げられます。

データベース管理システムのMicrosoft SQL Server(通称SQL Server)も、長期間利用していると、新しいOSへの更新や、新しいサーバーへの移行が必要になることがあります。

その際、古い環境から新しい環境へデータを移行する作業を行います。

今回は、SQL Serverの更新およびデータ移行を実施する際の、注意点について解説します。

SQL Serverのアップデートや移行の種類

ITシステムを長く利用していると、OSやアプリケーションのバージョンアップ、あるいは、新しいハードウェアへの移行が必要となります。

SQL Serverのアップデートや移行は、概ね下記の3パターンに分けられます。

  • 既存環境のバージョンアップを行う
  • 新環境へ移行する(SQL Serverのバージョンアップを行う)
  • 新環境へ移行する(SQL Serverのバージョンアップを行わない)

作業する際には、要件が3パターンのどれに該当するのかを明確にした上で、実行計画を検討することが大切です。

アップデートや移行の流れ

SQL Serverのアップデートや移行作業は、どのような流れで進めるべきでしょうか?

既存環境での更新であっても、別環境への移行であっても、基本的な作業は共通です。

たとえば、既存のSQL Serverを新しい環境に移行させる場合は、下記の流れで行います。

  1. 既存環境でのDBバックアップ(エクスポート)
  2. 新環境のSQL Serverの構築
  3. 新環境へのデータインポート

既存環境の場合は単にバージョンアップインストールを行うこともできますが、より安全なバックアップ+インポートの方法を推奨します。

なお、SQL Serverが同一バージョンである場合は上記で問題ありませんが、同時にSQL Serverのバージョンアップを実施する場合は注意が必要です。

互換性の問題と、その他の注意事項については、下記の章で解説します。

データ移行と互換性

SQL Serverで、移行とバージョンアップを並行して行う場合、もっとも注意すべき点は「互換性」です。

SQL Serverでは、バージョン間のデータ移行に制限があります。

たとえば、SQL Server 2019で移行のサポートが行われるバージョンは、以下の4つです。

  • SQL Server 2012 (11.x) SP4 以降
  • SQL Server 2014 (12.x) SP2 以降
  • SQL Server 2016 (13.x) SP2 以降
  • SQL Server 2017 (14.x)

たとえば、これ以前のバージョンのSQL ServerからSQL Server 2019へ移行する場合を考えてみましょう。

この場合、ひとまずデータを上記いずれかのバージョンに移行し、さらに最新のものに移行するといった2段階での移行作業が必要となります。

このように、SQL Serverの新環境移行時にバージョンアップが伴う場合、互換性に注意しましょう。

他に注意すべき点は?

バージョンアップを伴うSQL Serverの移行、とくに互換性の問題がある場合には、いくつか注意すべき点があります。

他のソフトウェアとの互換性を確認する

SQL Serverの更新により、他のソフトウェアが使用できなくなることがあります。

更新予定のバージョンと、使いたいソフトウェアに互換性があるかどうかを確認しましょう。

コードの修正点を確認する

SQL Serverを利用するプログラムやソフトウェアを独自に開発している場合、コードを修正する必要があるかどうか確認しましょう。

SQL Serverの移行後に、独自に開発したコードが動かなくなるケースや、正常に動作させるためにコードの修正が必要なケースが発生することがあります。

互換性レベルを上げる

DBをそのまま移行しても、互換性レベルを上げない限り、すべての機能を使うことができません。

SQL Serverをそのまま移行すると、互換性レベルが最も低くなります。

そのため、最新のSQL Serverが持っているすべての機能(最新機能)が使える状態にならない可能性があります。

すべての機能を使うためには、統合管理ツールの「SQL Management Studio」を使うかSQL言語の「Transact-SQL」を使って、いずれも手動で変更することが出来ます。

ちなみに最新版のSQL ServerではSQL Server 2019では150、2017では140となっています。

まとめ

古い環境から新しい環境への移行や、ソフトウェアのバージョンアップは、ITシステムを利用する上で避けて通れないものです。

今回解説したSQL Serverでも、古いサーバーから新しいサーバーへ移行するケースや、同一のサーバー内でバージョンアップを行うケースなど、様々なパターンがあります。

どのような方法を選択しても、バージョンアップを行う場合には、「互換性」の問題を考慮しなければなりません。

互換性には、データ移行の問題、機能レベルの問題、また周辺のソフトウェアとの互換性やコードの互換性など、注意すべき点がたくさんあります。

そのため、バージョンアップには、詳細な実行計画を作成することが重要となります。

実施計画、注意点の洗い出しと解決策の確認などを含めて、計画的かつ余裕をもって行いましょう。

未経験でもIT業界に飛び込んでみたい・・・
「ササエル」でインフラエンジニアを目指しませんか?

オンラインスクールの詳細はこちら

関連記事

目指せ、インフラエンジニア!

テレワークにおすすめ!

当社人気No.1サービス!

Winserver TOPページへ

お問い合わせフォーム

TOP