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

SQLServerでデータファイルとログファイルの場所を見つける方法

    データベースファイルの場所を知る必要がある場合は、次のT-SQLコードを実行します。

    USE master;
    SELECT 
      name 'Logical Name', 
      physical_name 'File Location'
    FROM sys.master_files;
    

    これにより、SQLServerインスタンスのすべてのデータファイルとログファイルのリストが返されます。

    MacのSQL​​OperationsManagementStudioでそのコードを実行すると次のようになります。

    Windowsを使用している場合、パスはWindowsパスのようになります。このようなもの:

    C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\Music.mdf

    ただし、自分の場所を指定した場合は、次のように簡単に表示されます。

    D:\data\Music.mdf

    これらのファイルとは何ですか?

    SQL Serverでデータベースを作成すると、データファイルとトランザクションログファイルが自動的に作成されます。

    • データファイルには、テーブル、インデックス、ストアドプロシージャ、ビューなどのデータとオブジェクトが保持されます。
    • トランザクションログファイルには、すべてのトランザクションと、各トランザクションによって行われたデータベースの変更が記録されます。トランザクションログファイルには、データベース内のすべてのトランザクションを回復するために必要な情報が含まれています。

    これらのファイルの場所と名前を明示的に指定しない場合、SQL Serverはそれらをデフォルトの場所に配置します(デフォルトの場所はサーバーレベルで指定されます)。 SQLServerでデータファイルとログファイルのデフォルトの場所を見つける方法は次のとおりです。

    特定のデータベースのファイルを検索

    特定のデータベースのファイルの場所を見つけるだけでよい場合は、sys.database_filesにクエリを実行できます。 代わりにシステムカタログビュー。該当するデータベースに切り替えて、クエリを実行するだけです。

    次に例を示します:

    USE Solutions;
    SELECT
      name 'Logical Name', 
      physical_name 'File Location'
    FROM sys.database_files;
    

    これにより、Solutionsのデータとログファイルのみが返されます データベース。


    1. T-SQLPRINTステートメントの概要

    2. トリガーとチェック制約

    3. 包括的ではない間のSQL

    4. MySQLで配列変数をシミュレートするにはどうすればよいですか?