AccessのデータをクラウドのAzure SQL Databaseへ移行することは可能?

最終更新日:2026年8月6日

はじめに

項目 Microsoft Azure AWS Google Cloud
シェア(国内) 約30% 約35% 約15%
強み Microsoft製品連携 サービス数・実績 データ分析・AI
無料枠 12ヶ月無料 12ヶ月無料 常時無料枠あり
主な資格 AZ-900 / AZ-104 CLF / SAA ACE / PCA

業務システムやECサイト等のWebサービス、スマホアプリ、ゲームといまやデータベースは様々な分野で欠かせないITシステムの一つとなっています。データベースには大きく分けて階層型、ネットワーク型、リレーショナル型、NoSQL型の4種類があり、これらカテゴリーの中に特徴の異なった様々なデータベース製品が複数存在します。システムに採用されるデータベースはリレーショナル型が主流であり、NoSQL型も徐々に増加傾向にある状況です。リレーショナルデータベースとして有名なものとしてはオープンソースのMySQLやPostgreSQL、商用として利用されるOracle、Microsoft SQL Server、そして今回取り上げる小規模データ向けの「Microsoft Access」等が挙げられます。

また近年は仮想マシンやストレージをはじめとした様々なサービスがクラウド上で運用されていますが、データベースもその一つとなっています。クラウド上のデータベースサービスに関しては各社がそれぞれ1つではなく用途に合わせて複数のものを提供している状況で、今回取り上げる「Azure SQL Database」はMicrosoftのクラウドサービスであるAzureが提供しているデータベースサービスの一つとなります。

この記事ではMicrosoft AccessとAzure SQL Databaseのサービス概要を紹介したうえで、AccessのデータをAzure SQL Databaseに移行する方法やそのメリットについて紹介していきます。Azureやクラウドサービスについて総合的に学習している方、これから自社において実際にMicrosoft AccessからAzure SQL Databaseへの移行が必要となっている方、Accessを利用したオンプレミス環境下のデータをクラウドへ移行したいと思っている方はぜひご覧ください。

この記事でわかること

  1. Azureで提供されている各種データベースサービスとSQL Databaseについて
  2. Accessはデータベースソフトウェアの一つ
  3. AccessのデータをAzure SQL Databaseに移行するためには?
  4. この記事のポイント
  5. よくある質問
  6. 関連記事
  7. まとめ

Azureで提供されている各種データベースサービスとSQL Databaseについて

Azureには「Azure SQL Database」含め「Azure Cosmos DB」「Azure Database for PostgreSQL」「Azure Database for MySQL」の主要なデータベースサービスがあります。Azure SQL Databaseについて紹介する前にその他のデータベースについて簡単に紹介します。

要注意:かつて提供されていた「Azure Database for MariaDB」は2025年9月19日に廃止(提供終了)されました。既存の同サービスをご利用の方は、Microsoft公式の案内に従い「Azure Database for MySQL フレキシブルサーバー」等の代替サービスへの移行が必要です。

Azure Cosmos DBはオープンソースのPostgreSQL、MongoDB、Apache Cassandraを利用できる分散型のNoSQLサービスです。99.999%の可用性を持ち、自動かつ即時のスケーラビリティに対応しているうえ、 10ミリ秒未満の読み書きが可能となっています。また言語としてJava、Node.js、Python、.NET および JavaScriptの利用が可能です。Azure Database for PostgreSQLはフルマネージドのリレーショナルデータベースであり、データベースエンジンとしてオープンソースの「PostgreSQL」を使っています。高可用性、スケーラビリティ、セキュリティ、コンプライアンスに優れていることが特徴で、機能としては自動バックアップ、自動チューニング、監視機能等が可能となっています。

Azure Database for MySQLは名称にある通りデータベースエンジンとしてオープンソースの「MySQL」を使用しており、その他はAzure Database for PostgreSQLと似た特徴を持つサービスです。スケーラブルなeコマースやモバイル・Webアプリ、財務管理アプリ、レイテンシーの低いゲームの開発等に適しています。

