2012 SQL Serverのセットアップと移行に関する既知の問題

この記事では、SQL Server 2012 のセットアップと移行に関する問題について説明します。

元の製品バージョン: SQL Server
元の KB 番号: 2681562

SQL Server 2012 に固有のセットアップと移行の問題

.NET Framework 3.5 が有効になっていない場合に発生する可能性がある 2012 SQL Serverセットアップの問題

問題 1 - 不完全な SQL フェールオーバー クラスターまたはスタンドアロン インストール

現象

.NET Framework 3.5 がまだインストールされていないサーバーまたはインターネット アクセスが制限されているサーバーでは、SQL Server 2012 インストール プログラムは、.NET Framework 3.5 に依存するコンポーネントをインストールしません。 したがって、SQL Server 2012 のインストールが不完全である可能性があります。

注:

Windows 8.1またはWindows Server 2012 R2 では、インストールを続行できません。

.NET Frameworkが有効になっていない場合、SQL Server 2012 のインストール中に次のようなエラー メッセージが表示されることがあります。

SQL Server 2012 セットアップ エラー メッセージのスクリーンショット: Windows 機能の有効化中にエラーが発生しました。

防止

この問題を回避するには、2012 SQL Serverをインストールする前に、クラスターのすべてのノードまたはスタンドアロン サーバーで.NET Framework 3.5 を有効にします。

解決策

スタンドアロン サーバーでこの問題を解決するには、.NET Framework 3.5 を有効にしてから、もう一度セットアップを実行して追加の機能を追加します。

クラスター環境でこの問題を解決するには、不完全な SQL Server 2012 インスタンスをアンインストールし、.NET Framework 3.5 を有効にしてから、2012 SQL Server再インストールします。

注:

クラスター化された環境では、SQL Server 2012 セットアップをもう一度実行してスキップされた機能を追加することはできません。

スタンドアロン サーバーでこの問題を解決するには、.NET Framework 3.5 を有効にしてから、セットアップSQL Server再度実行します。

問題 2 - ユーザーが誤って.NET Framework 3.5 をダウンロードしてインストールするように求められます

現象

ユーザーが CU1 または CU2 をインストールしようとすると、.NET Framework 3.5 をダウンロードしてインストールするように求められる場合があります。 この問題は、インストールされているコンポーネントが.NET Framework 3.5 に依存しない場合でも発生する可能性があります。

このような場合は、次のようなエラー メッセージが表示される場合があります。

.Net Framework 3.5 のインストール エラー メッセージのスクリーンショット: 次の機能をインストールできませんでした。

原因

これは、SQL Server 2012 CU1 と CU2 の既知の問題です。

注:

この問題は、SQL Server 2012 以降のバージョンの累積的な更新プログラム 3 で修正されています。

防止

この問題を回避するには、次のいずれかの操作を行います。

  • .NET Framework 3.5 を有効にし、CU1 更新パッケージまたは CU2 更新パッケージを適用し、.NET Framework 3.5 を無効にします。

    注:

    .NET Framework 3.5 に依存するコンポーネントがインストールに含まれていない場合にのみ、.NET Framework 3.5 を無効にする必要があります。

  • SQL Server 2012 および CU3 以降のバージョンを含むスリップストリーム インストール パッケージから 2012 SQL Serverインストールします。

  • 累積的な更新プログラム 3 以降のバージョンを適用します。 詳細については、「2012 年SQL Serverリリース後にリリースされた SQL Server 2012 ビルド」を参照してください。

問題 3 - サイレント インストール中に Windows アプリケーション互換モードのアラートが表示される

現象

Windows 8.1、Windows 8、Windows Server 2012 R2、Windows Server 2012、Windows 10、およびWindows Server 2016では、.NET FrameworkはFeature-On-Demand (FOD) コンポーネント。 さらに、Windows 10、Windows 8.1、Windows 8システム ポリシー、Windows Server 2016、Windows Server 2012 R2 および Windows Server 2012 システム ポリシーでは、ユーザーにアラートを送信する必要があります。FOD コンポーネントが有効になっています。

注:

