<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Microsoft SQL Server Japan Support Team Blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/jpsql/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/jpsql/feed.xml</link>
    <description>Microsoft SQL Server Support チームのブログです。</description>
    <lastBuildDate>Thu, 14 Mar 2019 00:22:20 GMT</lastBuildDate>
    <language>ja</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>分散型可用性グループのフェールオーバーについて</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/distributedavailabilitygroup</link>
      <pubDate>Thu, 14 Mar 2019 09:20:00 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13515</guid>
      <description><![CDATA[このポストは 2019年1月に公開された Replica Failover within the Secondary Availability Group in a Distributed...]]></description>
      <content:encoded><![CDATA[このポストは 2019年1月に公開された <a href="https://blogs.msdn.microsoft.com/sql_server_team/replica-failover-within-the-secondary-availability-group-in-a-distributed-availability-group/">Replica Failover within the Secondary Availability Group in a Distributed Availability Group</a> の翻訳です。

---------------

<a href="https://docs.microsoft.com/ja-jp/sql/database-engine/availability-groups/windows/distributed-availability-groups?view=sql-server-2017"><span>分散型可用性グループ</span></a><span> (distributed AG) </span><span>は、特別な可用性グループであり、2つの可用性グループにまたがっています。このブログでは、分散型可用性グループのフェールオーバーについての問題を説明します。特に可用性グループ間の同期状態にかかわらず、分散型可用性グループのデータ損失への耐性をご紹介します。</span>

<span>検証のために、シンプルな分散型可用性グループ</span><span> 'TIWENDAG' </span><span>を作成します。</span><span> 'TIWENDAG' </span><span>の構成は次の図のとおりです。</span><span> 'TIWENAG1' </span><span>が分散型可用性グループ</span><span> 'TIWENDAG' </span><span>のプライマリ可用性グループで、</span><span>'TIWENVM1' </span><span>がプライマリ</span> <span>レプリカ、</span><span>'TIWENVM2' </span><span>がセカンダリレプリカです。</span><span>'TIWENAG2' </span><span>が分散型可用性グループ</span><span> 'TIWENDAG' </span><span>のセカンダリ可用性グループで、</span><span>'TIWENVM3' </span><span>がプライマリ</span> <span>レプリカ、</span><span>'TIWENVM4' </span><span>がセカンダリレプリカです。</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/p11.png" width="832" height="437" class="alignnone size-full" />

<span>分散型可用性グループで定義されている、2つの可用性グループの自動フェールオーバーはサポートされています。例えば、可用性グループ</span><span> TIWENAG1 </span><span>でフェールオーバーモードが</span><span> "</span><span>自動</span><span>" </span><span>で設定されていると、</span><span>TIWENAG1 </span><span>がダウンした際には</span><span>TIWENAG1 (</span><span>プライマリ</span><span>) </span><span>と</span><span> TIWENAG2 (</span><span>同期セカンダリ</span><span>) </span><span>間で自動フェールオーバーが発生します。同様に、可用性グループ</span><span> TIWENAG2 </span><span>で</span><span>TIWENVM3 (</span><span>プライマリ</span><span>) </span><span>がダウンした場合には、</span><span>TIWENVM4 (</span><span>同期セカンダリ</span><span>) </span><span>に自動的にフェールオーバーされます。</span>

&nbsp;

<span>可用性グループのプライマリ</span> <span>レプリカがダウンした際、プライマリ</span> <span>レプリカ</span><span> (</span><span>可用性グループが分散型可用性グループの一部かどうかにかかわらず</span><span>) </span><span>は同期セカンダリ</span> <span>レプリカに自動的にフェールオーバーされます。</span>

&nbsp;

<span>もしセカンダリ可用性グループ</span><span> (</span><span>フォワーダーとも呼ばれます</span><span>) </span><span>のプライマリ</span> <span>レプリカが失われて自動フェールオーバーが発生した場合や、分散型可用性グループのセカンダリ可用性グループで手動フェールオーバーが行われた場合、次の条件を満たしていれば、データ損失は発生しません。</span>

&nbsp;
<ul>
 	<li>プライマリ可用性グループ のプライマリ レプリカ (グローバル プライマリとも呼ばれます)が、データベース ミラーリング エンドポイントを通して、セカンダリ可用性グループのフォワーダー レプリカと正常に同期している。</li>
 	<li>セカンダリ可用性グループのフォワーダー レプリカが、データベース ミラーリング エンドポイントを通して、セカンダリ可用性グループのセカンダリ レプリカと正常に同期している。</li>
</ul>
&nbsp;

グローバルプライマリ“TIWENVM1" に最後に書き込まれた LSN<span> (last_hardend_lsn) </span>が 10:15:1 と仮定します。プライマリAG のセカンダリレプリカ “TIWENVM2” は同期されており、最後に書き込まれた LSN  <span>(last_hardend_lsn) </span>は 10:15:1 です。セカンダリAG に関しては、プライマリAG とフォワーダーの間の同期モードは非同期コミットモードで、フォワーダー “TIWENVM3” の最後に書き込まれた LSN<span> (last_hardend_lsn) </span>は 10:12:1 です。セカンダリAG のセカンダリレプリカ “TIWENVM4” は、まだ同期されていないため最後に書き込まれた LSN<span> (last_hardend_lsn) </span>は 10:10:1 です。この分散型可用性グループ内では、 “TIWENVM4”  が最後に書き込まれたLSN として最も低い値を持っています。また、この時グローバルプライマリのトランケート LSN (truncation_lsn) は 10:10:1 を下回りません。これは、“TIWENVM3” が失われたとき、“TIWENVM4” が新しいフォワーダーとなりプライマリAG と同期出来るようにするためです。

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/p2.png" width="643" height="115" class="alignnone size-full" />

<span>この理由は、トランザクションログのバックアップが取られたとき、分散型可用性グループ内のすべてのレプリカ(プライマリAG,セカンダリAG</span> <span>両方のレプリカ)に適用済みのトランザクションログのみが切り捨てられるからです。以下のテスト結果が、本記事の冒頭にて説明したテスト環境の分散型可用性グループにて、トランザクションログがどのように切り捨てられるかの例になります。</span>

このシナリオは、以下手順にて簡単に証明出来ます。

&nbsp;
<ol>
 	<li>現在の truncation_lsn と last_hardend_lsn を各レプリカで記録します。</li>
 	<li>データベースに変更を加えます。ここでは test データベースに INSERT 文を10回発行します。</li>
 	<li>各レプリカにて LSN が同じ分だけ進む事を確認します。</li>
 	<li>トランザクションログのバックアップを、グローバルプライマリの test データベースにて取得します。</li>
 	<li>現在の truncation_lsn と last_hardend_lsn の確認をします。</li>
 	<li>セカンダリAG のセカンダリレプリカへのデータ移動を中断します。</li>
 	<li>2-5 を繰り返します。</li>
</ol>
&nbsp;

<span> </span><span>以下スクリーンショットがこの再現テストシナリオのすべての結果です。</span>

<b>Step1 -</b>

<span>この</span> <span>Step</span> <span>で使用した</span><span> DMV:</span>

USE test
SELECT COUNT(*) AS '# of transaction logs' FROM fn_dblog(null, null)
SELECT database_id,
group_id,
replica_id,
is_local,
is_primary_replica,
truncation_lsn,
last_hardened_lsn
FROM sys.dm_hadr_database_replica_states
WHERE database_id=6 AND is_local=1

SELECT replica_id, replica_server_name
FROM sys.availability_replicas
WHERE replica_id=

(SELECT replica_id FROM sys.dm_hadr_database_replica_states WHERE database_id=6 AND is_local=1)
SELECT COUNT(*) AS '# of entries in testt1 table' FROM testt1

<span>
4つのレプリカでの結果</span><span> :</span>

<span>プライマリAG</span> <span>のプライマリレプリカ</span><span> (</span><span>グローバルプライマリ</span><span>):</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/3.png" width="926" height="178" class="alignnone size-full" />

<span>プライマリAG</span> <span>のセカンダリレプリカ</span><span>:</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/4.png" width="931" height="184" class="alignnone size-full" />

<span>セカンダリAG</span> <span>のプライマリレプリカ</span><span> (</span><span>フォワーダー</span><span>):</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/5.png" width="934" height="184" class="alignnone size-full" />

<span>セカンダリAG</span> <span>のセカンダリレプリカ</span><span>:</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/6.png" width="928" height="181" class="alignnone size-full" />

<span>このテスト環境のように、すべてのレプリカが同期されている場合、上記スクリーンショットのように、すべてのレプリカは同じ数のトランザクションログと</span> <span>truncation_lsn</span> <span>を返します。</span>

<b>Step 2 -</b>

<span>INSERT</span> <span>文を10回実行します。</span>

INSERT INTO testt1 (NAME, ID) VALUES ('John Smith', 1)

GO

<b>Step 3 -</b>

<span>プライマリAG</span> <span>のプライマリレプリカ</span><span> (</span><span>グローバルプライマリ</span><span>):</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/31.png" width="353" height="136" class="alignnone size-full" />

プライマリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/32.png" width="356" height="141" class="alignnone size-full" />

セカンダリAG のプライマリレプリカ (フォワーダー):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/33.png" width="362" height="139" class="alignnone size-full" />

<span>セカンダリAG</span> <span>のセカンダリレプリカ</span><span>:</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/34.png" width="354" height="140" class="alignnone size-full" />

<span>トランザクションログのサイズがINSET</span> <span>文の実行により大きくなります。t</span><span>est </span><span>データベースで内のエントリーの数も</span> <span>10行分増加しています。</span>

<b>Step 4 -</b>

グローバルプライマリにてトランザクションログのバックアップを取得します。

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/41.png" width="912" height="669" class="alignnone size-full" />

<b>Step 5 -</b>

プライマリAG のプライマリレプリカ (グローバルプライマリ):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/51.png" width="934" height="181" class="alignnone size-full" />

プライマリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/52.png" width="933" height="181" class="alignnone size-full" />

セカンダリAG のプライマリレプリカ (フォワーダー):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/53.png" width="939" height="183" class="alignnone size-full" />

セカンダリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/54.png" width="929" height="183" class="alignnone size-full" />

<span>各レプリカの</span> <span>truncation_lsn</span> <span>が現在の</span> <span>LSN</span> <span>まで増加し、トランザクションログも切り捨てられるため、トランザクションログは圧縮されます。</span><span> </span>

<b>Step 6 -</b>

<span>セカンダリ</span> <span>AG</span> <span>のセカンダリレプリカにある</span> <span>t</span><span>est </span><span>データベースへのデータ移動を中断します。</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/61.png" width="351" height="231" class="alignnone size-full" />

<b>Step 7 -</b>

<span>Step </span><span>2</span> <span>と</span> <span>Step3</span> <span>を繰り返したのちに、セカンダリ</span> <span>AG</span> <span>のセカンダリレプリカ</span><span> (TIWENVM4) </span><span>以外のすべてのレプリカの</span> <span>test</span> <span>データベースのデータは</span> <span>もう10行</span> <span>insert</span> <span>されたデータの分だけ更新されています。セカンダリAG</span> <span>のセカンダリレプリカに存在するデータベースのデータは、データ移動が中断されているため、同期されていません。</span>

プライマリAG のプライマリレプリカ (グローバルプライマリ):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/71.png" width="355" height="136" class="alignnone size-full" />

プライマリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/72.png" width="357" height="139" class="alignnone size-full" />

セカンダリAG のプライマリレプリカ (フォワーダー):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/73.png" width="361" height="138" class="alignnone size-full" />

セカンダリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/74.png" width="357" height="138" class="alignnone size-full" />

<span>Step4と</span> <span>Step5 を繰り返したあとの結果は以下です。</span>

プライマリAG のプライマリレプリカ (グローバルプライマリ):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/75.png" width="934" height="180" class="alignnone size-full" />

プライマリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/76.png" width="935" height="184" class="alignnone size-full" />

セカンダリAG のプライマリレプリカ (フォワーダー):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/77.png" width="936" height="183" class="alignnone size-full" />

セカンダリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/78.png" width="930" height="183" class="alignnone size-full" />

<span>新しく生成されたトランザクションログは、プライマリAG</span> <span>のセカンダリレプリカでは切り捨てられています。しかしながら、プライマリAGのプライマリレプリカでは</span> <span>truncation_lsn</span> <span>は、10行のInsert</span> <span>とトランザクションログのバックアップによって変化していません。前述した通り、これはセカンダリAG</span> <span>のセカンダリレプリカ"</span><span>TIWENVM4</span><span>"</span> <span>が同期されておらず、Insert</span> <span>クエリによって生成されたトランザクションログが適用されていないからです。</span>

<span>分散型可用性グループのグローバルプライマリでは、分散型可用性グループに参加するすべてのレプリカ内で一番古い</span> <span>LSN</span> <span>までしかトランザクションログを切り捨てません、このロジックにより、フォワーダーとセカンダリAGのセカンダリレプリカが完全に同期されていない状況下において、フォーワーダーが消失した場合でも、グローバルプライマリが健全な状態であり、またセカンダリAGのセカンダリレプリカと通信が出来ていれば、データロスがない事を保証しています。</span>

<span>上記シナリオをシミュレーションするために、セカンダリAG</span> <span>のプライマリレプリカ</span><span>(TIWENVM3) </span><span>のネットワークを遮断します。これにより、セカンダリAG</span> <span>のセカンダリレプリカ</span><span> (TIWENVM4)</span><span>のデータ移動を再開する前に</span><span> TIWENVM3 </span><span>が使用不可になります。</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/failed-to-retrive-data.png" width="709" height="262" class="alignnone size-full" />

TIWENVM4 上の test データベースのデータ移動を再開させると、セカンダリAG TIWENAG2は、解決中のステータスになります。これは、セカンダリAG TIWENAG2 上のプライマリレプリカ <span>TIWENVM3</span> <span>と通信が出来ないためです。これを解消するには、フェールオーバーをする必要があります。分散型可用性グループのセカンダリAGのフォワーダーが使用可能でない場合、セカンダリAGのセカンダリレプリカにて実行可能なフェールオーバーオプションは</span> FORCE_FAILOVER_ALLOW_DATA_LOSS のみです。

&nbsp;

ALTER AVAILABILITY GROUP TIWENAG2 FORCE_FAILOVER_ALLOW_DATA_LOSS

&nbsp;

セカンダリAG のセカンダリレプリカ TIWENVM4 にて FORCE_FAILOVER_ALLOW_DATA_LOSS オプションにてフェールオーバーを実行した後、以前のフォワーダーが使用不可な状況においてもデータベースの同期は行われます。これは、グローバルプライマリがセカンダリAG上のセカンダリレプリカのトランザクションログの同期されていない分を管理しているからです。

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/no-data-loss-vm4.png" width="926" height="181" class="alignnone size-full" />

このシナリオでは、 FORCE_FAILOVER_ALLOW_DATA_LOSS <span>オプションをつけてフェールオーバーではあるものの、データ損失は発生しません。</span>

一つ注意したいのは、FORCE_FAILOVER_ALLOW_DATA_LOSS 後に以前のプライマリレプリカ(<span>TIWENVM3</span>) が復旧した場合、データ移動は自動的に再開されないため、手動でデータ移動を再開させる必要があります。この動作は、分散型可用性グループに限らず、一般的な可用性グループにて FORCE_FAILOVER_ALLOW_DATA_LOSS  が行われた場合の仕様となります。これは、以前のプライマリレプリカと現在のプライマリレプリカにてデータの差異や競合が発生する可能性があり、ユーザーが自身でどのデータが適切か判断する必要があるからです。

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/resume-data-movement.png" width="355" height="267" class="alignnone size-full" />

<span>TIWENVM3</span> <span>のデータ移動を再開させたあと、分散型可用性グループ内のすべてのレプリカは同期がされ、トランザクションログの切り捨ても同じ時点まで行われます。</span>

プライマリAG のプライマリレプリカ (グローバルプライマリ):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/e1.png" width="932" height="179" class="alignnone size-full" />

プライマリAG のセカンダリレプリカ:

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/e2.png" width="935" height="181" class="alignnone size-full" />

(New) <span>セカンダリAG のセカンダリレプリカ:</span> (元フォワーダー):

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/e3.png" width="937" height="183" class="alignnone size-full" />

(New) <span>セカンダリAG のプライマリレプリカ (新フォワーダー):</span>

<img src="https://msdnshared.blob.core.windows.net/media/2019/01/e4.png" width="929" height="183" class="alignnone size-full" />

<span>今回のシナリオでは</span> FORCE_FAILOVER_ALLOW_DATA_LOSS  <span>にてフェールオーバーをしデータ損失はありませんでしたが、これは必ずしも分散型可用性グループにてこのオプションを使用した場合にデータ損失がないわけではありません。例えば、プライマリAG</span> <span>が損失した場合、セカンダリAG</span> <span>にて強制フェールオーバーを行う場合は、データ損失が発生する可能性があります。またこの例に限らずデータ損失が発生する可能性がある点についても注意が必要です。</span>]]></content:encoded>
    </item>
    <item>
      <title>BCP Queryout で処理が二重実行される</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/bcp-queryout-twice</link>
      <pubDate>Mon, 03 Dec 2018 13:26:46 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13455</guid>
      <description><![CDATA[本投稿は BCP ユーティリティの queryout オプションを使用した場合の不具合に関する報告です。

&nbsp;

事象概要

bcp ユーティリティの queryout...]]></description>
      <content:encoded><![CDATA[本投稿は BCP <span>ユーティリティの</span> queryout <span>オプションを使用した場合の不具合に関する報告です。</span>

&nbsp;

<strong><u>事象概要</u></strong>

bcp <span>ユーティリティの</span> queryout <span>オプションを使用した場合、予期せずクエリが</span> 2 <span>回実行される場合があります。</span>

&nbsp;

bcp <span>ユーティリティの</span> queryout <span>オプションを使用してコマンドを実行する際、フォーマットファイルを使用することで、</span>

インポート先のテーブルのスキーマとテーブル列のデータ型に準拠して、一括インポートすることができます。

&nbsp;

しかしながら、フォーマットファイルでテーブルの各列の照合順序を指定した場合、

フォーマットファイルで指定した照合順序の確認を行う内部動作に起因して、予期せずクエリが 2 <span>回実行される場合があります。</span>

なお 1 <span>回目のクエリ実行後、</span>Attention <span>が記録される場合もありますが、</span>

Attention <span>が記録されず、クエリが</span> 2 <span>回実行される場合もあります。</span>

&nbsp;

<strong><u>回避方法</u></strong>

本動作はフォーマットファイルで照合順序を指定して、bcp <span>ユーティリティの</span> queryout <span>オプションを実行した場合に発生することを確認しています。</span>またフォーマットファイルで照合順序を指定しない場合、事象が回避できます。

&nbsp;

以下の参考情報の通り、一般的にはフォーマットファイルを使用して、照合順序を明示的に指定することを推奨しておりますが、

本不具合が発生した場合には。フォーマットファイルで照合順序を指定せずに、queryout <span>オプションを実行してください。</span>

なお、フォーマットファイルで照合順序を指定しない場合、インポート先の既定の照合順序に従ってインポートが行われます。

&nbsp;

<strong><u>参考情報</u></strong>

bcp <span>ユーティリティ</span>

<a href="https://docs.microsoft.com/ja-jp/sql/tools/bcp-utility?view=sql-server-2017">https://docs.microsoft.com/ja-jp/sql/tools/bcp-utility?view=sql-server-2017</a>

&nbsp;
<h5><strong>本情報の内容</strong><strong> (</strong><strong>添付文書、リンク先などを含む</strong><strong>) </strong><strong>は、作成日時点でのものであり、予告なく変更される場合があります</strong><strong>。</strong></h5>]]></content:encoded>
    </item>
    <item>
      <title>[SSRS] Windows 10 におけるレポート表示時に文字化けが発生する。</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/ssrs-windows-10-garbled-characters</link>
      <pubDate>Wed, 21 Nov 2018 11:00:43 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13425</guid>
      <description><![CDATA[今回の投稿では、Windows 10 の環境において、レポートで利用するフォントに依存した文字化けの現象についてご案内します。

&nbsp;

■現象

Windows 10...]]></description>
      <content:encoded><![CDATA[今回の投稿では、<span>Windows 10 </span>の環境において、レポートで利用するフォントに依存した文字化けの現象についてご案内します。

&nbsp;

■現象

Windows 10 上にて、<span>Report Builder </span>などを利用し、レポートを作成する際に特定のフォントを利用すると、日本語（漢字）の表示が文字化けします。<span> Windows 10 </span>以外の<span> OS </span>にて、同様のレポートを作成した場合、本現象は発生しません。

この現象は、<span> Windows 10 </span>において、フォールバックフォント<span> (</span>この度のように英字用のフォントで漢字表示をする際にも判読可能なように常に表示されるように設計されたフォント<span>) </span>が既定ではインストールされていないことに起因して発生しています。

また、この現象は、過去に作成したレポートをアップグレードする際に、新しく Windows 10 を含めた複数の OS でレポートを参照する要件が発生した場合などに生じやすい現象となります。

■回避策

次のいずれかの回避策が有効です。

<strong>
Windows 10 </strong><strong>に「繁体字中国語補助フォント」のフォールバックフォントをインストールする。</strong>

個々のレポート毎の対応でなく、一括で対応が可能な対処策となります。<span>
</span>次の手順でフォントをインストールできます。<span>
</span>

フォントインストール手順<span>
-----------------------------------------------------</span>

1.　<span>[</span>スタート<span>] </span>メニューの<span> [</span>設定<span>] </span>を開きます。

2.　設定の検索で、「アプリと機能」を検索します。

3.　<span>[</span>アプリと機能<span>] </span>を選択します。

4.　<span>[</span>オプション機能の管理<span>] </span>を選択します。

5.　<span>[</span>機能の追加<span>] </span>を選択します。一覧から 繁体字中国語補助フォントをインストールします。

<span></span><strong>レポートの構造を変更する。</strong>

Windows 10 においても文字化けしないフォントを利用しレポートを構成します。

大変残念ながら、文字化けが発生しているレポートの改修は、個々のレポート毎にフォントの変更が必要となります。一括での修正はできませんのでご注意ください。

例えば、<span>MSP </span>ゴシックや<span> MSP </span>明朝などのフォントを検討します。

&nbsp;

<span>※</span>2018/11/30 追記

<span>Windows Update サイトに直接接続できない環境(WSUS や SCCM 管理環境)では "インストールする機能がありません" と表示されフォントをインストールできない場合があります。その場合は、「レポートの構造を変更する。」の対処を実施してください。</span>]]></content:encoded>
    </item>
    <item>
      <title>[Stream Analytics] 不正な JSON 形式を送った場合に発生するエラーについて</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/stream-analytics-%E4%B8%8D%E6%AD%A3%E3%81%AA-json-%E5%BD%A2%E5%BC%8F%E3%82%92%E9%80%81%E3%81%A3%E3%81%9F%E5%A0%B4%E5%90%88%E3%81%AB%E7%99%BA%E7%94%9F%E3%81%99%E3%82%8B%E3%82%A8%E3%83%A9%E3%83%BC</link>
      <pubDate>Fri, 14 Sep 2018 19:20:02 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13395</guid>
      <description><![CDATA[松本 奈紗
Support Engineer
&nbsp;

皆さん、こんにちは。 BI Data Platform サポートチームの松本奈紗です。
今回の投稿では、Stream...]]></description>
      <content:encoded><![CDATA[<p style="text-align: right">松本 奈紗
Support Engineer</p>
&nbsp;

皆さん、こんにちは。 BI Data Platform サポートチームの松本奈紗です。
今回の投稿では、Stream Analyticsの環境において、上手くストリーミングデータが出力に受け渡されない場合、参考となる情報をご紹介いたします。
日々、弊社には多くのお問い合わせを頂くわけですが、その中でも<span> Stream Analytics </span>で以下のようなエラーが発生した、といったご相談をしばしばいただきます。

&nbsp;

エラーメッセージ
Could not deserialize the input event(s) from resource
'xxxxx' as Json. Some possible reasons: 1) Malformed events 2) Input source configured with incorrect serialization format

