カテゴリー: 技術系

  • SQL Server でストアドプロシージャの一覧を表示する

    SQL Serverでストアドプロシージャの一覧を表示するためには、「INFORMATION_SCHEMA」の「ROUTINES」ビューを参照する。’ROUTINE_TYPE’で’PROCEDURE’ を指定することでプロシージャのみに絞り込める。絞り込みを行わない場合は、FUNCTION なども表示される。

    ■プロシージャのみで絞り込み

    SELECT
        *
    FROM
        INFORMATION_SCHEMA.ROUTINES
    WHERE
        ROUTINE_TYPE = 'PROCEDURE'
    ORDER BY
        SPECIFIC_CATALOG, SPECIFIC_SCHEMA, SPECIFIC_NAME

    ■プロシージャだけでなく、ファンクションも表示する

    SELECT
        *
    FROM
        INFORMATION_SCHEMA.ROUTINES
    ORDER BY
        SPECIFIC_CATALOG, SPECIFIC_SCHEMA, SPECIFIC_NAME

    ■必要なものだけ表示する

    SELECT
        SPECIFIC_CATALOG, SPECIFIC_SCHEMA, SPECIFIC_NAME, ROUTINE_CATALOG, ROUTINE_SCHEMA, ROUTINE_NAME, ROUTINE_TYPE
    FROM
        INFORMATION_SCHEMA.ROUTINES
    ORDER BY
        SPECIFIC_CATALOG, SPECIFIC_SCHEMA, SPECIFIC_NAME

    参考:

    INFORMATION_SCHEMA.ROUTINES の説明

    現在のデータベースの現在のユーザーがアクセスできるストアド プロシージャと関数ごとに、1 行のデータを返します。 戻り値を記述する列は、関数にのみ適用されます。 ストアド プロシージャの場合、これらの列は NULL になります。

    https://learn.microsoft.com/ja-jp/sql/relational-databases/system-information-schema-views/routines-transact-sql?view=sql-server-ver16

  • Veeam Backup & Replication 11で必要なメモリサイズ

    1台のサーバに、データの保存先を含めたVeeam Backup & Replicatiion 11の全機能をインストールするときに必要なメモリサイズを計算する。同時に実行するタスクの数により、必要なメモリとCPUのコア数が変わる。4タスクを同時に動かす想定。

    4タスクを同時実行する、1台構成のVeeamのメモリとCPU

    ■メモリサイズ

    基本  4GB
    コンソール 0GB(2GB ‐ 2GB)
    プロキシサーバ 6GB(2GB x 4タスク ‐ 2GB)
    バックアップリポジトリサーバ 10GB(4GB + 2GB x 4タスク ‐2GB)
    ※1台に複数機能を入れる場合には、1機能あたり、2GBを引けるとのこと
    ※バックアップリポジトリを分割すると、半分の10GBで済む。その場合は、バックアップリポジトリサーバは、12GBのメモリが必要になる想定。

    合計 20GB

    ■CPUのコア数

    基本 4コア
    プロキシサーバ 4コア(1コア x 4タスク)

    合計 8コア

    ここでの計算が漏れている可能性もあるため、余剰でメモリを割り当てられるのであれば、もっと多いメモリサイズを割り当てた方がよい。

    参考:  https://helpcenter.veeam.com/jp/archive/backup/110/vsphere/system_requirements.html

  • Veeam Backup & Replication 12で必要なメモリサイズ

    1台のサーバに、データの保存先を含めたVeeam Backup & Replicatiion 12の全機能をインストールするときに必要なメモリサイズを計算する。同時に実行するタスクの数により、必要なメモリとCPUのコア数が変わる。4タスクを同時に動かす想定。

    なお、バージョン12では、バックアッププロキシでの複数タスクの実行で消費されるメモリが少なくなっている。

    4タスクを同時実行する、1台構成のVeeamのメモリとCPU

    ■メモリサイズ

    基本  6GB(4GB + 0.5GB x4タスク)
    コンソール 0GB(2GB ‐ 2GB)
    プロキシサーバ 2GB(2GB + 0.5GB x 4タスク ‐ 2GB)
    バックアップリポジトリサーバ 6GB(4GB + 1GB x 4タスク ‐2GB)
    ※1台に複数機能を入れる場合には、1機能あたり、2GBを引けるとのこと
    合計 14GB

    ■CPUのコア数

    基本 4コア
    プロキシサーバ 4コア(1コア x 4タスク)
    合計 8コア

    ここでの計算が漏れている可能性もあるため、余剰でメモリを割り当てられるのであれば、もっと多いメモリサイズを割り当てた方がよい。

    参考: 

    https://helpcenter.veeam.com/docs/backup/vsphere/system_requirements.html?ver=120

  • Windowsのファイルサーバでアクセス権のないファイルやフォルダが表示されない

    ファイルサーバのデータ移行をしていて、共有からアクセスするとアクセス権のないファイルやフォルダが表示されない(アクセス権のないファイルやフォルダが見えない)、という状況があった。

    気になって調べてみると、SMBのプロトコルバージョンやCIFSバージョンの問題ではなく、Windowsのフォルダ設定で、「アクセス許可設定に基づいた列挙を有効にする」の設定にチェックが入っている(オンになっている)と、アクセス権のないフォルダやファイルは表示されなくなる。設定中に、オンにしてしまっていたようだ。「アクセス許可設定に基づいた列挙を有効にする」の設定のチェックボックスでチェックを外して保存すれば、アクセス権のないフォルダやファイルも見えるようになる。

    「アクセス許可設定に基づいた列挙を有効にする」の設定は以下。

    1.「サーバーマネージャー」を開く

    2.サイドメニューから「ファイル サービスと記憶域サービス」を開く

    3.サイドメニューから「共有」を開く

    4.表示された共有一覧から、対象の共有名を選んで、右クリックからプロパティを開く

    5.プロパティの中の「設定」を開く

    6.「アクセス許可設定に基づいた列挙を有効にする」を確認する、必要に応じて、チェックのオン・オフを行う

    Windows Server 2022の既定値も調べてみたが、「アクセス許可設定に基づいた列挙を有効にする」(Access Based Enumeration)は、既定値はオフ。

    なお、マイクロソフトのドキュメントによると、「一部の環境では、アクセス ベースの列挙を有効にすると、サーバーの CPU 使用率が高くなり、ユーザーの応答時間が遅くなります。」とのことなので、特別な要件がなければ、オフの方がよさそうだ。

    参考: 

    https://learn.microsoft.com/ja-jp/windows-server/storage/dfs-namespaces/enable-access-based-enumeration-on-a-namespace

  • Intel CPUに「Downfall Attacks」の脆弱性

    IntelのCPUに「Downfall Attacks」と呼ばれる脆弱性が見つかったとのこと。

    第6世代Skylakeから第11世代Rocket LakeおよびTiger LakeまでのIntelプロセッサを使っているコンピュータが対象になるとのこと。この脆弱性を悪用すると、Gather Data Samplingを使用して他のユーザーからデータやその他の機密情報を盗み出すことができるようだ。

    Linuxについては、Gather Data Samplingを無効化する方法が公開されているがパフォーマンスが低下するようだ。Windowsについては、Microsoftが対策中のようだ。今後の動きは注目しておきたい。

    参考

    https://texal.jp/2023/08/10/new-downfall-vulnerability-in-intel-cpus-allows-encryption-keys-and-data-to-be-stolen/

    https://jvn.jp/vu/JVNVU99796803/index.html

  • VMware ESXi 6.7でWindows 2000 ServerのマウスがWebコンソールで動作しない

    VMware ESXi 6.7環境(vSphere 6.7)に、新しくWindows 2000 Server をインストールした。インストールの時と、インストール後に、vCenter Serverの「Web コンソール」だと、マウスが動かなかった。

    Webコンソールではなく、「VMware Remote Console」を使ったところ、マウス操作を行うことができた。ただし、VMware toolsがインストールはできていないので、マウス操作は安定しない。

    なお、ESXi 6.7 のVMware toolsのインストーラーだと、Windows 2000 Serverにインストールできない。

  • Google Chatのテキストでハイパーリンクが使えるようになった

    ちょっと前に、Googleからアナウンスされていたが、Google Chatのテキストにハイパーリンクが使えるようになった。

    https://workspaceupdates.googleblog.com/2023/07/add-hyperlinks-to-text-in-google-chat.html

    今までは、ブラウザでURLをコピーして、Google Chatのテキスト部分に張り付けると、自動的にタイトルで貼り付けできるもののリンクにはならなかった。URLを張り付けようとすると、Ctrl+Shift+Vで、プレーンテキストとして貼り付けをしないと、コピーしたURLにならないという問題があった。それが今度は、通常のコピペで、リンク付きのタイトルが張り付けられるようになった。もちろん、プレビューも作成されるので便利になった。

    Googleのステータスとしては、ロールアウト済みになっているので、基本的には使えるはず。

  • Gitlab CEをインストールしたUbuntuのOSをアップグレード

    “sudo do-release-upgrade” を実行したところ、”Please install all available updates for your release before upgrading.” が表示された。先にパッケージを最新にしろというので、”sudo apt update” “sudo apt upgarade” でパッケージを最新化した。

    その後、”sudo do-release-upgrade” を実行したところ、rebootを求められたので、再起動を実施した。

    再起動後に、”sudo do-release-upgrade” して、OSはUbuntu 18.04 から Ubuntu 20.04 にアップグレードできた。アップグレードのときに、サードパーティのaptリポジトリが対象から外された。外れたリポジトリは、GitLab CEのリポジトリ。

    Ubuntu 20.04に無事にアップグレードされた後に、apt update を行ったが、gitlab用のリポジトリは対象には入っていなかった。そのため、下記のコマンドで、リポジトリを再登録した。

    curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash 

    その後に、apt update を行い、対象にGitLabのリポジトリが含まれていることを確認した。このとき、アップデート対象に、GitLab CEが含まれていたので、apt upgradeでインストールした。このときの動作は、16.2.0-ce.0から16.2.0-ce.0の同じバージョンでの上書きインストールだった。

    gitlab-ce/focal 16.2.0-ce.0 amd64 [16.2.0-ce.0 からアップグレード可]

    これで無事にアップグレード完了。

  • WindowsのDNSサーバの名前解決用の設定ファイルの保存場所

    Windows Serverの役割として、DNSサーバを追加したときの設定ファイル(ゾーンファイル)の保存。Windows Server 2008 R2, Windows Server 2019, Windows Server 2022のDNSサーバで確認したが、全部同じ保存パスだった。「ZONE 名.dns」のファイルが、ゾーンファイル。

    ■設定ファイルの保存場所

    %SYSTEMROOT%\system32\dns
    C:\Windows\System32\dns

    「ZONE 名.dns」というファイルがあり、これがゾーンファイルの形式になっている。中身はテキストなので、テキストエディタで開けば確認はできる。バックアップが必要ならば、このファイルをバックアップする。テキスト形式なので、subversionやGitに登録して、差分管理することも可。

  • Windows Server 2022で作成したADの機能レベルは2016

    Windows Server 2022で新しく作成したActive Directory(AD)のドメイン機能レベルはWindows Server 2016。

    Windows Server 2019やWindows Server 2022では新しく、ドメイン機能レベルは追加されていないため、機能レベルはWindows Server 2016で作成される。