またデータベース関連サービスとして「Azure Cache for Redis」というキャッシュサービスもあります。RedisはKVS(Key-Value Store)型のNoSQLデータベースですが、メモリ上で動作するためデータを長期的に保存するのには向いておらず、動作を高速化するためのキャッシュとして利用される傾向にあります。データベースとアプリケーションの間で動作することで高速な読み書きや分散処理をサポートします。

Azure SQL Databaseの特徴

以上のようなデータベースサービスがある中、Azure SQL DatabaseはMicrosoftの提供する「SQL Server」を使い、クラウド上で常に最新バージョンのSQLを利用できるという特徴があります。オンプレミスで利用できるSQL Serverはリリース後12か月まで毎月更新、その後は隔月で更新という更新プログラムとなっているのに対し、Azure SQL DatabaseはフルマネージドなサービスとなるためAzure側で自動的に更新が行われ、常時最新の状態で利用できるという状況です。SQL Serverのバージョンアップについても同様のことが言えます。そのため特定バージョンのサポート終了等に合わせてオンプレミスで行うことがあるように、メンテナンスを組んでエンジニアによるバージョンアップを実施するという必要がありません。

さらにサービスのメンテナンス操作や停止による影響を最小限に留めており、SLAとして公表している可用性は99.9%となっています。パッチの適用やバックアップ、各種サービスタスクはもちろんのこと、ハードウェア、ソフトウェア、ネットワークにおけるエラーも自動的に処理することが可能となっています。バックアップについては毎週の完全バックアップと12〜24時間ごとの差分バックアップ、5〜10分ごとのトランザクションログバックアップの3パターンによって取得されます。これによりクリティカルなインシデントが発生しても故障直前の状態、またはある時点の状態までリカバリが可能です。

3つの中から適切なデプロイオプションを選択できるのもAzure SQL Databaseの特徴です。専用のリソースを持つことができる単一データベースはスケーリングができるので、リクエスト数の変動が頻繁なことがあらかじめ想定されるシステムで利用するのが適しています。

エラスティックプールはプールという枠組みに複数のデータベースを追加することで、単一のデータベースであるかのように運用できるオプションです。プールから特定のデータベースのみを切り離すことも可能で、必要最低限のコストに抑えるために柔軟なスペック変更をしたい場合に適しています。

もう一つのManaged Instanceは多くのSQL Serverデータベースエンジンと互換性を持ち、最新のSQL Server(Enterprise Edition)との互換性は限りなく100%に近い状況となっています。そのためオンプレミスで運用しているSQL Serverを使ったシステムにおいては、アプリケーションやデータベースに多くの変更を加えることなく移行できる可能性が高いです。なおManaged Instanceに関しては、Azureの公式サイト内でAzure SQL Databaseとは別サービスとして紹介されています。

料金はその他ほとんどのAzureと同様に従量課金制で、購入モデルやサービスレベル、ハードウェアの種類、リージョンによって変わります。

まず購入モデルにおいてはvCore(仮想コア)とDTU(Database Transaction Unit)の2種類があり、vCoreの場合は処理能力とストレージをユーザー側でそれぞれ選択できます。またvCoreかつ単一データベースの場合はコンピューティングレベルも「サーバーレス」「プロビジョニング済み」から選択できるようになります。サービスレベルはバランス型の「汎用」、障害発生時の回復を重視した「Business Critical」、柔軟なスケーリングに適した「ハイパースケール」の中から選択可能です。ハードウェアの種類やプランの詳細は変更される可能性があるため、最新情報はAzure公式サイトでご確認ください。

一方のDTUは処理能力とストレージがセットとなったプランが用意されており、ハードウェアの種類も選択できません。具体的なプラン内容(ストレージサイズやバックアップ保有期間)は変更される可能性があるため、公式サイトで最新情報をご確認ください。