既定では、.NET Framework 4.0 はWindows 8とWindows Server 2012で有効になっています。 さらに、.NET Framework 4.5 は Windows 8.1 および Windows Server 2012 R2 で有効になっており、.NET Framework 4.6 は Windows 10 および Window Server 2016 で有効になっています。 ただし、.NET Framework 3.5 は無効になっています。

そのため、サイレント インストール中に、.NET Framework 3.5 のダウンロードとインストールをユーザーに求めるプログラム互換モードの警告が表示される場合があります。 これらのプログラム互換性アラートは抑制できません。 警告のスクリーンショットを次に示します。

Windows Server 2012 R2 と Windows Server 2012 - フル サーバー

フル サーバー上の .Net Framework 3.5 インストール エラー メッセージのスクリーンショット: 次の機能をインストールできませんでした。

Windows Server 2012 R2 と Windows Server 2012 - Server Core

Windows 機能エラーを使用してロールと機能を自動的にインストールできないスクリーンショット。

防止

この問題を回避するために、ユーザーはサイレント インストールを実行する前に、.NET Framework 3.5 を有効にすることができます。

その他のSQL Server 2012 のセットアップに関する問題

問題 1: SQL Server 2012 の 2 番目のインスタンスをインストールしようとすると、.NET Framework未処理の例外が生成される可能性があります

現象

次のような状況で問題が発生します。

  • SQL Server 2012 のインスタンスをインストールします。
  • SQL Server 2012 のインスタンスをインストールすると、.NET Framework 4.0 ユーザー構成ファイルが作成されます。 さらに、.NET Framework 3.5 はインストール中に有効になります。
  • SQL Server 2012 の 2 番目のインスタンスをインストールしようとするとします。

このシナリオでは、未処理の例外が生成される可能性があります。 次のようなエラー メッセージが表示される場合があります。

userSettings/Microsoft.SqlServer.Configuration.LandingPage.Properties.Settings の構成セクション ハンドラーの作成中にエラーが発生しました:ファイルまたはアセンブリシステム、Version=4.0.0.0、Culture=neutral、PublicKeyToken=xxxxx またはその依存関係のいずれかを読み込めませんでした。 指定されたファイルが見つかりません。 (C:\Users\Administrator\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ ryspccglaxmt4nhllj5z3thycltsvyyx\11.0.0.0\user.config)

原因

Windows 8とWindows Server 2012では、.NET Framework 4.0 が既定でWindows 8とWindows Server 2012で有効になっているため、この問題が発生します。 そのため、.NET Framework 4.0 ユーザー構成ファイルは、SQL Server 2012 をインストールするときに作成されます。 さらに、.NET Framework 3.5 はインストール中に有効になります。

SQL Server 2012 の 2 番目のインスタンスをインストールしようとすると、.NET Framework 3.5 が既にインストールされているため、インストールでは .NET Framework 2.0 が使用されます。 これは、ユーザー構成ファイルの設定と競合し、ハンドルされない例外が発生します。

Windows 8.1 および Windows Server 2012 R2 では、.NET Framework 4.5 が既定で Windows 8.1 および Windows Server 2012 R2 で有効になっているため、この問題が発生します。 そのため、.NET Framework 4.5 ユーザー構成ファイルは、SQL Server 2012 をインストールするときに作成されます。 さらに、.NET Framework 3.5 はインストール中に有効になります。

SQL Server 2012 の 2 番目のインスタンスをインストールしようとすると、.NET Framework 3.5 が既にインストールされているため、インストールでは .NET Framework 2.0 が使用されます。 このユーザー構成の設定と競合すると、未処理の例外が発生します。

Windows 10とWindows Server 2016では、.NET Framework 4.6 が既定で有効になっているため、この問題が発生します。 そのため、.NET Framework 4.6 ユーザー構成ファイルは、SQL Server 2012 をインストールするときに作成されます。 さらに、.NET Framework 3.5 はインストール中に有効になります。

SQL Server 2012 の 2 番目のインスタンスをインストールしようとすると、.NET Framework 3.5 が既にインストールされているため、インストールでは .NET Framework 2.0 が使用されます。 これは、ユーザー構成ファイルの設定と競合し、ハンドルされない例外が発生します。

