สร้างฐานข้อมูลบนพาร์ติชัน RAW ไม่ทำงานอีกต่อไป?


16

ฉันพยายามที่จะสร้างฐานข้อมูลโดยใช้สองดิบคือพาร์ทิชันที่ยังไม่ฟอร์แมต

Microsoft เอกสารระบุว่าคุณสามารถทำได้คุณเพียงแค่ระบุตัวอักษรไดรฟ์ของพาร์ทิชันดิบเช่นเดียวกับใน:

CREATE DATABASE DirectDevice 
ON (NAME = DirectDevice_system, FILENAME = 'S:')
LOG ON (NAME = DirectDevice_log, FILENAME = 'T:')

อย่างไรก็ตาม SQL Server 2017 ส่งคืนข้อผิดพลาดนี้:

ข่าวสารเกี่ยวกับ 5170 ระดับ 16 สถานะ 4 บรรทัด 1
ไม่สามารถสร้างไฟล์ 'S:' ได้เนื่องจากมีอยู่แล้ว เปลี่ยนพา ธ ของไฟล์หรือชื่อไฟล์แล้วลองดำเนินการอีกครั้ง
เกี่ยวกับข้อความ 1802 ระดับ 16 สถานะ 4 บรรทัดที่ 1
สร้างฐานข้อมูลล้มเหลว ไม่สามารถสร้างชื่อไฟล์บางรายการ ตรวจสอบข้อผิดพลาดที่เกี่ยวข้อง

บิตของเอกสารที่เกี่ยวข้อง:

หากไฟล์อยู่บนพาร์ติชันดิบ os_file_name ต้องระบุอักษรชื่อไดรฟ์ของพาร์ติชันดิบที่มีอยู่เท่านั้น สามารถสร้างไฟล์ข้อมูลได้เพียงไฟล์เดียวในแต่ละพาร์ติชั่นดิบ

และใช่ไดรฟ์ S: และ T: เป็นทั้งพาร์ติชันดิบที่ยังไม่ฟอร์แมตซึ่งมีอยู่ในระบบของฉัน:

diskpart> พาร์ติชันรายละเอียด

ส่วนที่ 4
ประเภท: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
ซ่อน: ไม่
สิ่งที่ต้องการ: ไม่
ผู้ช่วย: 0000000000000000
ออฟเซ็ตเป็นไบต์: 999934656512

  ปริมาณ ### Ltr ป้ายกำกับขนาดชนิดข้อมูลสถานะ
  ---------- --- ----------- ----- ---------- ------- ---- ----- --------
* พาร์ติชั่น T RAW 6 เล่ม 127 MB Healthy

diskpart> เลือกพาร์ติชัน 3

ตอนที่ 3 ตอนนี้เป็นพาร์ติชั่นที่เลือก

diskpart> พาร์ติชันรายละเอียด

ฉาก 3
ประเภท: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
ซ่อน: ไม่
สิ่งที่ต้องการ: ไม่
ผู้ช่วย: 0000000000000000
ออฟเซ็ตเป็นไบต์: 1000067825664

  ปริมาณ ### Ltr ป้ายกำกับขนาดชนิดข้อมูลสถานะ
  ---------- --- ----------- ----- ---------- ------- ---- ----- --------
* พาร์ติชั่น RAW ระดับ 7 S ขนาด 129 MB เพื่อสุขภาพ

การลบเครื่องหมายโคลอนออกจากตัวอักษรชื่อไดรฟ์เช่นเดียวกับในFILENAME = 'S'และFILENAME = 'T'ให้ผลลัพธ์ดังนี้:

ข่าวสารเกี่ยวกับ 5105, ระดับ 16, สถานะ 2, บรรทัด 1
เกิดข้อผิดพลาดในการเปิดใช้งานไฟล์ ชื่อฟิสิคัลไฟล์ 'S' อาจไม่ถูกต้อง วินิจฉัยและแก้ไขข้อผิดพลาดเพิ่มเติมแล้วลองดำเนินการอีกครั้ง
ข่าวสารเกี่ยวกับ 1802 ระดับ 16 สถานะ 1 บรรทัดที่ 1
สร้างฐานข้อมูลล้มเหลว ไม่สามารถสร้างชื่อไฟล์บางรายการ ตรวจสอบข้อผิดพลาดที่เกี่ยวข้อง