リージョンに関してはvCore、DTUいずれの場合も日本であれば東日本・西日本から選択が可能です。またこれら料金の他、各種ストレージの追加や長期保存をしたい場合の料金は別途発生します。Managed Instanceに関してはその中でさらに単一データベース、エラスティックプールを選択できるようになっています。単一の場合はハードウェアの種類(Standard、Premium、Premium メモリ最適化)、サービスレベル(汎用、Business Critical)、リージョンの選択が可能で、エラスティックプールの場合はリージョンのみ選択可能です。

最後に紹介するAzure SQL Databaseの特徴は監視機能があるという点です。監視はどんなシステム運用をするにしても稼働を継続させるために欠かせないため、基本的にはメインのシステムとは別で監視サービスを構築することが多いです。しかしAzure SQL Databaseにおいては「Query Performance Insights」という監視機能が付与されています。この機能を利用するとリソースの消費量状況や実行回数の多い上位のクエリ情報といったパフォーマンス監視の他、AI・機械学習が搭載されているためデータに基づいた自動でのパフォーマンスチューニングも行ってくれます。一般的にデータベースのパフォーマンス監視やチューニングはエンジニアの工数を消費しやすく、専門的な深い知識が必要とされますが、Query Performance Insightsによって運用・監視におけるエンジニアの工数を大幅に削減できる可能性があります。

オンプレミスのSQL Serverとの相違点

大きな違いは、これまでも紹介してきたようにオンプレミスのSQL Serverでユーザー側が行わなければならないアップグレードやバックアップ、トラブルシュートを、Azure SQL DatabaseではAzure側が管理してくれるという点が挙げられます。しかしオンプレミスの場合は様々なメンテナンスパッケージがあるため、社内で独自の規程がある、クライアントとの取り決めがあるという状況でそれらに厳密に合わせたメンテナンスが必要という場合は敢えてオンプレミスで運用するというのも一つの方法になります。

料金に関してもSQL Serverは機器やソフトウェアの購入、ライセンス料という部分に発生し、Azure SQL Databaseは使用量に対して発生するため異なります。クラウドサービスは臨機応変なスケーリングによって無駄なコストをかけずに済む仕組みとなっていますが、使用している限り大なり小なり料金が発生し続けるため、長期利用する場合はオンプレミスの場合よりコストが多くかかる可能性もあります。そのため、あらかじめ将来的なコストを見積もったうえで移行することをおすすめします。

Azureには料金計算ツールがWeb上で提供されており、光熱費や人件費、センターの維持費用等も含めて詳細な見積もりを行いたい場合に活用できます。(なお、以前提供されていた「総保有コスト(TCO)計算ツール」は既に提供終了しています。)ぜひ状況に応じて活用し、将来的なコストを見据えたうえでオンプレミス環境からの移行を検討しましょう。

なおAzure SQL Databaseにはクラウドサービスならではの制限がありますが、「Hyperscaleサービスレベル」をオプションとして選択することで最大100TBまでのサイズが利用可能となったり、瞬時のバックアップやリストア、一定時間のスケールアップ/スケールダウンが可能となります。

Accessはデータベースソフトウェアの一つ

Accessは1992年のリリースから長い間継続して提供されており、買い切り版の最新バージョンは「Access 2024」です(Access 2021、2019、2016等の旧バージョンも存在します)。各バージョンのサポート終了はあるもののサービス自体の終了は今のところアナウンスされている様子がないので、今後もしばらくは提供が継続すると見られます。Microsoft 365サブスクリプションを利用すれば、常に最新バージョンのAccessを利用できます。

インストールされていればパソコンでも利用できるため、業務システム等で利用したことがあるという人もいるのではないでしょうか。なおOfficeやExcel等と同様にMicrosoft製品の一つでありGUIでの操作が可能なため、もしかしたら特にデータベースであったとは知らず何らかの入力システムの一つとして利用していた人もいることでしょう。

しかしAccessは正真正銘のリレーショナルデータベースシステムの一つであり、テーブルやクエリ、フォーム、レポートといったオブジェクトを使って表形式でデータの管理ができます。なおAccessには最大2GBまでのデータを保存でき、レコードの件数に上限はありません。ストレージがTBということも珍しくない中2GBというのは少なく感じるかもしれませんが、Accessに保存されるのは基本的にテキストデータであるため大規模のシステムでなければ十分に利用可能である容量と言えます。

