システムデータベースを再構築して照合順序を変更
コマンド プロンプトから SQL Server 2008 R2 をインストールする方法Denali CTP3 のインテリセンスについて の続きのような形なのですが、インストール時に設定したサーバーレベルの照合順序はインストール後に変更することができません。
私が使っている Denali CTP3 の環境はサーバーレベルの称号順序を [Japanese_XJIS_100_CI_AS_SC] にしてしまっているので CTP3 の SSMS を使用してインテリセンスが使えませんでした…。
再インストールすればいいのですがちょっと悔しいのでシステムデータベースを再構築して照合順序を変更してみたいと思います。
# システムデータベースを再構築するのでいろいろな情報が飛びます。
Denali CTP3 のインテリセンスについて
SQL Server 2008 以降 (たしか) の SSMS はインテリセンスが追加されており、SQL Server 2008 以降のインスタンスに接続した場合は、SSMS でインテリセンスを使用してクエリを記述することが可能です。
Denali CTP3 の SSMS でもインテリセンスは使えるのですが、リリースノート に記載されているように以下の制限があります。
5.10 新しいキーワードに対する Transact-SQL IntelliSense サポート
データベース エンジン クエリ エディターの Transact-SQL IntelliSense 機能は、SQL Server コードネーム "Denali" CTP3 で導入された新しい構文のすべてをサポートするように更新されていません。新しいキーワードはキーワードとしてエンコードされていないため、これらには、構文エラーとして下線が表示されます。現時点では、SQL Server コードネーム "Denali" の将来のバージョンに、新しい構文に対する IntelliSense サポートを追加するように計画しています。
回避策: 構文エラーを無視します。Transact-SQL ステートメントは正常に実行できます。
新しく追加された構文のすべてにはまだ対応していませんと書かれていますね。
私の使っている環境にも Denali CTP3 の SSMS はインストールしているのですが、どの環境も新しい構文にかかわらずインテリセンスを使うことができませんでした…。
他の方はどうなのだろうと思って、twitter でぼそっとつぶやいたところ使えていますよというお返事をいただくことができました。
では環境固有の問題なのだな~と思って考えてみたところ、私の環境はすべて照合順序で [Supplementary characters] (SC) を有効にしてインストールをしていたことを思い出しました。
これは、Denali から追加された照合順序になるのですが、これも新しい機能ですよね。
ということで、[SC] の照合順序を指定しないでインストールをしたところ Denali CTP3 の SSMS でインテリセンスが使えるようになりました。
これで検証効率アップです♪
# 検証環境再整備しないといけないですが…。
Denali CTP3 の AlwaysOn Availability Groups のセカンダリ ロールの接続モードについて
AlwaysOn Availability Groups はプライマリと複数のセカンダリで構成することが可能です。
ミラーリングの場合は、ミラーサーバー (Availability Groups の セカンダリ) のデータベースを読み取りで使う場合はスナップショットを取得する必要があり、データベースをそのまま使用することはできませんでした。
直接アクセスしようとすると以下のようにエラーになりますので、
一度データベース スナップショットを作成して、そのスナップショットにアクセスをする必要がありました。
Availability Groups ではスナップショットを取得しなくてもセカンダリのデータベースにアクセスができるようになりました。
今回の投稿ではこのあたりをまとめてみたいと思います。
Denali CTP3 の AlwaysOn Availability Groups のインスタンス構成
Denali CTP3 の AlwaysOn Availability Groups のインスタンス構成
エクスプローラーシェルをコマンドシェルに変更
久しぶりに Server Core を触っていてふと思い出したので。
フルインストールの Windows Server をインストールした場合、エクスプローラーシェルで起動し通常の Windows の画面が起動します。
この状態から Server Core のようなコマンドシェルに変更したい場合は
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinlogon
の [Shell] を変更します。
フルインストールのデフォルトの状態では、[explorer.exe] が設定されています。
設定後、ログオフ / ログオンすると以下のようにコマンドシェルで起動するようになります。
[mstsc.exe] を設定するとシンクライアント専用端末チックに。
# Windows Thin PC正式版を試してみた に書かれている設定ですね。
以上、小ネタでした。
Denali CTP3 は Server Core にインストールできます
CTP1 ではインストールできなかったのですが、CTP3 では Server Core 環境に SQL Server をインストールできるようになりました。
これに関してはリリースノートにも記載がされています。
Microsoft SQL Server コードネーム “Denali” CTP3 リリース ノート (ja-JP)
今回の投稿では Server Core 環境に Denali CTP3 をインストールする方法を簡単にまとめていきたいと思います。
Read the rest of this entry »
Denacli CTP3 の AlwaysOn Availability Groups の前提パッチ
Denali CTP3 の AlwaysOn Availability Groups ですが事前に適用をしておく必要のあるパッチ (HotFix) がありますのでその紹介を。
個別リクエストの修正プログラムなので Windows Update では適用されないはずです。
また、AlwaysOn Availability Groups を使用する場合に必要になるものなのでインストール時の前提チェックでは確認がされませんので注意が必要です。
# ちなみに私はインストールするのすっかり忘れていて検証していました…。
DBCC PAGE で Columnstore インデックスを覗いてみる
Denali CTP3 では Columnstore インデックスを使用することが可能となっています。
Columnstore インデックスについては Tech Ed NA 2011 の Columnstore Indexes Unveiled で解説されています。
Columnstore インデックスは PowerPivot で使われている VeritiPaq を使用した圧縮を使用して、ページに一つの列のデータを格納する方式になります。
- 一つのテーブルに一つの Columnstore インデックスしか設定できない
- 非クラスター化インデックスのみ作成可能
- 設定できる型に制限がある (クラスター化インデックスの型も考慮する必要がありそうでした)
- Columnstore インデックスを設定したテーブルは更新できない
というような制限があるため、読み取り専用のテーブルで使用する必要があるのですが情報をざっと見た感じだとかなりうまく利用するとかなり効率よく情報が検索できるようです。
設定をすると検索の条件によっては [Columnstore インデックス~] 系のプランが使用されるようになります。
今回の投稿では、この [Columnstore インデックス] を [DBCC PAGE] を使って覗いてみようと思います。