【Powershell】Out-Stringとかいう超絶イケメン

Powershellにて、コマンド出力結果に対し、grep(Select-String)をかけようとすると基本的にできない。
それは、出力結果はString型ではなく、Array型扱いになってしまうから。
そういう場合は、string型宣言をした変数に一旦代入してから、Select-Stringをかけていたけどそんなことすることなかったんですね。

このように、パイプでOut-String -Streamを渡してあげると、出力結果がString型に変換される。
そのあとにパイプでSelect-Stringを渡してあげるときれいにgrepできる。

一つ賢くなりました!

【PowerShell】Compare-Objectの出力結果にパイプ処理を使う

Compare-Objectを普通に使うと以下のようにプロパティ情報が欠落?する

-PatsThruオプションをつけてあげると、プロパティを保持してパイプわたしができる

Select-Objectで好きなプロパティを取り出せる

一つ賢くなれました!

【ActiveDirectory】サイト間の変更通知を有効化する

これ知らなかった。
サイト内のドメインコントローラーに対しては、アカウントロックやパスワード変更などが発生すると、15秒を待たずに緊急複製が行われる。
しかし、サイト外のドメインコントローラーには、緊急複製は行われずに通常と同様のサイトリンクのスケジュールに従ってレプリケーションされる。
サイト外ドメインコントローラーにも緊急複製を行う場合、変更通知機能を有効にする必要がある。

サイトとサービス→変更通知を有効にするサイトリンク

「USE_NOTIFY」とひょじされていればOK。

【ActiveDirectory】サイト作成

サイト作成方法を忘れている不届きものなので、反省として書きます。
TokyoとOsakaということで作ります。

TOKYOサイト作成

OSAKAサイト作成

TOKYO-OSAKAサイトリンク作成

それぞれ2台ともグローバルカタログサーバであることを確認
検索処理の可用性のために各サイト1台は作るとよいみたい

各ADサーバをTOKYO、OSAKAへ移動
サーバーオブジェクトを右クリ→移動



【Windows】WindowsServer2019にWSLをインストールする

WindowsServer2019からWSLをサーバーマネージャーからインストールできるようになったんですね。
今までは、2016まではCygwinとかを入れていたけれど、役割機能からすぐに入れられるので便利ですね。
ただ、サーバOSにLinux環境入れるのってどういう利点があるのかがイマイチ分からない。
ssh.exeとかもバンドルされているからDocker環境とかに使うのかな。まあいいか。

Powershellの場合

Ubuntuのインストール

Linux環境を使う

【SQL Server】互換性レベル

SQL Serverでは、直近3世代前まではデータベースリストアができる。
たとえば、SQL Server 2008の互換性レベルのデータベースを2019でリストアすることはできない。
そういう場合は、途中の2016とかを経由すればいいのかな?どうなんだろう

バージョン レベル
SQL Server 2000 80
SQL Server 2005 90
SQL Server 2008 100
SQL Server 2012 110
SQL Server 2014 120
SQL Server 2016 130
SQL Server 2017 140
SQL Server 2019 150