Reporting Service のレポートサーバーに追加したレポートのバックアップ方法

メモです。

■環境

  • SQL Server 2008 R2

■内容

レポートビルダーなどで作成したレポートをレポートサーバー(http://localhost/ReportServer/)にアップロードした場合、レポート単独をファイルとしてバックアップする方法がありません。

アップロードされたレポートは SQL Server データベースに追加された「ReportServer」データベースに保管されているので、このデータを丸ごとバックアップすれば別記憶媒体にバックアップを取ることができます。

バックアップ手順

ReportServer データベースはオンラインバックアップが可能なので、SQL Server Management Studio 等からそのままバックアップタスクでバックアップできます。もちろん SQL を実行してバックアップも可能です。

復元手順

復元するには Reporting Services のサービスを一度止める必要があります。

  1. SQL Server 構成マネージャ等を使用して Reporting Services のサービスを停止する
  2. SQL Server Management Studio などを使用してバックアップした ReportServer を復元する。(上書きで)
  3. Reporting Services のサービスを開始する
  4. レポートの状態がバックアップ時点に復元されているか確認する

 

※メモレベルなのでもしかしたら間違っているかもしれませんので、確実に復元可能か運用前に確認してください。


SQL Server 2008 インストール時に「サービス´SQLBrowser´の開始要求に失敗しました。」と表示されてインストールに失敗する場合の対処法

■環境

  • Windows Server 2003 R2 Standard SP2
  • SQL Server 2008 Standard

■エラー内容

SQL Server のインストール設定を行い、インストールを開始しようとすると「サービス´SQLBrowser´の開始要求に失敗しました。」とエラーが表示されてインストールが中断される。

■原因

「MSXML 6 Service Pack 2 (KB973686)」がすでに Windows にインストールされている状態で SQL Server 2008 をインストールしようとすると、古い MSXML 6 をインストールしようとして失敗する。

■対処法

SQL Server 2008 をインストールする前にあらかじめ MSXML 6 SP2 をアンインストールしておき、SQL Server 2008 をインストールする。SQL Server インストール後、Windows Update 等で MSXML 6 SP2 をインストールする。

もし、SQL Server 2008 をインストールしようとして失敗している場合は、先に SQL Server の各コンポーネントをアンインストールしてから MSXML 6 SP2 をアンインストール。その後 SQL Server 2008 をインストールして対処する。


SSAS でメタデータ マネージャーのエラーが発生して処理や削除が行えなくなった場合の対処法

※ここに書いている手順は正式な回避方法ではないので自己責任でお願いします。

 

【環境】

  • SQL Server 2008 R2 SP1
  • Windows 7 64bit

 

【エラーの内容】

SSAS プロジェクトで処理や配置、また、Analysis Services サービスでデータベースを削除しようとしたときなど、Analysis Services サービスにかかわるほとんどの操作を行おうとしたときに以下のようなエラーメッセージが表示されて処理が中断される。

====================================================
メタデータ マネージャーでエラーが発生しました。
ID 'XXXXXX'、名前 'XXXXXX' のディメンションが
'XXXXXX' キューブによって参照されていますが、このディメンションは存在しません。
メタデータ マネージャーでエラーが発生しました。
XXXXXX cube を ファイル '\?C:Program FilesMicrosoft SQL Server
MSAS10_50.MSSQLSERVEROLAPDataXXXXXX.0.dbXXXXXXX.999.cub.xml'
から読み込み中に、エラーが発生しました。
(Microsoft.AnalysisServices)
=====================================================
※ XXXXXX は環境により異なる

【発生する原因】

不明。SSAS プロジェクトでエラーとなる不正なデータを配置すると発生する?

【回避手順】

  1. SQL Server Management Studio から Analysis Services に接続し、ツリートップにある Microsoft 分析サーバーの右クリックメニューから「停止」を選択して  Analysis Services を停止させる。
  2. エクスプローラーより「C:Program FilesMicrosoft SQL Server
    MSAS10_50.MSSQLSERVEROLAPData」フォルダを開き、エラーの発生するデータベースの以下のフォルダ・ファイルをリネームするか削除する
    ・XXXXXX.0.db フォルダ (0 は任意の数字)
    ・XXXXXX.99.db.xml ファイル (99 は任意の数字)
  3. SQL Server Management Studio から Analysis Services のツリーノードを右クリックし、「開始」をクリックする。
  4. 削除されている SSAS データベースをVisual Studio から再配置する(エラーは訂正しておくこと)。

ファイル名を指定して実行するダイアログを開くショートカット

Windows Vista や Windows 7 ではスタートメニューを開いた時点でプログラム名を入力して実行できる検索欄にカーソルが当たるのであまり使われませんが、Windows XP の場合「ファイル名を指定して実行」ダイアログを使う機会は多いと思います。

マウスでクリックして開くのが面倒であればキーボードの「Windowsキー」+「R」で開いてそのままプログラム名を入力することができます。


クライアントに表示される特定のディメンションの属性を非表示にする方法 [SQL Server Analysis Services]

キューブとディメンションを作成しクライアントに公開する際、不要なディメンションの属性が公開されてしまう場合があります。特にキーとなる属性は公開しなくてもいい場合がありますが、ディメンションのキーとなるため削除するとディメンションとして成り立たなくなってしまいます。

クライアントに公開したくない場合は以下の設定で非公開にできます。(見えないだけなのでディメンション上では存在することになります)

【手順】

  1. 作成したディメンションを開く
  2. 「ディメンション構造」のタブを選択し、属性の項目から非表示にした属性を選択
  3. 属性を右クリックしメニューから「プロパティ」を選択
  4. プロパティから「詳細設定」グループの「AttributeHierarchyVisible」を「False」に設定

Type クラス同士の比較結果 [.NET Framework]

サンプルコード

namespace TypeFullName
{
    class Program
    {
        static void Main(string[] args)
        {
            Type t1 = typeof(TypeFullName.Test1.ClassSample);
            Type t2 = typeof(TypeFullName.Test1.ClassSample);
            TypeFullName.Test1.ClassSample samp1 = new Test1.ClassSample();
            TypeFullName.Test1.ClassSample samp2 = new Test1.ClassSample();
            Type t3 = samp1.GetType();
            Type t4 = samp2.GetType();
            System.Diagnostics.Trace.WriteLine("t1 == t2      : " + (t1 == t2));
            System.Diagnostics.Trace.WriteLine("t3 == t4      : " + (t3 == t4));
            System.Diagnostics.Trace.WriteLine("t3.Equals(t4) : " + t3.Equals(t4));
        }
    }
    namespace Test1
    {
        public class ClassSample
        {
            public int A;
        }
    }
}

結果

t1 == t2      : True
t3 == t4      : True
t3.Equals(t4) : True

Type.FullName の出力例 [.NET Framework]

サンプルコード

using System;

namespace TypeFullName
{
    class Program
    {
        static void Main(string[] args)
        {
            Type t = typeof(TypeFullName.Test1.ClassSample);
            System.Diagnostics.Trace.WriteLine(t.FullName);
        }
    }
    namespace Test1
    {
        public class ClassSample
        {
            public int A;
        }
    }
}

結果

TypeFullName.Test1.ClassSample


Explorer Touch mouse 買いました

前に Acer の PC を買った時についてきたおまけ無線マウスをつかっていたのですが、マウスのホイールを回したときにスクロールが戻ってしまう現象が発生するようになったので新しいマウスを買うことにしました。今回買ったのは2011/9/2に発売された Microsoft の「Explorer Touch mouse」です。

DSC00474

同じ日に発売されたマルチタッチができる TOUCH MOUSE も結構興味をそそられたのですが、どうも左、右ボタン同時クリックとかできなさそうだったのでやめました。Windows 7 の Windows タッチを自由に扱えるのであれば買ってもよかったのですが^^;

裏面の電池を入れる場所はこんな感じになっています。電池は単三電池を使用し、奥に差し込む形になっています。

DSC00475

ちょっと変わっているのが無線レシーバを格納できるスペースが用意されているところでしょうか。

DSC00476

この状態でレシーバーを押し込むとカチって音がなってロックされます。もう一度押すとレシーバーが出てきます。持ち歩くときにレシーバー忘れなさそうでいいですね。(もちろん入れ忘れはだめですがw)

DSC00477

 

触ってみた感じなのですが、まず、ホイールの部分が完全にタッチセンサーに置き換わっています。ホイールによるスクロールもタッチセンサーの部分をなぞることでスクロールするようになります。実際になぞってみると、ウインドウがスクロールすると共に、マウスがあたかもホイールを転がしているかのような振動と音を発します。中にホイールが入っているんじゃないかと思うくらいに似ている感覚ですw

また、物理スクロールとは異なり、フリックするような感覚で素早くなぞると慣性スクロールさせることができます。長いスクロールが必要なページだと結構使えそうですね。スクロール中にもう一回タッチすればスクロールを止められます。

難点はタッチセンター全般に言えることなのですが、手に汗をかいていたりするとなぞりにくいころです。Explorer Touch mouse の場合は多少ぎこちなくなぞってもスクロールしてくれるのでまあ何とかなるのですが。

どうしてもなぞれない場合はタッチセンサーのボタンでスクロールすることができます。タッチセンサーのボタンは「前」「中」「後」の3つのボタンからなっており、前と後のボタンを使えばスクロールバーの空白部分をクリックしたのと同じように表示ページ単位でスクロールできます。中のボタンは今までのマウスの中ボタンと同じ動作をします。ただ、前ボタンについてはちょっと指を伸ばさないと届かないかもしれません。

 

後、中央のタッチセンサーは横にスクロールすることもできます。スクロールの仕方は想像のとおり、横になぞります。Excel とかで横に長いシートとかでは結構便利だと思います。反応もいいみたいです。難点は手に汗をかいていると(略)

 

マウスとレシーバは木の板2枚はさんで3m程度離れていますが、問題なく動いています。(前に買った無線マウスは50cmぐらいじゃないとまともに動かなくてひどかった・・・)

マウスの重さについてですが、単三電池を使用しているせいか若干重いかもしれません。マウス自体は軽いんですけどね…。手にはフィットするので持ち方に変な感覚を強いられることはないかと思います。

 

とりあえず1時間程度触った感じの感想ですが、物理ホイールとタッチセンサーの違いから慣れは必要かと思います。ですが、使用者が思った通りの動作はしてくれているので結構いい感じに使えるのではないかと思います。マウス好きなら買ってみてもいいかもしれません。

 


作成した共有フォルダを一覧で確認する方法

たまに忘れるのでメモ。

対象OS

  • Windows Vista (Business 以上)
  • Windows 7 (Professional 以上)

手順

  1. スタートメニューから「コンピューター」を右クリックして「管理」を選択
  2. 「システム ツール」⇒「共有フォルダ」を展開して「共有」をクリック。そこで確認可能。