&nbsp;

このメッセージだけですとやはり、何が問題か判断がつきにくいもあると思いますので、今回の投稿ではこの点についてフォーカスしてみたいと思います。
結論から申し上げますと、このエラーはStream Analyticsの環境において、上手くストリーミングデータが出力に受け渡されない事を意味しています。
考えられる原因として、不正な JSON 形式が送付されている可能性が高いため、インプットとなるデータの精査が必要になります。
下記情報と共に、事象の切り分けにあたって少しでも参考となりましたら幸いです。

&nbsp;

参考情報『間違った形式の入力イベントをトラブルシューティングする』
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fja-jp%2Fazure%2Fstream-analytics%2Fstream-analytics-common-troubleshooting-issues%23troubleshoot-malformed-input-events&amp;data=02%7C01%7C%7C639c186fd0e64cabb37f08d61a2924df%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636725161464889721&amp;sdata=GKeG%2BXVyMPU2Hhpr%2FJC2SXW9pkKCP8RmLT6CDFW8ffQ%3D&amp;reserved=0">https://docs.microsoft.com/ja-jp/azure/stream-analytics/stream-analytics-common-troubleshooting-issues#troubleshoot-malformed-input-events</a>

&nbsp;

<strong><u>■現象
</u></strong>以下のように<span>Stream Analytics</span>のジョブトポロジの「入力」の「ストリーム入力の追加」においてイベントシリアル化形式として<span>JSON</span>を選択した場合を想定します。

