Transight HQ - วิธีการลบ Event Log บน Transingt HQ
ขนาดฐานข้อมูลบน HQ มีขนาดใหญ่ส่วนมากมาจาก Event Log ซึ่งโปรแกรมจะเก็บ Event Log จากทุกสาขามารวมไว้ ทำให้เกิดปัญหาเวลา Backup ข้อมูลใช้เวลามากและอาจทำให้เกิด Error บน HQ ได้ เราสามารถลบ Event Log เก่าทิ้งได้
ขั้นตอนที่ 1####
ให้ดูขนาด Record ใน Table dbo.eventlog ว่ามีขนาดประมาณเท่าไร โดยใช้โปรแกรม MS SQL Server Management Studio เข้าไปดู
ขนาด Record ดูจาก ช่อง Row count
ขั้นตอนที่ 2####
ในโปรแกรม SQL Server Management Studio ให้เปิดเมนู File > New > Query With Current Connection หรือกด Ctrl+N
จากนั้นพิมพ์คำสั่ง SQL ดังนี้
DECLARE @deletedRow INT = 0;
USE [HeadQ];
WHILE 1 = 1
BEGIN
DELETE TOP(10000)
FROM [HeadQ].[dbo].[eventlog]
WHERE busidate < '2001-01-01';
IF @@ROWCOUNT < 10000 BREAK;
SET @deletedRow = @deletedRow + 10000;
DECLARE @msg VARCHAR(100);
SET @msg = 'DELETED Total ' + CONVERT(VARCHAR, @deletedRow) + ' Records ON:' + convert(char(19), getdate(), 121);
RAISERROR (@msg, 0, 1) WITH NOWAIT;
END
คำอธิบายเพิ่มเติมของคำสั่งในบรรทัดต่างๆ
USE [HeadQ];
คำสั่งให้โปรแกรมทำงานกับ Database ชื่อ HeadQ ซึ่งหากมีการตั้งชื่อฐานข้อมูลต่างจากนี้ให้แก้ให้ตรงกัน
FROM [HeadQ].[dbo].[eventlog]
ใช้สำหรับการบอกตำแหน่งของตารางในฐานข้อมูล หากมีการตั้งชื่อต่างจากนั้ให้แก้ไขให้ตรงกัน
WHERE busidate < '2001-01-01';
สามารถแก้เงื่อนไขในบรรทัดนี้ ให้เป็นเงื่อนไขการลบที่ต้องการได้ โดยในตัวอย่างจะให้ลบข้อมูลเก่าทั้งหมด ที่เก่ากว่า วันที่ 01 มกราคม 2001
==
หมายเหตุ: ชุดคำสั่งข้างต้นจะทำงานโดยการลบข้อมูลทีละ 10000 Records และแสดงผลการทำงานออกมาทางหน้าจอ Message ของ SQL Server Management Studio ซึ่งระยะเวลาการทำงานจะมากหรือน้อยขึ้นอยู่กับจำนวน Records ทั้งหมดที่ต้องการลบ
==
ตัวอย่างหน้าการแสดงผลขณะลบข้อมูล
==
คำเตือน: หากการลบข้อมูลมีมาก แนะนำให้เมื่อ Run คำสั่งไปจนถึงประมาณ 20-30 ล้าน Records (run ประมาณ 6-8 ชั่วโมง) แล้วควรทำการ Stop และไปทำการ Shrink ข้อมูลก่อนค่อยกลับมา Run คำสั่งอีกครั้ง จะทำให้การทำงานเร็วขึ้น การ Shrink DB แต่ละครั้งสำหรับขนาดฐานข้อมูลขนาดใหญ่ (เกิน 100G) จะใช้เวลาประมาณ 4 ชม. และจะต้องทำโดยการ Lock ฐานข้อมูลเพื่อป้องกันไม่ให้มี คนใช้งานในขณะนั้นด้วย
==
วิธีการ Shrink DB สำหรับโปรแกรม Transight HQ ดูได้ที่นี่
http://systemsupport.itorama.com/transight-hq-withiikaar-shrink-database-bn-transingt-hq/
จบ