INF: วิธีการที่ย้าย Tempdb ไปยังอุปกรณ์แบบอื่น

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 187824 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

โดยค่าเริ่มต้น tempdb อยู่บนอุปกรณ์หลัก คุณอาจต้องย้าย tempdb เพื่อให้มันอยู่ทั้งหมดบนอุปกรณ์อื่น บทความนี้อธิบายถึงวิธีการย้าย tempdb ลงบนอุปกรณ์ที่แตกต่างกัน

ข้อมูลเพิ่มเติม

ขั้นตอนพื้นฐานสำหรับการย้าย tempdb กับอุปกรณ์อื่นที่อยู่ก่อน ทำการใส่ tempdb ใน RAM จึงทำให้แน่ใจว่าอุปกรณ์คุณต้องการเก็บไว้บนอุปกรณ์เริ่มต้นเท่านั้น (และมีเนื้อที่ว่างอย่างน้อย 2 MB), และนำ tempdb กลับเกินจำนวน RAM และสุดท้าย คุณสามารถทำเช่นนี้ จากเครื่องมือ SQL องค์กร Manager (SEM) GUI หรือ โดยการออกคำสั่ง ISQL แต่ละวิธีมีการอธิบายไว้ด้านล่าง

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

การย้าย Tempdb โดยใช้ตัวจัดการองค์กร SQL

  1. ตรวจสอบให้แน่ใจว่า คุณมีสำเนาสำรองปัจจุบันของแฟ้ม Master.dat เมื่อต้องการทำเช่นนี้ ปิดระบบ SQL Server และทำการคัดลอกแฟ้ม Master.dat ไปยังตำแหน่งอื่น
  2. เริ่มตัวจัดการองค์กร SQL สร้างอุปกรณ์ใหม่สำหรับ tempdb โดยทำสิ่งต่อไปนี้:

    1. คลิกขวาที่โฟลเดอร์ฐานข้อมูลอุปกรณ์ และคลิกที่อุปกรณ์ใหม่บนเมนูทางลัด อีกวิธีหนึ่งคือ คุณสามารถคลิก'อุปกรณ์ฐานข้อมูล'บนเมนูการจัดการ และจากนั้น คลิกปุ่มแถบเครื่องมือของอุปกรณ์ใหม่
    2. ในกล่องชื่อ ชื่อ "TEMPDEVICE" (โดยไม่ใส่เครื่องหมายอัญประกาศ) ในการพิมพ์ และจากนั้น คลิกเพื่อเลือกตัวเลือกอุปกรณ์ที่เริ่มต้น
    3. ในกล่องขนาด พิมพ์จำนวนเมกะไบต์ที่คุณต้องการให้อุปกรณ์ของคุณใหม่เพื่อให้ (ตัวอย่างเช่น พิมพ์ 100 สำหรับอุปกรณ์-100 MB)
    4. คลิกสร้างขึ้นในขณะนี้
  3. การตั้งค่าคอนฟิก tempdb ไปอยู่ใน RAM ชั่วคราว เมื่อต้องการทำเช่นนี้ ดำเนินการขั้นตอนต่อไปนี้ต่อไปนี้:

    1. คลิกขวาชื่อเซิร์ฟเวอร์ และคลิก'กำหนดค่า'บนเมนูทางลัด อีกวิธีหนึ่งคือ คุณสามารถคลิกเมนู Server ชี้ไปที่เซิร์ฟเวอร์ SQL และคลิกตั้งค่าคอนฟิก
    2. คลิกแท็บการตั้งค่าคอนฟิก
    3. เลื่อนลงมาจนกว่าคุณเห็นตัวเลือกการตั้งค่าคอนฟิก "tempdb ใน ram ขนาด (MB) และส่วนประกอบ" ในคอลัมน์ปัจจุบัน พิมพ์จำนวนเมกะไบต์ของ RAM ที่ปันส่วน tempdb (ตัวอย่างเช่น 2) นี้เท่านั้นจะชั่วคราว แล้ว คลิกตกลง
  4. ป้องกันไม่ให้อุปกรณ์หลักหรืออุปกรณ์อื่น ๆ กำลังอุปกรณ์เริ่มต้น เมื่อต้องการทำเช่นนี้ ดำเนินการขั้นตอนต่อไปนี้ต่อไปนี้:

    1. ภายใต้โฟลเดอร์อุปกรณ์ฐานข้อมูล การคลิกสองครั้งอุปกรณ์หลัก หรือคลิกขวาอุปกรณ์หลัก แล้วคลิก'แก้ไข'บนเมนูทางลัด อีกวิธีหนึ่งคือ คุณสามารถคลิก'อุปกรณ์ฐานข้อมูล'บนเมนูการจัดการ เลือกอุปกรณ์หลัก และคลิก อุปกรณ์แก้ไขปุ่มแถบเครื่องมือได้
    2. คลิกเพื่อล้างกล่องกาเครื่องหมายอุปกรณ์เริ่มต้น และคลิก เปลี่ยนเดี๋ยวนี้
    3. ทำซ้ำขั้นตอนที่ b สำหรับใด ๆ เป็นค่าเริ่มต้นอุปกรณ์อื่น ๆ คุณอาจ ยกเว้นสำหรับ TEMPDEVICE ที่สร้างในขั้นตอนที่ 2 ของกระบวนการนี้
  5. ปิด และเริ่มต้นเซิร์ฟเวอร์ SQL Tempdb ควรอยู่ ใน RAM และไม่ได้อยู่ บนอุปกรณ์หลักในขณะนี้
  6. นำ tempdb กลับเกินจำนวน RAM เมื่อต้องการทำเช่นนี้ ให้ทำซ้ำขั้นตอนที่ 3 ของขั้นตอนนี้ แต่พิมพ์ 0 ในคอลัมน์ปัจจุบันสำหรับตัวเลือกการตั้งค่าคอนฟิก "tempdb ใน ram ขนาด (MB) และส่วนประกอบ"
  7. ปิด และเริ่ม SQL Server ใหม่อีกครั้ง เนื่องจากไม่มีหลักเป็นอุปกรณ์เริ่มต้น tempdb จะไปไว้บนอุปกรณ์ของคุณใหม่ที่มีระบุเป็นอุปกรณ์เริ่มต้น (นั่นคือ TEMPDEVICE)
  8. After restarting SQL Server, tempdb will have the default options set and a default size of 2 MB. You can change the tempdb database options and expand its size by performing the following steps:

    1. Under the Databases folder, double-click tempdb or right-click tempdb and click Edit on the shortcut menu. Alternatively, you can click Databases on the Manage menu, select tempdb, and then click the Edit Database toolbar button.
    2. On the Options tab, verify that the following options (which are desirable in most cases) are set:

      • Select Into/Bulk Copy is enabled.
      • Truncate Log On Checkpoint is enabled.
      • Single User is disabled.
      • DBO Use Only is disabled.
    3. On the Database tab, in the Size box, click Expand.
    4. Under Data Device, select TEMPDEVICE.
    5. In the Size (MB) box, type a number of megabytes to be added to tempdb. For example, if you type 8, it adds 8 MB to tempdb, for a total size of 10 MB.
    6. Click Expand Now.
    For more information on expanding the size of a database, see the "Expanding or Shrinking Databases" topic in the SQL Server Books Online.

