SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

データベース管理者向けの SQL Server 2008 R2 3 つの新機能

one comment

Books Online や Web で SQL Server 2008 R2 の新機能の情報を収集していて、SQL Server 2008 R2 でメジャーな新機能以外に
いくつかデータベース管理者向けの新機能があったので検証してみました。

以下のブログで新機能がまとめられており、こちらの情報がとても参考になります。
INF: New SQL Server features in SQL Server 2008 R2 ? Part 1
INF: New SQL Server features in SQL Server 2008 R2 ?Part 2

  1. SQL Server 2008 R2 Express Edition のデータベース上限の変更
  2. SQL Server 2008 Express Edition までは、データベースの上限は [4GB] となっていました。
    image?

    SQL Server 2008 R2 Express Edition では、データベースの上限が [10GB] に変更となりました。
    image?

    Books Online には以下のように記載されています。

    SQL Server Express でサポートされるデータベースの最大サイズが 4 GB から 10 GB に引き上げられました。

    # ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.ja/s10de_0evalplan/html/8f625d5a-763c-4440-97b8-4b823a6e2439.htm

  3. Standard Edition でバックアップ圧縮をサポート

    SQL Server 2008 でバックアップ圧縮の機能が追加されました。
    ただし、使える Edition は [Enterprise Edition のみ] となっていました。

    SQL Server 2008 Standard Edition でバックアップ圧縮を使ったデータベースアックアップを取得しようとすると以下のエラーとなります。

    print @@version

    BACKUP DATABASE [master] TO? DISK = N’C:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008STDMSSQLBackupmaster.bak’ WITH NOFORMAT, NOINIT,
    NAME = N’master-完全 データベース バックアップ’, SKIP, NOREWIND, NOUNLOAD, COMPRESSION,? STATS = 10
    GO

    Microsoft SQL Server 2008 (SP1) – 10.0.2746.0 (X64)
    ??? Nov? 9 2009 16:37:47
    ??? Copyright (c) 1988-2008 Microsoft Corporation
    ??? Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: ) (VM)

    メッセージ 1844、レベル 16、状態 1、行 1
    BACKUP DATABASE WITH COMPRESSION は Standard Edition (64-bit) ではサポートされません。
    メッセージ 3013、レベル 16、状態 1、行 1
    BACKUP DATABASE が異常終了しています。

    ?

    それでは SQL Server 2008 R2 Standard Edition で同様の処理を実行してみます。

    print @@version

    BACKUP DATABASE [master] TO? DISK = N’C:Program FilesMicrosoft SQL ServerMSSQL10_50.SQL2008R2STDMSSQLBackupmaster.bak’ WITH NOFORMAT,
    NOINIT,? NAME = N’master-完全 データベース バックアップ’, SKIP, NOREWIND, NOUNLOAD, COMPRESSION,? STATS = 10
    GO

    Microsoft SQL Server 2008 R2 (RTM) – 10.50.1600.1 (X64)
    ??? Apr? 2 2010 15:48:46
    ??? Copyright (c) Microsoft Corporation
    ??? Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: ) (Hypervisor)

    10 パーセント処理されました。
    21 パーセント処理されました。
    31 パーセント処理されました。
    40 パーセント処理されました。
    50 パーセント処理されました。
    61 パーセント処理されました。
    71 パーセント処理されました。
    80 パーセント処理されました。
    90 パーセント処理されました。
    データベース ‘master’ の 376 ページ、ファイル 2 のファイル ‘master’ を処理しました。
    100 パーセント処理されました。
    データベース ‘master’ の 4 ページ、ファイル 2 のファイル ‘mastlog’ を処理しました。
    BACKUP DATABASE により 380 ページが 0.390 秒間で正常に処理されました (7.612 MB/秒)。

    Standard Edition でもバックアップ圧縮のオプションを設定しても正常にバックアップができています。
    バックアップは常に使用する機能ですので、Standard Edition でバックアップ圧縮が使えるようになったのはうれしいですね。
    Standard Edition でリソースガバナーを使うことができませんので、バックアップ中の CPU の利用状況の制限に関してはできません。

    こちらも Books Online に記載されています。

    バックアップ圧縮は SQL Server 2008 Enterprise で導入されました。
    SQL Server 2008 R2 以降、バックアップ圧縮は SQL Server 2008 R2 Standard 以上のエディションでサポートされています。
    圧縮されたバックアップは、SQL Server 2008 以降の各エディションで復元できます

    # ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.ja/s10de_4deptrbl/html/05bc9c4f-3947-4dd4-b823-db77519bd4d2.htm
    ?

  4. 共有フォルダにデータベースを配置

    SQL Server 2008 R2 では [共有フォルダにデータベースを配置] することが可能となりました。

    SQL Server 2008 で共有フォルダにデータベースを作ろうとすると以下のようなエラーとなります。

    CREATE DATABASE [TEST] ON? PRIMARY
    ( NAME = N’TEST’, FILENAME = N’127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10.SQL2008EXPRESSMSSQLDATATEST.mdf’ , SIZE = 3072KB , FILEGROWTH = 1024KB )
    LOG ON
    ( NAME = N’TEST_log’, FILENAME = N’127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10.SQL2008EXPRESSMSSQLDATATEST_log.ldf’ , SIZE = 1024KB , FILEGROWTH = 10%)
    GO

    メッセージ 5110、レベル 16、状態 2、行 1
    ファイル "127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10.SQL2008EXPRESSMSSQLDATATEST.mdf" が存在するネットワーク パスは、データベース ファイルでサポートされません。
    メッセージ 1802、レベル 16、状態 1、行 1
    CREATE DATABASE が失敗しました。一覧されたファイル名の一部を作成できませんでした。関連するエラーを確認してください。

    SQL Server 2008 R2 で実行すると正常に作成することが可能です。
    # Express Edition でも配置することが可能でした。

    CREATE DATABASE [TEST] ON? PRIMARY
    ( NAME = N’TEST’, FILENAME = N’127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10_50.SQL2008R2EXPRESSMSSQLDATATEST.mdf’ , SIZE = 3072KB , FILEGROWTH = 1024KB )
    LOG ON
    ( NAME = N’TEST_log’, FILENAME = N’127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10_50.SQL2008R2EXPRESSMSSQLDATATEST_log.ldf’ , SIZE = 1024KB , FILEGROWTH = 10%)
    GO

    コマンドは正常に完了しました。

    共有フォルダへのアクセスですが、[SQL Server のサービスアカウント] で実行されます。
    共有フォルダへアクセスできない場合は、以下のエラーになります。

    メッセージ 5133、レベル 16、状態 1、行 1
    オペレーティング システム エラー 5(アクセスが拒否されました。) により、ファイル "127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10_50.SQL2008R2EXPRESSMSSQLDATATEST.mdf" のディレクトリ参照に失敗しました。
    メッセージ 1802、レベル 16、状態 1、行 1
    CREATE DATABASE が失敗しました。一覧されたファイル名の一部を作成できませんでした。関連するエラーを確認してください。

    データベースの新規作成だけでなく、アタッチもすることができます。

    CREATE DATABASE TEST
    ON (FILENAME = N’127.0.0.1c$Program FilesMicrosoft SQL ServerMSSQL10_50.SQL2008R2EXPRESSMSSQLDATATEST.mdf’)
    FOR ATTACH

    クラスタの場合はこのようなエラーになります。
    クラスタの場合、共有フォルダではなく物理ディスクを使う必要があるようですね。
    # クラスタの共有ディスクに共有フォルダを設定しています。
     クラスタリソースの仮想コンピュータに関しては、[IPアドレス] のアクセスができないので [コンピュータ名] でアクセスしています。

    メッセージ 5184、レベル 16、状態 2、行 1
    クラスター サーバーにファイル ‘2008r2-wsfc-sqlgMSSQL10_50.MSSQLSERVERMSSQLDATATEST.mdf’ を使用できません。
    サーバーのクラスター リソースが依存関係を持つ、フォーマットされたファイルだけを使用できます。
    このファイルを含んでいるディスク リソースがクラスター グループに存在しないか、SQL Server のクラスター リソースが
    このファイルに依存していません。
    メッセージ 1802、レベル 16、状態 1、行 1
    CREATE DATABASE が失敗しました。一覧されたファイル名の一部を作成できませんでした。関連するエラーを確認してください。

    これについては最初に紹介しているブログの中に書かれているのですが、Books Online ではちょっと記載が見つけられませんでした。

?

ユーティリティ コントロール ポイント / データ層アプリケーション / PowerPivot のようなメジャーな新機能ではありませんが、
個人的には、どれも気になる機能でした。
まだ、たくさん新機能はありますので検証ができたタイミングで投稿したいと思います。

Share

Written by Masayuki.Ozawa

5月 15th, 2010 at 1:51 pm

Posted in SQL Server

One Response to 'データベース管理者向けの SQL Server 2008 R2 3 つの新機能'

Subscribe to comments with RSS or TrackBack to 'データベース管理者向けの SQL Server 2008 R2 3 つの新機能'.

  1. […] Flexible Failover Policy は今回さわりを書いた内容ですが、SMB をサポートすることにより今まで 26 インスタンスが上限となっていたクラスター上のマルチインスタンス環境も緩和ができるみたいですね。 2008 R2 で通常のインスタンスでは SMB を使用して共有フォルダ上にデータベースのファイルをおくことができるようになっていましたがクラスターでも使えるようになるみたいですね。 データベース管理者向けの SQL Server 2008 R2 3 つの新機能 […]

Leave a Reply