Accessでは内部のデータを集計したり複数のテーブルを結合したりということが可能です。また帳票、リスト、ラベルといった様々な形式でレイアウトをしたうえでの印刷をすることも可能です。通常のデータベースは無機質にデータが並べられているだけなので慣れていない人は非常に見づらい状態となっていますが、Accessを利用すると可視化できることでより多くの人がデータを業務に使えるようになります。

データベースシステムの構築も難しくはなく、サンプルテンプレートも用意されています。そのためデータベースであるということを意識せずとも、例えば顧客管理や社員管理、販売や在庫管理ツールの一つとして利用することができます。さらにフォームを利用することで、アプリケーションでデータの追加等を行うための入力フォームを作成することも可能です。もちろん通常のデータベースと同様にデータの追加・更新・削除・参照も問題なくできます。

なお同じMicrosoft製品であるExcelで表(データベースで言うテーブル)が作成できるのはご存知かと思いますが、実はデータベースとして利用することもできます。ただし基本的には表計算ソフトとして提供されていて入力文字数や行・列数、型の指定がないというように本来のデータベースシステムとしては不十分であるため、少なくとも現段階では簡易的なデータベースとしての利用が可能と覚えておいた方が良いでしょう。

AccessのデータをAzure SQL Databaseに移行するためには?

移行方法について紹介する前に、移行先としてオンプレミスのSQL ServerではなくAzure SQL Databaseを選択することによるメリットを見ていきましょう。1つはデータベースの容量を気にしなくて済むようになるということが挙げられます。Accessの容量上限は2GBですが、Azure SQL Databaseの場合は特に上限の設定がされていません。料金に関しては別途考慮しなければなりませんが、少なくとも容量不足によりシステムの継続が不可になるということはありません。

2つ目は素早く簡単にデータベースの運用を開始できるという点が挙げられます。SQL Serverの方がカスタマイズ性には優れているものの、Azure SQL Databaseの方が利用を開始するまでのスピードが遥かに早いです。SQL Serverの場合はサーバーの構築や環境設定を行ったうえでSQL Server上での様々な設定を行う必要があります。データベースに関する知識が浅い場合はセキュリティリスクを背負ったままサービスを運用することにもなりかねません。対してAzure SQL Databaseは、Azureコンソールから対象の画面にアクセスし、用意されたメニューから名前、サブスクリプション、サービス等を順に選択・入力するだけで、後は自動でデータベースシステムが構築されます。またAccessにテンプレートがあることを述べましたが、Azure SQL Databaseにも豊富なテンプレートが用意されているためプログラミングの知識がないとしてもデータベースの構築・運用が可能となります。

無料枠が利用できることでのコスト削減も望めるでしょう。Azureは無料アカウントの作成をするだけで65以上のサービスが常時無料で利用できる他、クレジットを一定期間利用して様々なAzureサービスの申し込みに使えるようになります。また、Azure SQL Databaseを含めたAzure Virtual Machines、Load Balancer等の代表的なサービスは12ヶ月間無料で利用できます。具体的な無料枠の内容(対象プラン・容量等)は変更される可能性があるため、最新情報はAzure公式サイトでご確認ください。

移行方法

移行方法は至ってシンプルですが移行前にソース環境がサポートされていること、ソースとターゲットいずれもアクセスが可能な権限状態になっていることを確認したうえでSSMA(SQL Server Migration Assistant for Access)のインストールを行ってください。

事前確認・準備が完了したらSSMAでプロジェクトを作成し、必要に応じて各種プロジェクトオプションの設定をします。そのプロジェクトにAccessデータベースファイルを追加します。

次にHTMLレポートの作成をし、変換の統計情報やエラー・警告が出ていないかを確認しましょう。移行作業における作業量もこの時に確認できます。必要に応じてデータ型の検証も行いましょう。

