sql >> データベース >  >> RDS >> Sqlserver

SQLServer本番DBAに関する5つの便利なヒント

    SQL ServerとSQLデータベースはかなり前から存在しており、管理者がその中でパフォーマンスを向上させるために利用できる多くの手法と戦略があります。多くのDBAは、主に本番環境で役立つヒントのいくつかを認識していません。ここでは、SQLServerの運用DBAの仕事で有益で役立つと思われるいくつかのランダムなヒントについて説明します。

    #1。古いバックアップファイルを削除するためのForfilesユーティリティ

    Forfiles(forfiles.exe)ユーティリティは、Windows Server 2003にプリインストールされています。ITにより、管理者はバッチファイル処理を実行できます。そのため、DBAはこのサービスをSQL Serverエージェントと組み合わせて使用​​できます。これにより、古いデータベースバックアップの削除が可能になり、SQL Serverのメンテナンス、xp_cmdshell拡張ストアドプロシージャ、またはVBScriptオブジェクトへの依存関係がなくなります。

    #2。 「ALTERUSER」を使用して孤立したログインを修復する

    SQL Server 2005 SP2以降、T-SQLのALTERUSERコマンドにもWITHLOGIN句が含まれています。これを選択すると、ユーザーのSIDをサーバーログインのセキュリティ識別子に変更することで、孤立したログインを修復できます。 SQLServerだけでなくWindowsログインも改善できます。孤立したユーザーは、データベースが別のサーバーから復元されたときに作成され、そのログインは独立して作成されます。

    #3。 「sp_addsrvrolemember」を使用してsysadminの役割を引き受けます

    SQL Server 2008以降、sysadminロールはデフォルトでWindows管理者に付与されていません。これをカバーするために、シングルユーザーモードまたはメンテナンスモードでSQL Serverインスタンスを開始してから、Sqlcmdユーティリティのストアドプロシージャで「sp_addsrvrolemember」を実行して、sysadminロールにログインを追加できます。

    #4。接続の問題をトラブルシューティングするためのPortQryUIの使用

    RemoteDBA.comの専門家が提案しているように、MicrosoftのPortQryUIを使用して、TCP/IP接続の問題のトラブルシューティングを行うことができます。 PortQryUIはPortQryの代替ですが、多くの事前定義されたサービスを備えたGUIを備えています。これらの事前定義されたポートグループの1つは、TCPポート1433とUDPポート1434で構成されるSQL Server用です。ポートを確認するには、IPアドレスまたはFQDN(完全修飾ドメイン名)またはターゲットSQLを入力するだけです。 「PortQryUI」でPortQryUIユーティリティをダウンロードするのは簡単です。

    #5。より大きなデータベースに対してDBCCCHECKDBを実行しながら、独自の戦略を試して使用してください

    データベースは日ごとに大きくなる傾向があるため、T-SQLのDBCCCHECKDBコマンドを使用して整合性をチェックするなどのメンテナンス手順には時間がかかる場合があります。 DBCC CHECKDBが割り当てられたメンテナンス期間を超えた場合、いくつかの解決策が考えられます。インスタントソリューションの1つは、バックアップにアクセスして別のサーバーにDBを復元してから、既存のサーバーに対してDBCCCHECKDBを実行することです。 2番目の解決策は、データベースの検証オプションをCHECKSUMにカスタム設定してから、PHYSICAL_ONLYオプションを指定してDBCCCHECKDBを実行することです。この組み合わせにより、DBCC CHECKDBの実行時間が短縮されますが、I/Oサブシステムは引き続き捕捉されます。

    #6。サーバー監視ツールを使用する

    「DBAはSQLサーバー監視ツールの機能を活用して、データベースパフォーマンスの概要を明確にし、明白なパフォーマンスの問題をトラブルシューティングすることができます。主要なソリューションはすべて非常に強力な機能を備えています。

    SentryOneサーバーの監視をお勧めします。これは、SentryOneサーバーが20年以上使用されており、その背後にあるSQLスペースで最大の頭脳を持っているためです。

    T-SQLのServer2008Center Managementサーバーとローカルサーバーグループを使用して、複数のサーバーに同時にクエリを実行することもできます。 SQL Server 2008では、ローカルサーバーグループを使用して、頻繁にアクセスされるサーバーにすばやく接続することもできます。


    1. Androidルームデータベースはすべてのデータをエクスポートしません

    2. JUnitテストフレームワークを使用したJavaユニットテストの調査

    3. T-SQLスタッフコマンド

    4. 画像をデータベースBLOBに保存します。 dbからPictureboxに取得