防止

この問題を回避するには、SQL Server 2012 の 2 番目のインスタンスをインストールする前に、次のフォルダー内のUser.configファイルを削除します。

%userprofile%\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ryspccglaxmt4nhllj5z3thycltsvyyx\11.0.0.0

解決策

注:

この問題は、Microsoft SQL Server 2012 Service Pack 1 (SP1) で修正されています。

最初のインスタンスに Service Pack 1 が既にインストールされている場合、この問題は発生しません。 最初のインスタンスに Service Pack 1 をインストールできない場合は、次のいずれかの操作を行います。

  • 2 つ目の SQL Server 2012 インスタンスは、SQL Server 2012 および Microsoft SQL Server 2012 Service Pack 1 を含むスリップストリーム インストール パッケージからインストールします。 新しいインスタンスをインストールした後、2012 Service Pack 4 以降の更新プログラムSQL Server適用する必要があります。 詳細については、「SQL Server 2012 の最新の Service Pack を入手する方法」を参照してください。

  • SQL Server 2012 SP4 ファイルを使用してパッチを適用し、2012 SQL Serverインストールします。

    • SQL Server 2012 RTM がインストールされていないコンピューターでは、次の手順を実行します。

      1. 2012 SP4 SQL Serverダウンロードしてインストールします。

      2. [ ライセンス条項 ] 画面で、[ ライセンス条項に同意する ] チェック ボックスをオンにし、[ 次へ] を選択します。

        注:

        セットアップ ファイルがインストールされ、インストール ウィザードが自動的に閉じます。

      3. インストールを確認します。 これを行うには、[ プログラムの追加と削除] を開始し、次のものが一覧表示されていることを確認します。

        • Microsoft SQL Server 2012 セットアップ、バージョン 11.0.7001.0
        • Microsoft Visual C++の 2 つのエントリ。
    • SQL Server 2012 RTM の既存のインスタンスを持つコンピューターで、

      1. 2012 SP4 SQL Serverダウンロードしてインストールします。

      2. SP4 ファイルをローカル フォルダーに抽出します。 たとえば、SP4 ファイルを c:\sp4 に抽出します。

        注:

        このシナリオでは、2012 SP4 セットアップSQL Server実行できません。

      3. SP4 ファイルを抽出したフォルダーで、[ SqlSupport.msi ] をダブルクリックし、[ はい] を選択します。

      4. インストールを確認します。 これを行うには、[プログラムの追加と削除] を開始し、Microsoft SQL Server 2012 セットアップバージョン 11.0.7001.0 が一覧表示されていることを確認します。

        注:

        [SQL Server 2012 SP4 ダウンロード] ページの [インストール手順] セクションを確認して、サーバーの正しいダウンロードを確認します。

問題 2: Windows Server 2012 R2 または Windows Server 2012 でファイル Stream共有機能が有効になっている SQL Server 2012 フェールオーバー クラスターをインストールできません

現象

Windows Server 2012で共有機能が有効になっている新しい SQL Server 2012 フェールオーバー クラスターFileStreamをインストールしようとすると、次のようなエラー メッセージが表示されることがあります。

リソース 'SQL Server Filestream 共有 (FILESTREAM)' の値 'System.Byte[]' にプライベート プロパティ 'Security0x20Descriptor' を設定中にエラーが発生しました。 エラー: プロバイダーからクラスター コードを呼び出すエラーが発生しました。 例外メッセージ: 見つかりません。

原因

この問題は、セキュリティ記述子プロパティのサポートがWindows Server 2012で削除されたために発生します。

防止

この問題を回避するには、共有機能を有効にせずにフェールオーバー クラスターを FileStream インストールします。 インストールが完了したら、共有機能を FileStream 有効にします。

解決策

注:

この問題は、Microsoft SQL Server 2012 Service Pack 1 (SP1) で修正されています。

この問題を解決するには、[ プログラムの追加と削除] を使用して失敗したクラスター インスタンスをアンインストールし、共有機能を有効にせずにフェールオーバー クラスターを FileStream インストールします。 インストールが完了したら、共有機能を FileStream 有効にします。