<a href="https://msdnshared.blob.core.windows.net/media/2018/09/sa_blog_1.jpg"><img width="496" height="342" class="alignnone size-full wp-image-13405" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/sa_blog_1.jpg" /></a>

例えば以下のような<span>JSON</span>として正しくないもの<span>(</span>項目<span>"is_event_logged"</span>に値が存在しない<span>)</span>が来たと想定します。

例<span>)
</span>　{
"message_id": 18456,
"language_id": 1033,
"severity": 14,
"is_event_logged": ,
"text": "Login failed for user '%.*ls'.%.*ls%.*ls"
}

&nbsp;

JSONの正しいとはなんであるか、は規格の説明になるので今回は割愛しますが、上記については少なくとも値が入っているところに値がない事で不正な<span>JSON</span>といえます。
では、上記の意図的に不正にした<span> JSON </span>ファイルを元に<span>Stream Analytics</span>を利用して、不正な<span> JSON </span>形式を送ってみましょう。
Stream Analytics ジョブを開始後、しばらくすると、入力の右側のオレンジ色のアラートマークが表示され、それをクリックすると以下のエラーが表示されます。

<b><u><a href="https://msdnshared.blob.core.windows.net/media/2018/09/sa_blog_2.jpg"><img width="446" height="362" class="alignnone size-full wp-image-13415" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/sa_blog_2.jpg" /></a></u></b>

