web-dev-qa-db-ja.com

SQL Server 2012 SP1からSQL Server 2019へのアップグレード

職場で内部データベースをアップグレードしています。新しいVMそれをホストするために作成しています。

サーバーバージョンSQL Server 2019のSQL Server 2012 SP1データベースをエクスポートするスクリプトを生成するオプションが表示されません。

  • 現在のデータベースサーバーでSQL Server 2012からSQL Server 2019へのアップグレードパスに従い、アップグレードが完了したらデータベースを新しいサーバーにエクスポートします。

または

  • SQL Server 2012からデータベースをそのままエクスポートし、利用可能な最高のサーバーバージョン(2017)用にスクリプトを作成します。

SQL Server 2012 SP4をインストールした場合、サーバーバージョンのSQL Server 2019のスクリプトを作成するオプションはありますか?

よろしくお願いします。

4
Bingobango

このMicrosoftの便利なページは、移行の実行方法と利用可能なツールと方法を詳細に説明しているため、非常に役立つはずです。 SQL Server 2019のサポートされているバージョンとエディションのアップグレード

データ 移行アシスタント(DMA) を使用してデータベースをスキャンし、2019サーバーに移行できることを確認します。移行する前に解決する必要がある、廃止予定の機能などの潜在的なブロッキングの問題が強調表示されます。

ただし、完全にサポートされるようにするには、SQL Server 2012をSP4にアップグレードする必要があります。

10
KevH

通常は...

  1. 古いSQL Serverインスタンスで単純な SQL Serverデータベースバックアップ を実行する(またはTransact-SQLコマンド BACKUP を使用)
  2. データベースバックアップ(* .BAKファイル)を新しいSQL Serverインスタンスにコピーします。
  3. SQL Server Management Studio (SSMS)またはTransact-SQLコマンド RESTORE DATABASE ... を使用してデータベースを復元します。

新しいインスタンスでのデータベースの復元中に、データベースは新しいデータベースバージョンに自動的に変換されます。

SQL Server 2005(9.x)以降のデータベースをSQL Server 2019(15.x)に復元すると、データベースは自動的にアップグレードされます。通常、データベースはすぐに使用可能になります。ただし、SQL Server 2005(9.x)データベースにフルテキストインデックスがある場合、アップグレードプロセスでは、upgrade_optionサーバープロパティの設定に応じて、それらをインポート、リセット、または再構築します。アップグレードオプションがインポート(upgrade_option = 2)または再構築(upgrade_option = 0)に設定されている場合、アップグレード中はフルテキストインデックスを使用できません。インデックスが作成されるデータの量によっては、インポートに数時間かかる場合があり、再構築には最大で10倍かかる場合があります。アップグレードオプションがインポートに設定されている場合、フルテキストカタログが利用できない場合、関連するフルテキストインデックスが再構築されることにも注意してください。 upgrade_optionサーバープロパティの設定を変更するには、sp_fulltext_serviceを使用します。

参照:データベースを新しい場所に復元(SQL Server) (Microsoft | SQLドキュメント)

重要

SQL Serverログイン用のスクリプトを作成することを忘れないでください。このスクリプトを使用して、新しいインスタンスでスクリプトを再作成できます。これを行う方法については、記事 SQL Serverのインスタンス間でログインとパスワードを転送する方法 (Microsoftサポート)を参照してください。

7