เอกสารประกอบของ SQL Server 2000แสดงตัวอย่างต่อไปนี้ภายใต้CREATE DATABASEส่วน:

H. ใช้พาร์ติชัน raw
ตัวอย่างนี้สร้างฐานข้อมูลชื่อพนักงานโดยใช้พาร์ติชัน raw พาร์ติชัน raw ต้องมีอยู่เมื่อดำเนินการคำสั่งและสามารถมีไฟล์ได้เพียงไฟล์เดียวเท่านั้นในแต่ละพาร์ติชันดิบ

    USE master
    GO
    CREATE DATABASE Employees
    ON
    ( NAME = Empl_dat,
        FILENAME = 'f:',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 )
    LOG ON
    ( NAME = 'Sales_log',
        FILENAME = 'g:',
        SIZE = 5MB,
        MAXSIZE = 25MB,
        FILEGROWTH = 5MB )
    GO

แต่แสดงให้เห็นตัวอย่างข้างต้นSIZE, MAXSIZEและFILEGROWTHพารามิเตอร์ซึ่งจะเห็นได้ชัดว่าไม่จำเป็นต้องใช้สำหรับ SQL Server แฟ้มข้อมูลที่เก็บไว้ในพาร์ทิชัน RAW

รายละเอียดเพิ่มเติมจากเอกสารคู่มือ SQL Server 2000 โดยเฉพาะเกี่ยวกับไดรฟ์ดิบ:

ใช้พาร์ติชันดิบ
Microsoft® SQL Server ™ 2000 รองรับการใช้งานพาร์ติชั่นดิบสำหรับสร้างไฟล์ฐานข้อมูล Raw partitions คือพาร์ติชั่นดิสก์ที่ไม่ได้ฟอร์แมตด้วยระบบไฟล์ Microsoft Windows NT®เช่น FAT และ NTFS ในบางกรณีการใช้ฐานข้อมูลที่สร้างขึ้นบนพาร์ติชันดิบอาจทำให้ได้รับประสิทธิภาพเล็กน้อยผ่าน NTFS หรือ FAT อย่างไรก็ตามสำหรับการติดตั้งส่วนใหญ่วิธีที่ต้องการคือการใช้ไฟล์ที่สร้างขึ้นในพาร์ทิชัน NTFS หรือ FAT เมื่อสร้างไฟล์ฐานข้อมูลบนพาร์ติชันดิบคุณจะไม่ระบุชื่อทางกายภาพของไฟล์ที่ประกอบไปด้วยฐานข้อมูล คุณระบุเฉพาะตัวอักษรไดรฟ์ของดิสก์ที่ควรสร้างไฟล์ฐานข้อมูล หากคุณใช้ Microsoft Windows® 2000 Server คุณสามารถสร้างไดรฟ์ที่เมาท์เพื่อชี้ไปยังพาร์ติชั่นดิบ เมื่อคุณติดตั้งไดรฟ์ในเครื่องที่โฟลเดอร์ว่าง Windows 2000 กำหนดเส้นทางของไดรฟ์ให้กับไดรฟ์มากกว่าอักษรระบุไดรฟ์ ไดรฟ์ที่ติดตั้งจะไม่อยู่ภายใต้ข้อ จำกัด ของไดรฟ์ 26 ไดรฟ์ที่กำหนดโดยตัวอักษรไดรฟ์ ดังนั้นคุณสามารถใช้พาร์ติชันดิบได้ไม่ จำกัด จำนวน เมื่อคุณสร้างไฟล์ฐานข้อมูลบนไดรฟ์ที่ติดตั้งคุณต้องจบเส้นทางของไดรฟ์ไปที่ชื่อไฟล์ด้วยเครื่องหมายแบ็กสแลชต่อท้าย () ตัวอย่างเช่น E: \ Sample ชื่อ สำหรับข้อมูลเกี่ยวกับการสร้างไดรฟ์ที่เมาท์โปรดดูเอกสารประกอบของ Windows 2000 Server

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

การดำเนินการระบบไฟล์มาตรฐานเช่นคัดลอกย้ายและลบไม่สามารถใช้กับพาร์ติชันดิบได้