&nbsp;

エラーメッセージ

Could not deserialize the input event(s) from resource
'xxxxx' as Json. Some possible reasons: 1) Malformed events 2) Input source configured with incorrect serialization format

&nbsp;

<b><u>■原因
</u></b>このエラーは<span> Stream Analytics </span>側で入力データ形式が不正な形式であるときにエラーが発生します。
JSON形式で来たものの、<span>JSON</span>として正しくない形式で来ている場合や、<span>JSON</span>を<span>Input</span>と指定しながらも、実際にはファイルが<span>CSV</span>で配置された場合などもこのエラーになりえます。

&nbsp;

<strong><u>■対処策
</u></strong>いずれにしても<span> Stream Analytics </span>としてはインプットデータを正しく評価できない事で問題が発生しています。
以下のような点がないかを確認頂く事になります。
<ul>
 	<li>JSON ファイル自体のフォーマットが正しいかどうか</li>
 	<li>入力データ形式とイベントシリアル化形式の設定<span>(JSON/Avro/CSV)</span>の設定が正しい<span>(</span>両者が一致しているか<span>)</span>かどうか</li>
</ul>
なお、<span>EventHub </span>などが<span> Input </span>データになる場合、<span>BLOB Input </span>のように単純に中身を開いてみるといった事はできません。
その場合には下記ドキュメントに存在している CheckMalformedEvents.cs などを利用し、Input 側のデータを確認していただく必要があります。

