Redbook : IBM i 7.6 Features and Functions を読む part.x ACS

事情（調べないとな(^^;）で、途中から続きます。

## Chapter 6 IBM i Access Client Solutions (ACS)

***IBM i 7.6 リリースで提供されるすべての機能を利用するためには、ACS の最新バージョン(現時点では) 1.1.9.8 以降をご使用ください。***

英語ですが、***IBM ACS Videos*** で検索すると色々な紹介ビデオを検索できます。

あらためて、**[ACSのダウンロードサイトへはこちら](https://www.ibm.com/support/pages/ibm-i-access-client-solutions)**

### IBM i 7.6でMFAをオンにしたシステムへ接続する際
下記のように Additional Factor フィールドが追加になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/36cdf699-dfbc-4398-bde0-ceec9e272869.png)

### SQL Tutor 
Db2 for i チームは、すべての IBM i ユーザーの生産性を向上させるためのリソースとして、[SQL Tutor](https://www.ibm.com/support/pages/ibm-i-tutorials-demos-and-sql-examples-0) を作成しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/30832245-2009-4705-b962-a75a0519bf4e.png)

上記のSQL tutor ページのリンクからいろいろな情報やSQLサンプルなどが沢山あるようです。（いずれ確認したいと思います‥）

たとえば、[Access Client Solutions (ACS)](https://www.ibm.com/support/pages/node/6340297/)を踏むと、、下記ページが表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/2daf1426-f30c-4976-ad89-449b6b276c53.png)

(機械翻訳ベース）
**SQL と ACS.sql を使ったスプレッドシートとメール**
この Gist では、IBM i に同梱されている ACS の jar ファイルを活用して、スプレッドシートの作成と IFS ファイルへのダウンロードでき、スプレッドシートの内容を SQL クエリで制御できます。

**IBM i で ACS を使用して spreadsheets.sql を作成する**
この例は、以前の Gist を簡略化したものです。ACS は現在、PTF を通じて IBM i に同梱されています。ACS に大幅な機能強化が加えられた後続の PTF が提供されます。

**スプレッドシートの自動化**
この作業例では、生成するスプレッドシートを含む SQL テーブルを作成します。テーブルの各行には、スプレッドシートのデータを提供するクエリと、スプレッドシートを格納する IFS 内の場所を指定します。さらに、別の手順で、スプレッドシートを興味のあるユーザーにメールで送信します。

**Eメールの自動化**
システム管理者は、出口プログラムを利用することで、SQLを使用した監査、理解、そしてリアルタイムのビジネスルールの構築を強化できます。QZDASOINITジョブの場合、これは容易に解決不可能な謎とみなされるかもしれません。Db2 for iクライアント特殊レジスターの助けを借りれば、ZD…出口プログラムについて多くのことを理解できます。

面白そうですね、別でちょっと調べてみたいと思います。

### SQL パフォーマンスセンター
SQL パフォーマンスセンターは、SQL パフォーマンスデータを操作するための管理機能です。SQL開発関連のツールセットが提供されています。

***パフォーマンスモニター*** - STRDBMONコマンドによって取得されたパフォーマンスデータです。

***プランキャッシュスナップショット*** - ユーザーの要求に応じて保存された SQL プランキャッシュデータ。

***プランキャッシュイベントモニター*** - プランがキャッシュから削除される際に取得された SQL プランキャッシュデータ。

※SQL プランキャッシュのプロパティもタブに表示され、プランキャッシュの設定を検査および管理できます。そこから「ステートメントの表示」を起動して、個々のステートメントプランを操作できます。

***ツールの機能例***
**分析** - 収集されたパフォーマンスデータの要約ビューを提供し、ドリルダウンナビゲーションを使用してより詳細な分析を開始するための出発点となります。
**比較** - 2つ以上のパフォーマンス・データ・コレクションの概要比較を表示し、そのうち2つを選択して、より詳細なステートメント比較を行います。
**SQLステートメントの表示** - SQLプラン・キャッシュまたはパフォーマンス・データ・コレクション内のSQLステートメントを操作します。
**Visual Explain** - データベース内部でのSQLステートメント実行プランのグラフィカル表現を生成し、SQLステートメントの動作を正確に確認できます。

***IBM i 7.6で追加された重要な機能の1つは、改善されたインデックス情報です。これには、検討されたインデックスと使用されているインデックスが含まれます。***

以下は、「推奨索引」と「推奨索引の圧縮」という2つのオプションが表示された索引情報を示しています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/cc1ac48e-89d9-4fd3-b4ed-1082029b67be.png)

次の画像は、考慮された索引と、実際には使用されなかった理由の詳細が表示しています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/61c23ef0-037e-4030-82a5-899dfd712846.png)

ACSの様々なサンプルがQUSRSYSライブラリーにあります、仕様には*JOBCTL 特殊権限と QIBM_DB_SQLADM 関数の使用権限と権限が必要な場合があります。

### ACSによるIFS操作

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/756d2b4f-e903-4932-a310-974f25b19726.png)

上記のようなIFS操作をGUIでできますが、Redbookには、
***NetServer を無効にして、代わりに ACS IFS 管理を使用することを検討してください。そうすることで、たとえIBM iに接続しているクライアントのオペレーティング・システムがランサムウェア攻撃の影響を受けても、IBM iがランサムウェア攻撃の影響を受ける可能性を大幅に低減できます。***

### ACSによるスプール操作
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/ae4d6689-301d-4039-9797-c4c220731ea6.png)
***ヒント: アクティブ タスク パネル (Ctrl+T) を有効にすると、アクティブまたは未処理のタスクのステータスが表示されます。これは、大きなスプールファイルや多数のスプールファイルをダウンロードする場合に特に便利です。***

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1011394/23a4824e-98ec-432b-ba56-2d4836ec9923.png)

***[編集] メニューの [フィルター] 機能 (Ctrl+F) を使用すると、図 6-19 に示すように、ユーザー、出力キュー、ジョブ情報、ユーザー データ、および時刻に基づいてスプールをより簡単に見つけることができます。***