続いて移行先のSQL Databaseに関する情報を入力して実際に接続し、AccessのデータをSQL Database用にするためにスキーマの変換を行います。もし問題が発生したら画面上で確認のうえ都度修正が必要となります。以上の評価が完了したら移行を開始します。データ移行先のデータベースを右クリックして「データベースと同期する」をクリックし、ソースプロジェクトやターゲットの間のマッピングを確認しましょう。移行したい項目(全体を移行することも可能)にチェックを入れ、データベースもしくはオブジェクトを右クリックしてさらに「データの移行」をクリックしてください。

移行が完了したらデータ移行レポートを確認後にデータベースに接続して、問題ないことが確認できたら全ての作業が完了となります。また実際にシステムと連携しても問題なくデータの参照等が行えているかも確認することをおすすめします。

この記事のポイント

  • Azure SQL Databaseはフルマネージドで自動更新・自動バックアップに対応し、単一データベース/エラスティックプール/Managed Instanceの3つのデプロイオプションから選択できる
  • Accessの容量上限(2GB)を超える成長が見込まれる場合、Azure SQL Databaseへの移行でストレージ制約から解放される
  • 移行にはSSMA(SQL Server Migration Assistant for Access)を利用することでスムーズにスキーマ変換・データ移行が可能
  • 「Azure Database for MariaDB」は2025年9月19日に廃止済み、「総保有コスト(TCO)計算ツール」も提供終了済みのため、本記事の情報を参考にする際は必ず最新のAzure公式情報を確認すること

よくある質問

Q. AccessからAzure SQL Databaseへの移行に専門知識は必要ですか?
A. SSMA(SQL Server Migration Assistant for Access)を使うことでスキーマ変換やデータ移行の多くが自動化されますが、移行前のデータ型検証やエラー・警告の確認など、一定のデータベース知識があるとスムーズです。
Q. Azure SQL DatabaseとAzure Database for MySQL/PostgreSQLはどう使い分ければよいですか?
A. Microsoft製品との親和性やSQL Server互換性を重視する場合はAzure SQL Database、オープンソースのMySQL/PostgreSQLをそのまま使いたい場合はそれぞれ対応するAzureマネージドサービスを選ぶのが一般的です。
Q. 移行後にAccess側のフォームやレポートはどうなりますか?
A. SSMAはデータとスキーマの移行が対象で、AccessのフォームやレポートといったUI資産はそのまま移行されません。移行後のフロントエンドは別途Power AppsやWebアプリケーション等で再構築する必要があります。

まとめ

Microsoft AccessからAzure SQL Databaseへのデータ移行はオンプレミスからクラウドサービスへの移行となるため、移行後はスケーラビリティや、マネージドなシステム上で運用することでのエンジニアの負担軽減・コスト削減といったクラウドのメリットを十分に享受できる有効な手段と言えます。

AccessはMicrosoft製品として1992年から30年以上にも渡って提供されているサービスであるため使い慣れている人が多く、GUIで管理できるのでコマンド操作に慣れていない場合でもある程度直感的に利用できるサービスです。しかしその一方で大規模なシステムでの利用には向いているとは言えず、規模が拡大する場合は別のデータベースサービスを探す必要があります。Azure SQL Databaseは同じMicrosoftのサービスであり、フルマネージドであるうえに高可用性、スケーラビリティ、セキュリティに優れているためAccessの移行先として適した環境の一つと言えます。

現在オンプレミスにおいてMicrosoft Accessのデータベースを利用している方は、ぜひ今回の記事を参考にして、Azure SQL Databaseの仕様を十分に把握したうえで移行先サービスとして検討してみてはいかがでしょうか。

▼ アクロビジョンについて

👔

一緒に働きましょう

一人ひとりのキャリアに向き合い、
活躍できる現場をご紹介します。

採用サイトを見る →
💻

システム開発のご依頼・ご相談

コンサルティングから運用保守まで、
ワンストップで対応します。

まずはお気軽にご相談ください →