参考情報『間違った形式の入力イベントをトラブルシューティングする』
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fja-jp%2Fazure%2Fstream-analytics%2Fstream-analytics-common-troubleshooting-issues%23troubleshoot-malformed-input-events&amp;data=02%7C01%7C%7C639c186fd0e64cabb37f08d61a2924df%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636725161465045964&amp;sdata=StftLMEVlXcZuzXWx3LKg%2FcOqpownci%2Bal0rdu8M0kw%3D&amp;reserved=0">https://docs.microsoft.com/ja-jp/azure/stream-analytics/stream-analytics-common-troubleshooting-issues#troubleshoot-malformed-input-events</a>

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>[ADF] Azure SQL DataWarehouseにデータをコピーする際に発生するエラーについて</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/adf-azure-sql-datawarehouse%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E3%82%B3%E3%83%94%E3%83%BC%E3%81%99%E3%82%8B%E9%9A%9B%E3%81%AB%E7%99%BA%E7%94%9F%E3%81%99%E3%82%8B%E3%82%A8%E3%83%A9%E3%83%BC</link>
      <pubDate>Fri, 14 Sep 2018 16:32:13 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13335</guid>
      <description><![CDATA[松本 奈紗
Support Engineer
&nbsp;

皆さん、こんにちは。 BI Data Platform サポートチームの松本奈紗です。
今回の投稿では、Azure Data...]]></description>
      <content:encoded><![CDATA[<p style="text-align: right"><span>松本 奈紗</span></p>
<p style="text-align: right">Support Engineer</p>
&nbsp;

<span>皆さん、こんにちは。 BI Data Platform サポートチームの松本奈紗です。
</span>今回の投稿では、<span>Azure Data Factory</span>を利用して<span>Azure SQL DataWarehouse </span>にデータをコピーする際に発生するエラーのうち、メッセージから判断がつきにくいものがありますので、エラーの原因を見つけるために確認すべき点をご紹介いたします。
また、今回はイメージがつきやすいように、以下のようなサンプルを用いて、エラーの対処策をご紹介いたします。

&nbsp;

<strong><u>[</u></strong><strong><u>サンプルの前提<span>]</span></u></strong>

Azure Data Factoryを利用して、<span>CSV</span>ファイルを<span>SQL Server Management Studio(SSMS) </span>に接続された<span>Azure DataWarehouse </span>へコピーします。

&nbsp;

<strong><u>Test.csv</u></strong>

Number, Word, Letter
1, test1, A
2, test2, B

<strong><u>Azure SQL Data Warehouse </u></strong>

SSMSでのテーブル定義

CREATE TABLE dbo.TestTable(
Number int NULL
,Word char(1) NULL
,Letter char(1) NULL
);

&nbsp;

<strong><u>[</u></strong><strong><u>テスト<span>]
</span></u></strong>上記のような前提で<span>Azure Data Factory (V2)</span>からデータを<span>SQL Data Warehouse</span>にロードしてみると、同じエラーが確認できるかと思います。

&nbsp;

<strong><u>■エラーの確認方法
</u></strong>Azure Data Factory (V2)を利用して発生したエラーを確認する場合、パイプラインのモニター画面を確認ください。

&nbsp;
<ul>
 	<li>ADFのモニター画面からエラーの詳細画面を開きます。</li>
</ul>
<table>
<tbody>
<tr>
<td width="33"></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<a href="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_1.png"><img width="2998" height="733" class="alignnone size-full wp-image-13345" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_1.png" /></a>

&nbsp;
<ul>
 	<li>以下のエラーの出力を確認できます。</li>
</ul>
<a href="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_2.png"><img width="2888" height="456" class="alignnone size-full wp-image-13355" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_2.png" /></a>

<strong>Error Message</strong>

Activity Copy_5ua failed: ErrorCode=FailedDbOperation、<span>'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=</span>次のエラーにより、データベースの操作が失敗しました<span>: 'PdwManagedToNativeInteropException ErrorNumber: 46724, MajorCode: 467, MinorCode: 24, Severity: 20, State: 2, Exception of type 'Microsoft.SqlServer.DataWarehouse.Tds.PdwManagedToNativeInteropException' was thrown.',Source=,''Type=System.Data.SqlClient.SqlException,Message=PdwManagedToNativeInteropException ErrorNumber: 46724, MajorCode: 467, MinorCode: 24, Severity: 20, State: 2, Exception of type 'Microsoft.SqlServer.DataWarehouse.Tds.PdwManagedToNativeInteropException' was thrown.,Source=.Net SqlClient Data Provider,SqlErrorNumber=100000,Class=16,ErrorCode=-2146232060,State=1,Errors=[{Class=16,Number=100000,State=1,Message=PdwManagedToNativeInteropException ErrorNumber: 46724, MajorCode: 467, MinorCode: 24, Severity: 20, State: 2, Exception of type 'Microsoft.SqlServer.DataWarehouse.Tds.PdwManagedToNativeInteropException' was thrown.,},],'</span>

&nbsp;

<strong><u>■上記エラーメッセージが発生する可能性と対処策</u></strong>

上記のようなエラーが発生した場合、出力先である<span>SQL Data Warehouse</span>のテーブルのデータ長が、<span>Azure Data Factory(V2) </span>から受け渡されるデータと合わない<span>(</span>受け側のサイズが不足している<span>)</span>可能性がないかを確認してみてください。

この場合、<span>SQL Data Warehouse</span>のテーブルのデータ長と<span>Azure Data Factory(V2) </span>から受け渡されるデータ長を確認し、これらのデータ長を合わせることで、エラーに対処できます。

&nbsp;

今回のサンプルの場合、<span>ADF</span>側では、以下のように<span>SSMS</span>を使用して<span>SQL Data Warehouse</span>のテーブルのデータ長を確認し、データ長を修正することでエラーに対処できます。

&nbsp;
<ul>
 	<li>SSMSにおいて、<span>SQL Data Warehouse</span>の<span>TestTable</span>の<span>Word</span>カラムが<span>char(1)</span>となっていることを確認できます。</li>
</ul>
char(1)は<span>1</span>バイトの文字を格納することを想定した型であり、<span>Azure Data Factory(V2) </span>から受け渡される<span>CSV</span>ファイルの<span>Word</span>カラムのデータは”<span>test1</span>”<span>,</span>”<span>test2</span>”のように<span>1</span>バイトではないため、データサイズが不足していることが確認できます。
<table>
<tbody>
<tr>
<td width="7"></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<a href="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_4.png"><img width="1240" height="862" class="alignnone size-full wp-image-13375" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_4.png" /></a>

&nbsp;
<ul>
 	<li>ここで、次のクエリを実行し、<span>SSMS</span>に再接続すると、以下のように<span>TestTable</span>の<span>Word</span>カラムが<span>char(255)</span>となっていることが確認できます。</li>
</ul>
“<span>ALTER</span> TABLE dbo.TestTable ALTER COLUMN Word char(255) NULL ;”

char(255)型は<span>255</span>バイト分の文字コードを格納できますので、<span>CSV</span>ファイルの<span>Word</span>カラムのデータは”<span>test1</span>”<span>,</span>”<span>test2</span>”と<span>255</span>バイト以内であるため、データ長は足りていることが確認できます。

&nbsp;

<a href="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_4.png"><img width="1240" height="862" class="alignnone size-full wp-image-13375" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_4.png" /></a>
<ul>
 	<li>Data Factoryのパイプラインをもう一度実行すると、モニター画面の<span>Status</span>欄に<span>Succeed</span>が表示され、エラーが解消されたことが確認できます。</li>
</ul>
<a href="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_5.png"><img width="2403" height="573" class="alignnone size-full wp-image-13385" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/09/ADF_Blog_5.png" /></a>

&nbsp;

&nbsp;

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>[SSRS] Web ポータルからファイルダウンロード時のファイル名文字化けについて</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/ssrs-filedownload-of-webportal</link>
      <pubDate>Wed, 05 Sep 2018 19:33:49 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13305</guid>
      <description><![CDATA[今回の投稿では、SQL Server 2016 Reporting Services、並びに、SQL Server 2017 Reporting Services の環境において、Web...]]></description>
      <content:encoded><![CDATA[今回の投稿では、SQL Server 2016 Reporting Services、並びに、SQL Server 2017 Reporting Services の環境において、Web ポータルからファイルダウンロード時、ファイル名の日本語文字が文字化けする事象についてご案内します。

■現象
Internet Explorer ブラウザにて、Web ポータルからファイルダウンロード時、ファイル名に日本語文字が含まれる場合、ファイル名が文字化けする事象を確認しております。

1) Web ポータルから、ファイル名に日本語文字(2byte文字) が含まれるファイルをダウンロードします。
2) ファイル名が文字化けされた状態でダウンロードされます。
元のファイル名：レポートテスト.xlsx
ダウンロード後のファイル名：=_utf-8_B_44Os44Od44O844OI44OG44K544OILnhsc3g=_=
<p style="padding-left: 30px"><a href="https://msdnshared.blob.core.windows.net/media/2018/09/Image_SSRS_FileName.png"><img src="https://msdnshared.blob.core.windows.net/media/2018/09/Image_SSRS_FileName.png" alt="" width="947" height="246" class="alignnone wp-image-13315" /></a></p>
■回避策
残念ながら、現時点で本現象の修正は予定されておりません。このため、下記いずれかの回避策の適用をご検討ください。

A. シングルバイトの文字で命名したファイルをアップロードする
B. ダウンロード後にファイル名を手動で変更する
C. ファイルダウンロード操作は、Chrome など事象が発生しない別のブラウザを使用する（※Chrome の場合には事象が発生しないことを確認しております）
D. Web サービスからダウンロードする
Web サービスよりダウンロードする場合には、文字化けが発生しないことを確認しています。
Excel ファイルやテキストファイルなど、Web サービスからダウンロード可能なファイルにつきましては本回避策は有効となります。
例えば、レポート定義ファイル(*.rdl) はWeb サービスよりダウンロードできないため、この場合は上記A. ～ C. の回避策にて対処する必要があります。
<p style="padding-left: 30px"><a href="https://msdnshared.blob.core.windows.net/media/2018/09/Image_SSRS_FileName2.png"><img src="https://msdnshared.blob.core.windows.net/media/2018/09/Image_SSRS_FileName2.png" alt="" width="947" height="246" class="alignnone wp-image-13325" /></a></p>
&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>[SSRS] SQL Server 2016 SP2 Cumulative Update 適用による不具合について</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/ssrs2016-problem-of-sp2cu1cu2</link>
      <pubDate>Mon, 03 Sep 2018 19:28:40 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13285</guid>
      <description><![CDATA[今回の投稿では、SQL Server 2016 SP2に Reporting Services をインストールしている環境において、累積的な更新プログラムのCU1、並びに、CU2...]]></description>
      <content:encoded><![CDATA[今回の投稿では、SQL Server 2016 SP2に Reporting Services をインストールしている環境において、累積的な更新プログラムのCU1、並びに、CU2 を適用した際に発生する問題と、この修正状況についてご案内します。

■現象
SQL Server 2016 SP2 環境にて、CU1(*1)、または、CU2(*2) を適用することで以下問題が発生する報告を確認しています。

・CPU 使用率が大幅に増加する
・Web ポータル (https://&lt;サーバー名&gt;/reports) サイトが閲覧できなくなる

(*1) Cumulative Update 1 for SQL Server 2016 SP2
https://support.microsoft.com/en-us/help/4135048/cumulative-update-1-for-sql-server-2016-sp2
(*2) Cumulative Update 2 for SQL Server 2016 SP2
https://support.microsoft.com/en-us/help/4340355/cumulative-update-2-for-sql-server-2016-sp2

■原因　
内部コードの問題により発生しておりました。このコードの内容については非公開とさせていただいております。

■回避策
既にインストールされているCU1、またはCU2 をアンインストールします。
コントロールパネル - プログラムと機能 - 更新プログラムのアンインストール からアンインストールが可能です。

■修正状況
現在、SQL Server SP2 CU に対する更新プログラムの改修が進められています。
既にCU1、並びに、CU2 がインストールされている場合には、本更新プログラムを適用することで事象が改善される見込みです。
詳細な修正状況につきましては、以下ブログより追跡できます。

Issue with security update for the Remote Code Execution vulnerability in SQL Server 2016 SP2 (CU): August 14, 2018
<a href="https://blogs.msdn.microsoft.com/sqlreleaseservices/issue-with-security-update-for-the-remote-code-execution-vulnerability-in-sql-server-2016-sp2-cu-august-14-2018/">https://blogs.msdn.microsoft.com/sqlreleaseservices/issue-with-security-update-for-the-remote-code-execution-vulnerability-in-sql-server-2016-sp2-cu-august-14-2018/</a>

なお、本更新プログラムの内容は、次期CU (CU3) にも含まれる予定です。

&nbsp;

<strong><span style="color: #ff0000">※Update</span></strong>
SQL Server SP2 CU に対する更新プログラム(KB4458621)が公開されました。

SQL Server 2016 SP2 のリモートでコードが実行される脆弱性のセキュリティ更新プログラム (CU) について: 2018 年 8 月 20 日
<a href="https://support.microsoft.com/ja-jp/help/4458621/description-of-the-security-update-for-the-remote-code-execution">https://support.microsoft.com/ja-jp/help/4458621/description-of-the-security-update-for-the-remote-code-execution</a>]]></content:encoded>
    </item>
    <item>
      <title>[SSRS] サブスクリプション設定画面参照時に記録されるエラーについて</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/ssrs-configuration-of-subscription</link>
      <pubDate>Mon, 03 Sep 2018 16:43:49 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13255</guid>
      <description><![CDATA[今回の投稿では、SQL Server 2016 Reporting Services...]]></description>
      <content:encoded><![CDATA[今回の投稿では、SQL Server 2016 Reporting Services の環境において、サブスクリプション設定画面を参照した際に記録されるエラーについてご案内します。

&nbsp;

■現象
Web ポータルサイトより、任意のレポートの管理画面からサブスクリプションページを開くと、Reporting Services のログへエラーが記録されます。

1) Web ポータルサイトから管理画面 - サブスクリプション設定画面を開きます。
<p style="padding-left: 30px"><a href="https://msdnshared.blob.core.windows.net/media/2018/09/Image1.png"><img src="https://msdnshared.blob.core.windows.net/media/2018/09/Image1.png" alt="" width="397" height="370" class="alignnone wp-image-13265" /></a></p>
2) reportserverservice_ymd.log から次のエラーの出力を確認できます。
<p style="padding-left: 30px">【ファイルパス(既定の場合)】
C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\LogFiles\reportserverservice_ymd.log</p>
<p style="padding-left: 30px">【出力内容】
library!ReportServer_0-1!c08!08/09/2018-20:55:55:: e <span style="color: #ff0000">ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.NotEnabledException: , Microsoft.ReportingServices.Diagnostics.Utilities.NotEnabledException: The requested functionality is not currently enabled.;</span>
extensionfactory!ReportServer_0-1!c08!08/09/2018-20:55:55:: i INFO: Skipped instantiating Report Server PowerBI report server extension. Extension was not enabled.
library!ReportServer_0-1!c08!08/09/2018-20:55:55:: e <span style="color: #ff0000">ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.OperationNotSupportedNativeModeException: , Microsoft.ReportingServices.Diagnostics.Utilities.OperationNotSupportedNativeModeException: This operation is not supported on a report server that runs in native mode.;</span>
library!ReportServer_0-1!c08!08/09/2018-20:55:55:: e <span style="color: #ff0000">ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: Email Provider has no server or pickup directory specified, Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. ;</span>
extensionfactory!ReportServer_0-1!c08!08/09/2018-20:55:55:: e <span style="color: #ff0000">ERROR: Exception caught instantiating Report Server Email report server extension: Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. .</span></p>
■原因　
大変申し訳ございませんが、原因については判明しておりません。

■対処
このエラーによるReporting Services への影響は特にありませんので、無視頂きますようお願いします。

■修正状況
現在このエラーに対する修正は予定されておりません。修正が為された際には本ブログをアップデートさせて頂きます。]]></content:encoded>
    </item>
    <item>
      <title>[SSRS] レポートサーバーデータベース移行時のキー情報の削除方法について</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/move-reportserver_database_rskeymgmt-error</link>
      <pubDate>Tue, 24 Jul 2018 12:09:17 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13165</guid>
      <description><![CDATA[今回の投稿では、SQL Server 2016 以降、かつ、Enterprise/Developer Edition 以外の Edition の Reporting Services...]]></description>
      <content:encoded><![CDATA[<span style="color: #000000;font-family: 游ゴシック;font-size: small">今回の投稿では、<span><span lang="EN-US">SQL Server 2016 </span>以降、かつ、<span lang="EN-US">Enterprise/Developer Edition </span>以外の<span lang="EN-US"> Edition </span>の <span lang="EN-US">Reporting Services</span></span> に対するレポートサーバーデータベース移行時に発生する可能性がある現象とその対処策についてご案内します。</span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><strong><span style="color: #000000;font-family: 游ゴシック">■<span lang="EN-US"> Reporting Services </span>のレポートサーバーデータベースの移行方法について</span></strong></span><span lang="EN-US"></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">Reporting Services </span>が利用するレポートサーバーデータベース（既定では<span lang="EN-US"> ReportServer, ReportServerTempDB) </span>を移行し、別インスタンスの</span></span></span><span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US"> Reporting Services </span>で利用する場合、移行元のレポートサーバーデータベースのバックアップを採取し、移行先の<span lang="EN-US"> Reporting Services </span>が参照する<span lang="EN-US"> SQL Server </span>インスタンスに復元します。その後、移行先の<span lang="EN-US"> Reporting Services </span>構成マネージャにて、復元したレポートサーバーデータベースを使用するように指定することで、レポートサーバーデータベースの設定が完了します。</span></span></span><span lang="EN-US"></span>

<span style="color: #000000;font-family: 游ゴシック;font-size: small">なお、上記手順によって、移行先のレポートサーバーデータベース内には、移行元のサーバー情報と移行先のサーバー情報が登録された状態となります。</span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="color: #000000;font-family: 游ゴシック;font-size: small">この状態は、<span lang="EN-US"> Reporting Services </span>のレポートサーバーデータベースの内部では、スケールアウト構成を実施した状態と同様の構成となります。</span><span lang="EN-US"></span>

<span style="color: #000000;font-family: 游ゴシック;font-size: small">スケールアウト構成は、<span lang="EN-US">Enterprise/Developer Edition </span>のみで利用可能な構成であるため、これら以外の<span lang="EN-US"> Edition </span>を利用している場合、 <span lang="EN-US">rskeymgmt </span>を利用して、移行元のサーバー情報を削除する必要があります。</span><span lang="EN-US"></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">rskeymgmt </span>による削除方法は下記の通りです。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">1. </span>管理者として実行でコマンドプロンプトを開きます。</span></span></span><span lang="EN-US"></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">2. </span>下記のコマンドを実行し、移行元のサーバーが利用している<span lang="EN-US"> installation-id </span>を確認します。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span> </span>rskeymgmt -l</span></span></span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000">実行例<span lang="EN-US">)</span></span></span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">C:\windows\system32&gt;rskeymgmt -l</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">Server01\MSSQLSERVER - 1f8d21c3-f828-4f18-ab4e-f2e355491b9e</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">The command completed successfully</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">3. </span>下記のコマンドを実行し、移行元のサーバー情報を削除します。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span> </span>rskeymgmt -r &lt;installation-id&gt;</span></span></span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000">実行例<span lang="EN-US">)</span></span></span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">C:\windows\system32&gt;rskeymgmt -r 1f8d21c3-f828-4f18-ab4e-f2e355491b9e</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">Are you sure you want to delete this key? Yes (Y)/ No (N): Y</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">The command completed successfully</span></span>

<span lang="EN-US"><span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"></span></span></span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><strong><span style="color: #000000;font-family: 游ゴシック">■<span lang="EN-US"> SQL Server 2016 </span>以降における <span lang="EN-US">rskeymgmt </span>の実行について</span></strong></span><span lang="EN-US"></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">SQL Server 2016 </span>以降、かつ、<span lang="EN-US">Enterprise/Developer Edition </span>以外の<span lang="EN-US"> Edition </span>の <span lang="EN-US">Reporting Services </span>に対して、上記 <span lang="EN-US">rskeymgmt </span>によるコマンドを実行すると下記のエラーが発生します。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="color: #ff0000;font-size: small"><span><span lang="EN-US"><span style="font-family: 游ゴシック">The feature: </span></span><span lang="EN-US" style="margin: 0px;font-family: 'Courier New'">“</span><span lang="EN-US"><span style="font-family: 游ゴシック">Scale-out deployment</span></span><span lang="EN-US" style="margin: 0px;font-family: 'Courier New'">”</span><span lang="EN-US"><span style="font-family: 游ゴシック"> is not supported in this edition of Reporting Services (rsOperationNotSupported)</span></span></span></span>

<span style="color: #ff0000;font-family: 游ゴシック;font-size: small">（日本語版<span lang="EN-US">: </span>このエディションの<span lang="EN-US"> Reporting Services </span>では、機能<span lang="EN-US"> "</span>スケールアウト配置<span lang="EN-US">" </span>はサポートされていません。）</span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><strong><span style="color: #000000;font-family: 游ゴシック">■ 対処策について</span></strong></span><span lang="EN-US"></span>

<span style="color: #000000;font-family: 游ゴシック;font-size: small">本動作は<span lang="EN-US"> SQL Server </span>の問題であるため、現在、本問題の修正について検討が為されておりますが、現時点における修正予定は未定となります。</span><span lang="EN-US"></span>

<span style="color: #000000;font-family: 游ゴシック;font-size: small">このため、下記の手順により問題に対処ください。本対処策の実行により Reporting Services の動作に影響を与えることはございませんので、ご安心ください。</span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">1. SQL Server Management Studio </span>から、移行先のレポートサーバーデータベースを復元した<span lang="EN-US"> SQL Server </span>データベースエンジン インスタンスに接続します。</span></span></span><span lang="EN-US"></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">2. ReportServer </span>データベースをカレントとし、下記のクエリを実行します。</span></span></span><span lang="EN-US"></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">#&lt;</span>移行元のサーバー名<span lang="EN-US">&gt; </span>は移行元のサーバー名を入力してください。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">USE ReportServer</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">GO</span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">-- </span>まずは下記コマンドを実行します。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">BEGIN TRANSACTION</span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">DELETE FROM Keys WHERE MachineName='&lt;</span>移行元のサーバー名<span lang="EN-US">&gt;'</span></span></span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">-- (1 </span>行処理されました<span lang="EN-US">) </span>と結果表示され、<span lang="EN-US">1</span>行のみ削除されたことを確認します。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">-- </span>問題なければ、下記のようにコミットします。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">COMMIT TRANSACTION</span></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small"> </span></span>

<span style="font-size: small"><span style="font-family: 游ゴシック"><span style="color: #000000"><span lang="EN-US">-- 0</span>件、もしくは<span lang="EN-US">2</span>件以上削除された場合には、下記のようにロールバックします。</span></span></span><span lang="EN-US"></span>

<span lang="EN-US"><span style="color: #000000;font-family: 游ゴシック;font-size: small">ROLLBACK TRANSACTION</span></span>

&nbsp;
<div style="width: 1000px;overflow: hidden">
<div></div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>Azure Functions で SQL Data Warehouse の価格レベルを変更する</title>
      <link>https://docs.microsoft.com/archive/blogs/jpsql/azure-functions-sql-data-warehouse-slo-change</link>
      <pubDate>Wed, 13 Jun 2018 12:54:05 GMT</pubDate>
      <dc:creator><![CDATA[Microsoft Japan SQL Server Support Team]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/jpsql/?p=13055</guid>
      <description><![CDATA[今回の投稿は、Azure Functions で SQL Data Warehouse の価格レベルを変更する方法です。
SQL Data Warehouse の価格レベルは、Azure...]]></description>
      <content:encoded><![CDATA[<!-- kowatana -->
<h5>今回の投稿は、Azure Functions で SQL Data Warehouse の価格レベルを変更する方法です。</h5>
<h5 style="text-align: left"><span style="color: #000000"><span style="font-family: Calibri">SQL Data Warehouse </span><span lang="JA">の価格レベルは、</span></span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/quickstart-scale-compute-portal">Azure Portal</a></span><span lang="JA">、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/quickstart-scale-compute-powershell">PowerShell</a></span><span lang="JA">、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/quickstart-scale-compute-tsql">T-SQL</a> </span><span lang="JA">、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/sql-data-warehouse-manage-compute-rest-api#scale-compute">REST API</a> </span><span lang="JA">などいくつかの変更方法があります。</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"></span></h5>
<h5 style="text-align: left"><span lang="JA">今回は、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://azure.microsoft.com/ja-jp/services/functions/">Azure Functions</a> </span><span lang="JA">から</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/sql-data-warehouse-manage-compute-rest-api#scale-compute">REST API</a> </span><span lang="JA">を使用して、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif">SQL Data Warehouse </span><span lang="JA">の価格レベルをスケジュール変更する方法をご紹介します。</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"></span></h5>
<h5 style="text-align: left"><span lang="JA">※</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://azure.microsoft.com/ja-jp/services/functions/">Azure Functions</a> </span><span lang="JA">はサーバーレスでアプリケーションを構築するための</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> Azure </span><span lang="JA">の</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> SaaS </span><span lang="JA">サービスです。</span></h5>
&nbsp;
<h4><strong>■ テンプレートから作成できます！</strong></h4>
<h5><span><span style="color: #000000">Function App <span lang="JA">を１から作るのは大変だなぁ・・・と思う方も大丈夫です！</span></span></span></h5>
<h5><span style="color: #000000"><span lang="JA">価格レベルをスケジュール変更するための</span><span> Function App <span lang="JA">向けのテンプレートがあります。</span></span></span></h5>
&nbsp;
<h5 style="text-align: left"><span lang="JA">タイトル</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> : </span><span style="margin: 0px;color: black;font-family: 'Segoe UI Light',sans-serif">Azure SQL Data Warehouse </span><span lang="JA">で</span><span style="margin: 0px;color: black;font-family: 'Segoe UI Light',sans-serif"> Azure Functions </span><span lang="JA">を使用してコンピューティング</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI Light',sans-serif"> </span><span lang="JA">リソースを管理します</span><span lang="JA" style="margin: 0px;color: black;font-family: 'ＭＳ ゴシック'">。</span><span style="margin: 0px;color: black;font-family: 'ＭＳ ゴシック'"></span></h5>
<h5 style="text-align: left"><span lang="JA">アドレス</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> : <a href="https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/manage-compute-with-azure-functions">https://docs.microsoft.com/ja-jp/azure/sql-data-warehouse/manage-compute-with-azure-functions</a></span><span style="margin: 0px;font-family: 'Segoe UI',sans-serif"></span></h5>
&nbsp;
<h5><span style="color: #000000"><span lang="JA">前述の通り、</span><span>Function App <span lang="JA">で作成したは、サーバーレスの</span> API <span lang="JA">として実行することが可能です。</span></span></span></h5>
<h5><span style="color: #000000"><span lang="JA">本</span><span> Post <span lang="JA">では、指定したスケジュールで自動的に価格レベルを変更するように設定をしていますが、</span></span></span></h5>
<h5><span style="color: #000000"><span><span lang="JA">工夫次第ではほかにも色々な形でシステムに取り入れることが可能になります。</span></span></span></h5>
&nbsp;
<h4><strong>■ テンプレートを使用する前に</strong></h4>
<h5><span lang="JA">Function App をテンプレートから作成する前に、事前に準備を行います。</span></h5>
<h5>まず<span lang="JA">共同作成者のアクセス権を持った</span><span><span lang="JA">サービス</span><span lang="JA"> </span><span lang="JA">プリンシパル</span><span lang="JA"> </span></span><span lang="JA"><span>アカウント</span>を作成する必要があります</span><span lang="JA">。</span><span></span></h5>
<h5><span lang="JA">具体的な手順は</span><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal"><span lang="JA">こちらのページ</span></a></span><span lang="JA">に記載がありますので、</span></h5>
<h5><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#required-permissions"><span lang="JA">必要なアクセス許</span><span lang="JA">可</span></a></span><span lang="JA">・</span><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#create-an-azure-active-directory-application">Azure Active Directory <span lang="JA">アプリケーションを作成す</span><span lang="JA">る</span></a></span><span lang="JA">・</span></h5>
<h5><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-application-id-and-authentication-key"><span lang="JA">アプリケーション ID </span><span lang="JA">と認証キーを取得す</span><span lang="JA">る</span></a> </span><span lang="JA">・</span><span lang="JA"> </span><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-tenant-id"><span lang="JA">テナント</span> ID <span lang="JA">を取得す</span><span lang="JA">る</span></a></span><span lang="JA">・</span><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#assign-application-to-role"><span lang="JA">アプリケーションをロールに割り当て</span><span lang="JA">る</span></a> </span></h5>
<h5>の手順で<span><span lang="JA">サービス</span><span lang="JA"> </span><span lang="JA">プリンシパル</span><span lang="JA"> </span></span><span lang="JA"><span>アカウント</span>を作成し、</span><span lang="JA">必要な値を控えます。</span><span></span></h5>
&nbsp;

<strong><span style="text-align: left;color: #333333;line-height: 24px;text-indent: 0px;letter-spacing: normal;font-family: Georgia,'Times New Roman','Bitstream Charter',Times,serif;font-size: 16px;font-style: normal;font-variant: normal;text-decoration: none;cursor: text;float: none;background-color: transparent">※※※ ポイント ※※※</span></strong>
<h5><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-application-id-and-authentication-key"><span lang="JA">アプリケーション ID </span><span lang="JA">と認証キーを取得す</span><span lang="JA">る</span></a> </span><span lang="JA">の</span><span lang="JA"> </span><span lang="JA">認証キ</span><span lang="JA">ーは生成後しか確認できません。</span></h5>
<h5><span lang="JA">そのため、生成後に必ずコピーを控えてください。</span><span><span lang="JA">⑨</span><span lang="JA"> </span>Service Principal Secret Key <span lang="JA">で入力する必要があります。</span></span></h5>
<h5><span><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#assign-application-to-role"><span lang="JA">アプリケーションをロールに割り当てる</span></a> </span><span lang="JA">の</span><span> [5. </span><span lang="JA">アプリケーションに割り当てるロールを選択します</span><span lang="JA">。</span><span>] <span lang="JA">では、</span></span><u><span lang="JA">共同作成者</span></u><span lang="JA">を選択します。</span><span></span></h5>
&nbsp;
<h4><strong>■ テンプレートを使ってみましょう！</strong></h4>
<h5 style="text-align: left"><span lang="JA">ページ内の</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif">  <a href="https://msdnshared.blob.core.windows.net/media/2018/06/0.png"><img width="203" height="57" class="size-full wp-image-13065 alignnone" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/06/0.png" /></a>     </span><span lang="JA">を押すと、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif">Function App </span><span lang="JA">のカスタム</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span lang="JA">デプロイ画面に遷移します。</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"></span></h5>
<h5 style="text-align: left"><span lang="JA">以下のカスタム</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span lang="JA">デプロイの画面で必要な項目を入力すれば、アプリケーションの作成は完了です。</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"></span></h5>
<h5><span lang="JA"></span></h5>
<h4 style="text-align: left"><a href="https://msdnshared.blob.core.windows.net/media/2018/06/1.png"><img width="1024" height="885" class="alignnone wp-image-13075 size-large" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/06/1-1024x885.png" /></a></h4>
<h5 style="text-align: left">入力項目は以下のとおりです。</h5>
<h5 style="text-align: left"><span lang="JA"></span></h5>
<h5 style="text-align: left">▶ <span lang="JA">サブスクリプション</span><span style="margin: 0px;font-family: 'Segoe UI',sans-serif"> :  </span><span lang="JA">プルダウンのメニューからご利用のサブスクリプションを選びます。</span><span style="margin: 0px;font-family: 'Segoe UI',sans-serif"></span></h5>
<h5>▶ <span lang="JA"></span><span lang="JA">リソースグループ</span><span lang="JA"> </span>:  Function App <span lang="JA">で使用するリソースグループを選択します。</span></h5>
<h5>▶ <span lang="JA"></span>SQL DW Resource Group :  SQL Data Warehouse<span lang="JA">のリソースグループを入力します。</span></h5>
<h5>▶ <span lang="JA"></span>SQL DW Logical Server Name : <span lang="JA"> </span>SQL Data Warehouse<span lang="JA">のサーバー名を入力します。</span></h5>
<h5><span lang="JA">（</span>Server.database.windows.net であれば、Server 部分のみでよい）</h5>
<h5>▶ <span lang="JA"></span>SQL DW Name : SQL Data Warehouse <span lang="JA">のデータベース名を入力します。</span></h5>
<h5>▶ <span lang="JA"></span>Active Directory ID : <span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-tenant-id"><span lang="JA">テナント ID </span><span lang="JA">を取得する</span></a></span><span lang="JA">の手順で取得します。</span></h5>
<h5><span lang="JA">（３．</span><span lang="JA">ディレクトリ ID </span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI Bold'"> </span><span style="margin: 0px;color: black;font-family: 'Segoe UI Bold'"></span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span lang="JA">をコピーします。</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span lang="JA">この値がテナント ID </span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"></span><span lang="JA">です</span><span lang="JA">。の箇所）</span></h5>
<h5>▶ <span lang="JA"></span>Subscription ID : <span lang="JA">ご利用のサブスクリプション ID </span><span lang="JA"></span><span lang="JA">を入力します。</span></h5>
<h5>▶ <span lang="JA"></span>Service Principal Application ID : <span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-application-id-and-authentication-key"><span lang="JA">アプリケーション ID </span><span lang="JA">と認証キーを取得する</span></a> </span><span lang="JA">の手順で取得します</span><span lang="JA">。</span></h5>
<h5><span lang="JA">（２．</span><span lang="JA">アプリケーション ID </span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI Bold'"> </span><span style="margin: 0px;color: black;font-family: 'Segoe UI Bold'"></span><span lang="JA">コピーし、・・・</span><span lang="JA">の箇所）</span></h5>
<h5>▶ <span lang="JA"></span>Service Principal Secret Key : <span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-application-id-and-authentication-key"><span lang="JA">アプリケーション ID </span><span lang="JA">と認証キーを取得する</span></a> </span><span lang="JA">の手順で取得します</span><span lang="JA">。</span></h5>
<h5><span lang="JA">（５．</span><span lang="JA">キーの説明を入力</span><span lang="JA">し</span><span lang="JA">、・・・</span><span lang="JA">の箇所）</span></h5>
<h5><span lang="JA"> ※</span><span lang="JA">キーを保存すると、キーの値が表示されます。</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"> </span><span lang="JA">キーは後で取得できないため</span><span lang="JA">、必ずコピーを控えてください。</span></h5>
<h5>▶ WEBSITE_TIME_ZONE : <span lang="JA">スケジュールを設定するためのタイムゾーンです。</span></h5>
<h5><span lang="JA">日本時間</span> (JST) <span lang="JA">の場合には、</span>Tokyo Standard Time <span lang="JA">を指定します。</span></h5>
<h5>▶ <span lang="JA"></span>Scale Up Time / Scale Down Time : <span lang="JA">任意の時間を設定します。</span></h5>
&nbsp;
<h5 style="text-align: left"><span style="color: #000000"><span lang="JA">入力後、使用条件に同意の上、</span><span style="font-family: Calibri">[</span><span lang="JA">購入</span><span style="font-family: Calibri">] </span><span lang="JA">ボタンを押下します。</span></span></h5>
<h5><span style="color: #000000"><span lang="JA">作成後、</span><span style="font-family: Calibri">Azure Portal </span><span lang="JA">の</span><span style="font-family: Calibri"><span lang="JA"> </span>[Function App] </span><span lang="JA">から作成した</span><span style="font-family: Calibri"><span lang="JA"> </span>Function App </span><span lang="JA">を確認できます。</span></span></h5>
&nbsp;
<h5><span lang="JA"></span></h5>
<h4><strong><span lang="JA"><span style="color: #000000">■ 変更する価格プランの指定</span></span></strong></h4>
<span style="color: #000000"><span lang="JA">価格プランの変更は</span><span style="font-family: Calibri"><span lang="JA"> </span>javascript </span><span lang="JA">を使用して実行します。</span></span>

<span style="color: #000000"><span style="font-family: Calibri">index.js の ServiceLevelObjective </span><span lang="JA">にて変更後の価格プランを指定します。</span></span>

Ex) <span>"ServiceLevelObjective"</span><span>: </span><span style="text-decoration: underline"><strong><span style="color: #ff0000;text-decoration: underline">"DW100"</span></strong></span>

<a href="https://msdnshared.blob.core.windows.net/media/2018/06/2.png"><img width="956" height="593" class="alignnone wp-image-13085 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/06/2.png" /></a>

&nbsp;
<h4><strong><span lang="JA"><span style="color: #000000">■ スケジュールの変更</span></span></strong></h4>
<span lang="JA">コンピューティングレベルを変更する時間は、</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"><a href="https://docs.microsoft.com/ja-jp/azure/azure-functions/functions-bindings-timer#cron-expressions">CRON <span lang="JA" style="margin: 0px;font-family: 'ＭＳ ゴシック'">式</span></a> </span><span lang="JA">を使用して設定します。</span><span style="margin: 0px;color: black;font-family: 'Segoe UI',sans-serif"></span>

<span lang="JA">※タイムゾーンは</span><span lang="JA" style="margin: 0px;color: black;font-family: 'Segoe UI Semibold',sans-serif"> </span><span style="color: #000000;font-family: Calibri">WEBSITE_TIME_ZONE </span><span lang="JA"><span style="color: #000000">で設定した</span><span>タイムゾーンに準じます。</span></span>

<span lang="JA"><span>（</span></span><span lang="JA">今回の例は</span><span lang="JA"> </span>Tokyo Standard Time です。Tokyo Standard Time は UTC+9 時間の JST 時刻です。<span lang="JA">）</span><span style="margin: 0px;color: black;font-family: 'Segoe UI Semibold',sans-serif"></span>

&nbsp;

<span style="color: #000000"><span lang="JA">以下はスケールダウンをする時間を毎日</span><span style="font-family: Calibri"><span lang="JA"> </span>09:30 (Tokyo Standard Time) </span><span lang="JA">に設定する場合の入力例です。</span></span>

<span style="color: #000000;font-family: Calibri">Ex) 0 30 9 * * *</span>

<a href="https://msdnshared.blob.core.windows.net/media/2018/06/3.png"><img width="1059" height="557" class="alignnone size-full wp-image-13095" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/06/3.png" /></a>

&nbsp;
<h4><strong><span lang="JA"><span style="color: #000000">■ 実行ログの確認方法</span></span></strong></h4>
<span style="color: #000000"><span lang="JA">作成した</span><span style="font-family: Calibri"><span lang="JA"> </span>Function App </span><span lang="JA">のログは</span><span style="font-family: Calibri"><span lang="JA"> </span>Storage </span><span lang="JA">アカウントに出力されます。</span></span>

<span style="color: #000000"><span lang="JA">パス</span><span lang="JA"><span style="font-family: Calibri"> </span></span><span lang="JA">：</span><span style="font-family: Calibri"><span lang="JA"> </span>File Shares &gt; [App Service Name] </span><span lang="JA">＞</span><span style="font-family: Calibri"> LogFile </span><span lang="JA">＞</span><span style="font-family: Calibri"> application &gt; functions &gt; function &gt; DWOperationQueue</span></span>

<a href="https://msdnshared.blob.core.windows.net/media/2018/06/4.png"><img width="1338" height="459" class="alignnone size-full wp-image-13105" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/06/4.png" /></a>

<span lang="JA"><span style="color: #000000">出力されたログからは以下のような内容を確認できます。</span></span>

&nbsp;

<strong><span style="color: #000000;font-family: Calibri">2018-06-**T00:30:00.315 [Info] Function <span style="color: #ff0000">started</span> (Id=****************************)</span></strong>

<strong><span style="color: #000000;font-family: Calibri">2018-06-**T00:30:06.772 [Info] JavaScript queue trigger function processed work item { operationType: 'ScaleDw', ServiceLevelObjective: <span style="color: #ff0000">'DW100'</span> }</span></strong>

<strong><span style="color: #000000;font-family: Calibri">2018-06-**T00:30:06.772 [Info] Operation request for: ScaleDw with scale value: <span style="color: #ff0000">DW100</span></span></strong>

<strong><span style="color: #000000;font-family: Calibri">2018-06-**T00:30:06.772 [Info] Retrieving authorization token for REST command</span></strong>

<strong><span style="color: #000000;font-family: Calibri">2018-06-**T00:30:06.804 [Info] Function <span style="color: #ff0000">completed</span> (Success, Id=****************************), Duration=6489ms)</span></strong>

<span style="color: #000000;font-family: Calibri"> </span>

<span lang="JA"><span style="color: #000000">いかがでしたでしょうか。</span></span>

<span style="color: #000000"><span lang="JA">ぜひサーバーレスの </span><span style="font-family: Calibri"><span lang="JA"></span></span></span><span lang="JA"></span><span><a href="https://azure.microsoft.com/ja-jp/services/functions/">Azure Functions</a> </span><span lang="JA"></span><span style="color: #000000"><span style="font-family: Calibri"><span lang="JA"></span> </span><span lang="JA">を使用して、価格プランの変更を試してみてください。</span></span>

&nbsp;

<hr />

<h4 style="text-align: left"><span style="color: #333333;font-family: 'Segoe UI', Tahoma, Arial, 'Helvetica Neue', Helvetica, sans-serif;font-size: 14px;font-style: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;background-color: #ffffff;float: none">本情報の内容 (添付文書、リンク先などを含む) は、作成日時点でのものであり、予告なく変更される場合があります。</span></h4>
&nbsp;]]></content:encoded>
    </item>
  </channel>
</rss>