バナー画像

SQL Server 2008はサポート終了

SQL Server 2008 / 2008 R2は、2019年7月9日をもってマイクロソフトの延長サポートが終了しました。

もちろん、2019年7月9日を過ぎたからといって、SQL Server 2008が急に動かなくなる訳ではありませんが、サポートが終了した製品は、バグやセキュリティの問題が発生しても、マイクロソフトから修正プログラムの提供を受けることができなくなります。

今でも、SQL Server 2008 / 2008 R2を使用している場合は、サポートが受けられる製品にアップグレードすることをお勧めします。

サポートが終了した製品を使い続けるリスク

前述のように、サポートが終了した製品であったも使い続けることは可能ですが、新たなセキュリティの脆弱性が見つかった場合などに、更新プログラムが提供されないため、セキュリティ・リスクを抱えたまま、データベースを運用する必要があります。

ポテパンダの一言メモ

データベースに、重要な売上・契約データなどが含まれたり、個人情報を格納していたりする場合、もしそれが流出するような問題が発生した場合、企業に大きなダメージを与えます。

SQL Serverのサポート期限

ここでは、SQL Serverのバージョンごとのサポート期限について確認しましょう。

製品バージョン メインストリームサポート期限 延長サポート期限
SQL Server 2008 (R2) 2014年07月08日 2019年07月09日
SQL Server 2012 2017年07月11日 2022年07月12日
SQL Server 2014 2019年07月09日 2024年07月09日
SQL Server 2016 2021年07月13日 2026年07月14日
SQL Server 2019 2025年01月07日 2030年01月08日

SQL Serverの各バージョンには、無償版の「SQL Server Express」と有償の「SQL Server」のエディションがありますが、サポート期限はどちらのエディションでも共通です。

上記の表を見ると、概ねメインストリームサポート期限は、製品発表後5年間、延長サポート期限は10年間となっているようです。

SQL Server 2008をアップグレードする場合は、サポート期限が最も長い「SQL Server 2019」を選ぶのがベストですが、難しい場合は出来るだけ新しいバージョンを検討するようにしましょう。

SQL Server 2008からの移行

ここまで、既にサポートが切れていている製品のリスクや、各バージョンごとのSQL Serverのサポート期限について解説してきました。

では、SQL Server 2008を新しいバージョンに移行する方法について確認してみましょう。

互換性レベルとは?

SQL Serverには、古いバージョンのSQL Serverを移行しやすいよう、互換性レベルという機能があり、例えば、SQL Server 2019上で、SQL Server 2012などの下位のバージョンと同等の動きにさせる事ができます。

各SQL Serverに割り当てられている互換性レベルは、次の表のとおりです。

SQL Server 互換性レベル
SQL Server 2000 80
SQL Server 2005 90
SQL Server 2008(R2) 100
SQL Server 2012 110
SQL Server 2014 120
Server 2016 130
SQL Server 2017 140
SQL Server 2019 150

この互換性レベルによって、本来上位バージョンにアップグレードすれば使えないはずだった機能が、そのまま使えるようになり、移行コストが少なくすみます。

互換性レベルを変更する

互換性レベルの規定値は、SQL Server 2019は「150」であるなど、上の表で紹介した、SQL Serverのバージョンに対応する互換性レベルが規定値となります。

SQL Serverの互換性レベルは、次のALTERコマンドで変更することができます。(コマンドはsaユーザーなどの管理者権限で実行します)

ALTER DATABASE database_name
SET COMPATIBILITY_LEVEL = <変更する互換性レベル>

ただし、すべてのバージョンで、すべての互換性レベルをサポートしているわけではなく、各製品バージョンがサポートしている互換性レベルは、次の表のとおりで、未対応の互換性レベルを構成することはできません。

SQL Server サポートされている互換性レベル
SQL Server 2000 80 (SQL Server 2000)
SQL Server 2005 90 (SQL Server 2005)
80 (SQL Server 2000)
SQL Server 2008(R2) 100(SQL Server 2008)
90 (SQL Server 2005)
80 (SQL Server 2000)
SQL Server 2012 110(SQL Server 2012)
100(SQL Server 2008)
90 (SQL Server 2005)
SQL Server 2014 120(SQL Server 2014)
110(SQL Server 2012)
100(SQL Server 2008)
SQL Server 2016 130(SQL Server 2016)
120(SQL Server 2014)
110(SQL Server 2012)
100(SQL Server 2008)
SQL Server 2017 140,(SQL Server 2017)
130(SQL Server 2016)
120(SQL Server 2014)
110(SQL Server 2012)
100(SQL Server 2008)
SQL Server 2019 150 (SQL Server 2019)
140,(SQL Server 2017)
130(SQL Server 2016)
120(SQL Server 2014)
110(SQL Server 2012)
100(SQL Server 2008)

2019年7月9日で延長サポートが切れた、「SQL Server 2008 / 2008 R2」は、最新バージョンである「SQL Server 2019」での互換性レベルがサポートされているため、おおよそスムーズに移行できるでしょう。

ただし、互換性レベルが「80 (SQL Server 2000)」や「90 (SQL Server 2005)」に設定されたSQL Server 2008を使用している場合、SQL Server 2014以降ではサポートされない互換性レベルのため、そのまま移行すると、互換性がない部分でエラーが発生します。
そのため、プログラム修正などの対処が必要になってくるでしょう。

できれば規定の互換性レベルのまま移行する

「SQL Server 2008 / 2008 R2」を移行するとき、新しいSQL Serverの互換性レベルを「100(SQL Server 2008)」に設定すれば、その場はスムーズに移行が完了するでしょう。

しかし、これは問題の先送りでしかありません。

将来のSQL Serverが互換性レベル「100(SQL Server 2008)」をサポートしなくなった場合、先送りにした部分の非互換まで対応が必要となり、最悪の場合、巨額のコストを捻出できず対応ができなくなる恐れがあるかもしれません。

その為、SQL Serverをバージョンアップする際は、将来困らないために互換性レベルは変えずに、新しいバージョンに合わせて非互換を修正するほうがよいでしょう。

SQL Server の移行に関するドキュメント

【関連記事】
SQL Server 2014 延長サポートの終了日はいつ? 正しいアンインストールの方法は?

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。