問題 3: SQL Server 2012 のインストール中にエラーが発生しました:"正しくない形式のプログラムを読み込もうとしました"

現象

次のような状況で問題が発生します。

  • 64 ビット バージョンのWindows 10、Windows 8.1、またはWindows 8をインストールします。
  • SQL Server 2012 を Windows on-Windows (WoW) モードでインストールしようとするとします。
  • SQL Server 2012 のインストールには、Reporting Servicesが含まれています。

このシナリオでは、インストールが失敗します。 さらに、次のようなエラー メッセージが表示されます。

0x8007000Bで操作が失敗しました
正しくない形式のプログラムを読み込もうとしました。

操作に失敗したエラー メッセージのスクリーンショット。

防止

この問題を回避するには、2012 SQL Serverインストールする前に、サーバー マネージャーを使用して IIS ASP.NET 3.5 コンポーネントをインストールします。 詳細については、「Windows 8またはWindows Server 2012で ASP.NET 4.5 をアンインストールした後、ASP.NET 2.0 と ASP.NET 3.5 が機能しない」を参照してください。

問題 4: SQL Server 2012 Enterprise Edition フェールオーバー クラスター インスタンスをインストールできない

現象

次のような状況で問題が発生します。

  • 次のいずれかの操作を行います。

    • SQL Server 2012 と CU1 を含むスリップストリーム インストール パッケージを作成します。
    • 2012 SQL Serverをインストールする前に、CU1 を使用してプレパッチを適用します。
  • SQL Server 2012 をインストールする場合は、UIMODE=EnableUIOnServerCore オプションを使用します。

    このシナリオでは、インストールが失敗します。 次のようなエラー メッセージが表示されます。

    Windows Server Core でサポートされている機能チェックが失敗したことを示す [機能ルール] ページのスクリーンショット。

    エラーの詳細は次のようになります。

    [ルールチェック結果] ダイアログのエラーの詳細を示すスクリーンショット。

原因

この問題は、インストール中に DQ 機能が Engine コンポーネントと共に暗黙的に選択されるために発生します。

注:

この DQ 機能は、Server Core モードではサポートされていません。

Resolution

注:

この問題は、SQL Server 2012 RTM CU3 および SQL Server 2012 Service Pack 1 で修正されています。

この問題を解決するには、次のどちらかを行います。

  • SQL Server 2012 および CU3 を含むスリップストリーム インストール パッケージを作成します。
  • CU3 インストール パッケージを実行して、セットアップ サポート ファイルに事前パッチを適用します。

問題 5: クラスター ノードを SQL Server 2012 にアップグレードしようとするとエラー メッセージが表示される: "リソース 'SQL Network Name (<SQL Name>) の共通プロパティを保存できませんでした"

この問題とその解決方法の詳細については、クラスター ノードを SQL Server 2012 にアップグレードしようとすると、「リソース 'SQL Network Name ()' の一般的なプロパティを保存できませんでした」エラーを参照してください。

問題 6: OpenSQLFileStream API を使用する場合のエラー メッセージ:"System.ComponentModel.Win32Exception (0x80004005): 要求はサポートされていません。

現象

次のような状況で問題が発生します。

  • Windows Server 2012を実行しているサーバー SQL Server 2008 R2 のインスタンスをインストールします。
  • SQL Server 2008 R2 のインスタンスを SQL Server 2012 Service Pack 1 (SP1) にアップグレードします。
  • API を使用します OpenSQLFileStream

この場合に、次のようなエラー メッセージが表示されます。

System.ComponentModel.Win32Exception (0x80004005): 要求はサポートされていません。

原因

この問題は、SQL Server 2012 アップグレードで次のレジストリ キーが誤って削除されるために発生します。

HKEY_LOCALMACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters\FsctlAllowList\FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT

回避策

この問題を回避するには、レジストリ エディターを使用して、次のレジストリ キーを再作成します。

 HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\FsctlAllowList
 Dword: FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT
 Value: 0x92560

関連項目