データベースファイルの場所を知る必要がある場合は、次のT-SQLコードを実行します。
USE master; SELECT name 'Logical Name', physical_name 'File Location' FROM sys.master_files;
これにより、SQLServerインスタンスのすべてのデータファイルとログファイルのリストが返されます。
MacのSQLOperationsManagementStudioでそのコードを実行すると次のようになります。
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
のデータとログファイルのみが返されます データベース。