Moving Tempdb by Using ISQL

  1. Make sure you have a current backup of the Master.dat file.
  2. Create your new device for tempdb, using a statement similar to the following:
          DISK INIT
          NAME = 'TEMPDEVICE',
          PHYSNAME = 'C:\MSSQL\DATA\TEMPDEV.DAT',
          SIZE = 51200,
          VDEVNO = 250
     
    						
    NOTE: This example creates a 100-MB device for tempdb. You can adjust the SIZE option as desired.
  3. Issue the following statements, which will put tempdb into RAM, prevent the master device from being a default device, and make the newly-created tempdevice into a default device:
          sp_configure 'allow updates', 1
          go
          reconfigure with override
          go
          sp_configure 'tempdb in ram', 2
          go
          sp_diskdefault master, defaultoff
          go
          sp_diskdefault tempdevice, defaulton
          go
          reconfigure with override
          go
     
    						
    หมายเหตุ:

    • The sp_configure 'tempdb in ram' configuration option is specified in MB, not 2-KB pages, as the 'memory' parameter is.
    • If you have other default devices, you should also run sp_diskdefault with the defaultoff option for those devices as well. To see if you have other default devices, you can run the sp_helpdevice stored procedure.
  4. Shut down and restart SQL Server. Tempdb should now be in RAM and not on the master device.
  5. Now use sp_configure to take tempdb back out of RAM:
          sp_configure 'tempdb in ram', 0
          go
          reconfigure with override
          go
     
    						
  6. Shut down and restart SQL Server. Because master is no longer a default device, tempdb will go onto your new device.
  7. After restarting SQL Server, tempdb will have a default size of 2 MB. You can expand its size by using an ALTER DATABASE statement similar to the following:
          ALTER DATABASE tempdb
          ON TEMPDEVICE = 8
     
    						
    This statement increases the size of tempdb by 8 MB, for a total size of 10 MB. For more information on the ALTER DATABASE statement, see the "ALTER DATABASE Statement" topic in the SQL Server Books Online.
  8. Verify that the following database options are set for tempdb:

    • Select Into/Bulk Copy is enabled.
    • Truncate Log On Checkpoint is enabled.
    • Single User is disabled.
    • DBO Use Only is disabled.
    To do this, use the sp_dboption stored procedure. For more information on how to use sp_dboption to view or change database options, see the "sp_dboption System Stored Procedure" topic in the SQL Server Books Online.
For more information, see the following articles in the Microsoft Knowledge Base:
115050: INF: When to Use Tempdb In RAM

158586: PRB: 'Temp_db' Device Causes Problems Starting SQL Server

141183: PRB: Log Segment Moved to Device Incorrectly if Tempdb Expanded

110139: INF: Causes of SQL Transaction Log Filling Up

คุณสมบัติ

หมายเลขบทความ (Article ID): 187824 - รีวิวครั้งสุดท้าย: 7 มกราคม 2554 - Revision: 2.0
ใช้กับ
  • Microsoft SQL Server 6.5 Standard Edition
Keywords: 
kbhowto kbinfo kbmt KB187824 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:187824
การปฏิเสธความรับผิดชอบในเนื้อหาของ KB ที่จะไม่มีการปรับปรุงอีกต่อไป
บทความนี้กล่าวถึงผลิตภัณฑ์ที่ Microsoft ไม่มีการสนับสนุนอีกต่อไป เนื้อหาของบทความจึงมีการนำเสนอ "ตามลักษณะที่เป็น" และจะไม่มีการปรับปรุงข้อมูลอีก

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com