ไฟล์ฐานข้อมูลที่อยู่ในพาร์ติชั่นดิบไม่สามารถทำการสำรองข้อมูลได้โดยใช้ยูทิลิตี้ Windows NT Backup อย่างไรก็ตามฐานข้อมูล SQL Server หรือการสำรองข้อมูลบันทึกธุรกรรมยังคงสามารถสร้างได้

ไฟล์ฐานข้อมูลบนพาร์ติชันดิบไม่สามารถขยายได้โดยอัตโนมัติ เริ่มแรกสร้างฐานข้อมูลที่ขนาดเต็มหรือขยายไฟล์ฐานข้อมูลด้วยตนเอง สำหรับข้อมูลเพิ่มเติมดูที่การขยายฐานข้อมูล

พาร์ติชันที่มีตัวอักษรเท่านั้นเช่น E: หรือไดรฟ์ที่เมาท์เช่น E: \ Sample name \ สามารถใช้ได้ ไม่สามารถใช้อุปกรณ์ที่มีหมายเลขกำกับได้

บริการระบบไฟล์เช่นการเปลี่ยนบล็อกเสียจะไม่สามารถใช้ได้กับพาร์ติชันดิบ


นี้ได้รับแรงบันดาลใจจากการโพสต์ Brent Ozar เกี่ยวกับ SQL Server 6.5ซึ่งไม่สนับสนุนพาร์ทิชันดิบ


3
คุณต้องใช้ RPaaS - Raw Partition เป็นบริการหรือ ARPL - Azure Raw Partition Lake เพื่อให้ทำงานกับ SS 2017 ;-)
SQLRaptor

คำตอบ:


3

ฉันสามารถยืนยันพาร์ทิชันดิบได้ตามที่คาดไว้กับ SQL Server 2000 SP4 บน Windows XP x64

ฉันเพิ่งรันสิ่งต่อไปนี้ผ่าน Query Analyzer (ตัวสั่น) กับ SQL Server 2000 SP4:

CREATE DATABASE t
ON PRIMARY 
(
    NAME = t_primary
    , FILENAME = 'E:'
)
LOG ON 
(
    NAME = t_log
    , FILENAME = 'F:'
);

ผลลัพธ์ที่ได้:

กระบวนการสร้างฐานข้อมูลกำลังจัดสรร 0.64 MB บนดิสก์ 't_primary'
กระบวนการสร้างฐานข้อมูลจัดสรร 1.00 MB บนดิสก์ 't_log'

CREATE DATABASE tโค้ดด้านบนใช้ได้กับ SQL Server 2005 บน Windows XP x64; เอาต์พุตเพียงอย่างเดียวคือCommand(s) completed successfully.

SSMS แสดงข้อมูลต่อไปนี้เมื่อคุณดูไฟล์ฐานข้อมูล:

ป้อนคำอธิบายรูปภาพที่นี่

นั่นไม่ได้เกี่ยวกับเท่อย่างถังน็อตหรอกเหรอ?

SQL Server 2012 SP1 บน Windows Server 2012 Standard โดยตั้งค่าบัญชีบริการ SQL Server Management Studio เป็น "Local System":

ป้อนคำอธิบายรูปภาพที่นี่

SQL Server 2014 (12.0.5000.0) ทำงานเป็น "Local System" บน Windows Server 2012 แสดงถึงพฤติกรรมเช่นเดียวกับ SQL Server 2017 เช่นจะส่งคืนข้อความแสดงข้อผิดพลาดนี้:

ข่าวสารเกี่ยวกับ 5170 ระดับ 16 สถานะ 4 บรรทัด 1
ไม่สามารถสร้างไฟล์ 'E:' ได้เนื่องจากมีอยู่แล้ว เปลี่ยนพา ธ ของไฟล์หรือชื่อไฟล์แล้วลองดำเนินการอีกครั้ง
เกี่ยวกับข้อความ 1802 ระดับ 16 สถานะ 4 บรรทัดที่ 1
สร้างฐานข้อมูลล้มเหลว ไม่สามารถสร้างชื่อไฟล์บางรายการ ตรวจสอบข้อผิดพลาดที่เกี่ยวข้อง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.