Friday, April 6, 2018

How to reduce IPAM Database

Unexpectedly, IPAM database can occupy a significant place on the server. Here's a way to reduce the size of the database:
1. Use powershell commands:

$Clean_Date = (Get-Date).AddDays(-100)
Remove-IpamIpAddressAuditEvent -EndDate $Clean_Date

2. Next, install and open SQL Management Studio.
Connect to \\.\pipe\Microsoft##WID\tsql\query
Recreate indexes for IP_AUDIT and shrink database

USE [IPAM]
EXEC sp_updatestats
GO
ALTER INDEX [IP_AUDIT_IX_CLIENT_ID_COMBINATION] ON [dbo].[IP_AUDIT] REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
DBCC SHRINKDATABASE(N'IPAM' )
GO
ALTER INDEX [IP_AUDIT_IX_HOST_NAME_COMBINATION] ON [dbo].[IP_AUDIT] REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
DBCC SHRINKDATABASE(N'IPAM' )
GO
ALTER INDEX [IP_AUDIT_IX_IP_ADDRESS_COMBINATION] ON [dbo].[IP_AUDIT] REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
DBCC SHRINKDATABASE(N'IPAM' )
GO
ALTER INDEX [IP_AUDIT_IX_TIMEOFEVENT_EVENTTYPE] ON [dbo].[IP_AUDIT] REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
DBCC SHRINKDATABASE(N'IPAM' )
GO
ALTER INDEX [IP_AUDIT_IX_USER_NAME_COMBINATION] ON [dbo].[IP_AUDIT] REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
DBCC SHRINKDATABASE(N'IPAM' )
GO
ALTER INDEX [IP_AUDIT_PK_TIME_OF_EVENT_IP_AUDIT_ID] ON [dbo].[IP_AUDIT] REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
DBCC SHRINKDATABASE(N'IPAM' )
GO

2 comments:

  1. Hello,

    Thanks for this post! The backup of my IPAM server database was an absurd 90 GB. After performing the cleaning of the audit events and the indicated SQL routine, it dropped to an astonishing 180 MB.

    ReplyDelete