ตำแหน่งของไฟล์ mdf ของฐานข้อมูล


19

Projectฉันมีฐานข้อมูล ปัญหาของฉันคือที่ที่ฉันสามารถค้นหา.mdfและ_log.ldfของฐานข้อมูลของฉันเพื่อให้ฉันสามารถถ่ายโอนฐานข้อมูลของฉันไปยังผู้ใช้อื่น ฉันใช้ Microsoft SQL Server 2008 Management Studio

คุณสมบัติฐานข้อมูล f

ของฉันSsms.exeถูกเก็บไว้ในเส้นทางนี้

C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe

คำตอบ:


22

มีสองสามวิธีในการระบุตำแหน่งของไฟล์ mdf ของ SQL Server และไฟล์บันทึกที่เกี่ยวข้อง

  1. เปิด Enterprise Manager คลิกขวาที่ฐานข้อมูลที่คุณสนใจและเลือกคุณสมบัติ เลือกส่วนไฟล์และเลื่อนไปที่คอลัมน์PathและFileName

  2. เปิดหน้าต่างแบบสอบถามและเรียกใช้แบบสอบถามที่เกี่ยวข้องด้านล่างและดูPhysical_Nameคอลัมน์

SQL 2005 หรือใหม่กว่า:

SELECT * FROM sys.database_files

SQL 2000:

SELECT * FROM dbo.sysfiles
  1. เปิดหน้าต่างแบบสอบถามและเรียกใช้sp_helpfileและดูFileNameคอลัมน์

แน่นอนว่าไฟล์เหล่านี้ถูกใช้งานโดย SQL Server คุณไม่ควรพยายามคัดลอกไฟล์ไปยังตำแหน่งอื่น

วิธีที่ดีที่สุดคือทำการสำรองข้อมูลจากภายใน Enterprise Manager โดยการคลิกขวาที่ฐานข้อมูลที่คุณสนใจและเลือก Tasks -> Backup

หรือคุณสามารถแยกฐานข้อมูลคัดลอกไฟล์แล้วแนบ

ทางเลือกที่สามเมื่อคุณมีสำเนาของฐานข้อมูลทำงานที่อื่นคือการตั้งค่าบันทึกการจัดส่งหรือการจำลองแบบ


1
สิ่งนี้ไม่ได้สร้างข้อมูลเกี่ยวกับ TempDB รุ่นหรือ msdb
Slogmeister Extraordinaire

14

SQL 2005 เป็นต้นไป: แบบสอบถามต่อไปนี้จะให้รายชื่อของฐานข้อมูลและไฟล์ที่เกี่ยวข้องทั้งหมด:

SELECT sd.NAME
,smf.NAME
,smf.type_desc
,(CAST(smf.size AS FLOAT) * 8096) AS SizeBytes
,(CAST(smf.size AS FLOAT) * 8096) / (1024) AS SizeKB
,(CAST(smf.size AS FLOAT) * 8096) / (1024 * 1024) AS SizeMB
,(CAST(smf.size AS FLOAT) * 8096) / (1024 * 1024 * 1024) AS SizeGB
,smf.physical_name
,sd.log_reuse_wait_desc
,sd.recovery_model_desc
,*
FROM sys.databases sd
INNER JOIN sys.master_files smf ON sd.database_id = smf.database_id
WHERE
smf.type_desc IN (
    'ROWS'
    ,'LOG'
    )
ORDER BY SizeGB DESC

1
ฉันจะลบคำสั่งย่อย WHERE เพื่อให้แน่ใจว่าคุณได้รับไฟล์ทั้งหมดที่เกี่ยวข้องกับฐานข้อมูล
Slogmeister Extraordinaire

14

คุณอยู่ในกล่องโต้ตอบที่ถูกต้อง แต่แท็บไม่ถูกต้องเปิดแท็บไฟล์เส้นทางจะปรากฏขึ้นสำหรับไฟล์ฐานข้อมูลทั้งหมด ป้อนคำอธิบายรูปภาพที่นี่


2

วิธีที่ดีที่สุดและง่ายต่อการค้นหา(.mdf & .ldf)ไฟล์ขนาดและอัตราการเติบโต ฯลฯ รายละเอียดของฐานข้อมูลเฉพาะด้านล่างนี้กล่าวถึง TSQL Query

exec sp_helpdb @dbname='Databasename';
Go

-2

เส้นทางสำหรับ. mdf และ. ldf จะเป็น

ไดรฟ์ราก (ตำแหน่งที่ติดตั้งระบบปฏิบัติการ) ->

Programfiles (สำหรับแอปพลิเคชัน 64 บิต) หรือ programfiles (x86) สำหรับ 32 ตัว แต่สำหรับแอปพลิเคชัน ->

Microsoft SQL Server->

MSSQL11.SQL2012->

MSSQL->

ข้อมูล


MSSQL11.SQL2012 สำหรับผู้ใช้ที่ใช้งาน SQL 2012 ...

ดังนั้นคุณอาจรู้จักชื่อโฟลเดอร์ของคุณได้อย่างง่ายดายขณะที่คุณใช้ SQL 2008 ภายใต้โฟลเดอร์ "Microsoft SQL Serve" ในเส้นทางที่กล่าวถึง


2
สิ่งนี้ถูกต้องทั้งหมด - สำหรับการติดตั้งขนาดเล็ก สำหรับการติดตั้งจริง ๆ ใครบางคนจะได้วางแผนเลย์เอาต์ของแผ่นดิสก์และอาจมีการกำหนดตำแหน่งทางเลือกบน db สร้างหรืออาจเป็นค่าเริ่มต้น คุณสามารถเปลี่ยนได้ระหว่างการติดตั้ง ฉันจะบอกว่าในสภาพแวดล้อมที่ไม่สำคัญคนที่ไม่ได้ทิ้งข้อมูลและไฟล์บันทึกในไดรฟ์ C (ซึ่งมีไฟล์โปรแกรมอยู่)
TomTom
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.