Asked by:
DB is 10 GB, but data is not stored locally. What's taking up the space?

Question
-
WSUS suddenly stopped synchronizing because of missing space in the SQL Express DB - which is 10 GB in size.
Is WSUS not built for using SQL Express (or WID)? How can this even happen?
Does anyone know how to fix the issue below? Running 'adamj clean-wsus' script does not help.
System.Data.SqlClient.SqlException -- Could not allocate space for object 'dbo.tbDeadDeployment'.'PK__tbDeadDe__5EF8D717DBC55AEB' in database 'SUSDB' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Regards,
Allan Kjær
blogMonday, January 15, 2018 2:16 PM
All replies
-
Hi,
It is the limitation of SQL express DB. it cannot support more than 10 GB.
Thanks
Syed Abdul Kadar M.
Dont forget to mark as Answered if you found this post helpful.
Monday, January 15, 2018 2:24 PM -
Hi,
It is the limitation of SQL express DB. it cannot support more than 10 GB.
Thanks
Syed Abdul Kadar M.
Dont forget to mark as Answered if you found this post helpful.
Hi,
Yes. I know. That's why it's a problem.
Regards,
Allan Kjær
blogMonday, January 15, 2018 2:25 PM -
hi,
I believe you have enough disk space of the database location, check the auto growth settings.
Thanks
Syed Abdul Kadar M.
Dont forget to mark as Answered if you found this post helpful.
Monday, January 15, 2018 2:34 PM -
hi,
I believe you have enough disk space of the database location, check the auto growth settings.
Thanks
Syed Abdul Kadar M.
Dont forget to mark as Answered if you found this post helpful.
Regards,
Allan Kjær
blogMonday, January 15, 2018 2:36 PM -
Hi,
On the auto growth, change to unrestricted growth.
Thanks
Syed Abdul Kadar M.
Dont forget to mark as Answered if you found this post helpful.
Monday, January 15, 2018 2:38 PM -
Also, my script does not deal with shrinking the database files, but it does optimize it and clears out data to create whitespace in the database (removedeclinedwsusupdates, CleanUpWSUSSynchronizationLogs).
Use SSMS to run a DBCC CHECK on the SUSDB Database and maybe a DBCC SHRINKFILE
How many updates are within the WSUS database (my script will tell you in the log on DeclineMultipleTypesOfUpdates)
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITTuesday, January 16, 2018 4:02 AM -
Hi,
On the auto growth, change to unrestricted growth.
Thanks
Syed Abdul Kadar M.
Dont forget to mark as Answered if you found this post helpful.
Hi,
Yes, like I wrote (unlimited). It's the one, right?
Regards,
Allan Kjær
blogTuesday, January 16, 2018 7:48 AM -
WSUS suddenly stopped synchronizing because of missing space in the SQL Express DB - which is 10 GB in size.
Is WSUS not built for using SQL Express (or WID)? How can this even happen?
Does anyone know how to fix the issue below? Running 'adamj clean-wsus' script does not help.
System.Data.SqlClient.SqlException -- Could not allocate space for object 'dbo.tbDeadDeployment'.'PK__tbDeadDe__5EF8D717DBC55AEB' in database 'SUSDB' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Regards,
Allan Kjær
blogAre you using SSEE or WID ?
WID doesn't have the 10GB size limit, but SSEE does have the limit..
Don [doesn't work for MSFT, and they're probably glad about that ;]
Tuesday, January 16, 2018 8:23 AM -
WSUS suddenly stopped synchronizing because of missing space in the SQL Express DB - which is 10 GB in size.
Is WSUS not built for using SQL Express (or WID)? How can this even happen?
Does anyone know how to fix the issue below? Running 'adamj clean-wsus' script does not help.
System.Data.SqlClient.SqlException -- Could not allocate space for object 'dbo.tbDeadDeployment'.'PK__tbDeadDe__5EF8D717DBC55AEB' in database 'SUSDB' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Regards,
Allan Kjær
blogAre you using SSEE or WID ?
WID doesn't have the 10GB size limit, but SSEE does have the limit..
Don [doesn't work for MSFT, and they're probably glad about that ;]
I'm using SSEE. I've read that there is a SSEE underneath WID and that the restrictions in DB size are the same. 10 GB.
Regards,
Allan Kjær
blogTuesday, January 16, 2018 9:52 AM -
WID has no size limitation, when it comes to using it with the Windows Update Services
I would suggest either migrating your database to WID, or starting over using the WID.
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITTuesday, January 16, 2018 2:16 PM -
WID has no size limitation, when it comes to using it with the Windows Update Services
I would suggest either migrating your database to WID, or starting over using the WID.
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITHi Adam,
Actually I posted a question regarding precisely moving from SQL Express to WID - which you replied to :-) I'm still wondering how to move to WID. I do not want to start over with the installation:
Regards,
Allan Kjær
blog- Edited by Allan Kjaer Tuesday, January 16, 2018 2:23 PM Edit link
Tuesday, January 16, 2018 2:23 PM -
I can't see how changing it to unrestricted growth will help this, given that SQL Server Express has a limitation of a 10GB database regardless.
Kind regards, Kev
Tuesday, January 16, 2018 2:28 PM -
I can't see how changing it to unrestricted growth will help this, given that SQL Server Express has a limitation of a 10GB database regardless.
SQL Express does, WID Does not.
Kind regards, Kev
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITTuesday, January 16, 2018 2:31 PM -
You're essentially migrating the SUSDB database to a different SQL Server except you're going from SQL Express to WID.
For Server names to connect to WID, you must run SSMS As An Administrator for the elevated credentials to allow you access into the WID.
WID2008 = 'np:\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query' WID2012Plus = 'np:\\.\pipe\MICROSOFT##WID\tsql\query'
These would be your named pipes server names - copy everything within the quotes to the server name and use Windows Authentication.
Essentially you're detaching the database on the existing SQL Express instance, moving the physical files to C:\Windows\WID\Data\ (optional, but recommended to keep everything inline) and then re-attaching the database on the other SQL Server instance. Then you're telling the WSUS Services to look at the new SQL Server for the SUSDB database.
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITTuesday, January 16, 2018 2:36 PM -
But I would have to remove WSUS from the server in order to install WSUS with WID. Right? It's not possible to install WID, when the WSUS role is installed with SQL express.
Regards,
Allan Kjær
blogTuesday, January 16, 2018 2:42 PM -
But I would have to remove WSUS from the server in order to install WSUS with WID. Right? It's not possible to install WID, when the WSUS role is installed with SQL express.
Regards,
Allan Kjær
blogWhy? WID is a 'feature' of Windows Server. It's installed in the Server Manager's "Add Roles and Features"
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for IT- Proposed as answer by Yan Li_ Wednesday, January 17, 2018 6:12 AM
- Unproposed as answer by Allan Kjaer Wednesday, January 17, 2018 7:01 AM
Tuesday, January 16, 2018 2:53 PM -
You're essentially migrating the SUSDB database to a different SQL Server except you're going from SQL Express to WID.
For Server names to connect to WID, you must run SSMS As An Administrator for the elevated credentials to allow you access into the WID.
WID2008 = 'np:\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query' WID2012Plus = 'np:\\.\pipe\MICROSOFT##WID\tsql\query'
These would be your named pipes server names - copy everything within the quotes to the server name and use Windows Authentication.
Essentially you're detaching the database on the existing SQL Express instance, moving the physical files to C:\Windows\WID\Data\ (optional, but recommended to keep everything inline) and then re-attaching the database on the other SQL Server instance. Then you're telling the WSUS Services to look at the new SQL Server for the SUSDB database.
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITHi Adam,
I'm not able to connect:
Regards,
Allan Kjær
blogWednesday, January 17, 2018 8:21 AM -
But I would have to remove WSUS from the server in order to install WSUS with WID. Right? It's not possible to install WID, when the WSUS role is installed with SQL express.
Regards,
Allan Kjær
blogWhy? WID is a 'feature' of Windows Server. It's installed in the Server Manager's "Add Roles and Features"
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITRegards,
Allan Kjær
blogWednesday, January 17, 2018 9:47 AM -
I'm using SSEE. I've read that there is a SSEE underneath WID and that the restrictions in DB size are the same. 10 GB.
SSEE is not 'underneath' WID. SSEE and WID are different products/editions, with different capabilities. They are very much not the same thing. There are a lot of different SQL products/editions, each having different capabilities..
WID is supplied as an included item with WSUS or as an OS feature/component.
SSEE has never been recommended by MSFT, for the precise reason you want to get off it :)Don [doesn't work for MSFT, and they're probably glad about that ;]
Wednesday, January 17, 2018 7:58 PM -
You're essentially migrating the SUSDB database to a different SQL Server except you're going from SQL Express to WID.
For Server names to connect to WID, you must run SSMS As An Administrator for the elevated credentials to allow you access into the WID.
WID2008 = 'np:\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query' WID2012Plus = 'np:\\.\pipe\MICROSOFT##WID\tsql\query'
These would be your named pipes server names - copy everything within the quotes to the server name and use Windows Authentication.
Essentially you're detaching the database on the existing SQL Express instance, moving the physical files to C:\Windows\WID\Data\ (optional, but recommended to keep everything inline) and then re-attaching the database on the other SQL Server instance. Then you're telling the WSUS Services to look at the new SQL Server for the SUSDB database.
Adam Marshall, MCSE: Security
http://www.adamj.org
Microsoft MVP - Windows and Devices for ITHi Adam,
I'm not able to connect:
Regards,
Allan Kjær
blogdid you elevate (run as admin)?
as Adam has previously advised, you have to elevate to connect to the WID instance..
(I never have problems connecting to WID via SSMS if I elevate SSMS. I always have problems connecting when I forget to elevate SSMS :(
Don [doesn't work for MSFT, and they're probably glad about that ;]
- Edited by DonPick Wednesday, January 17, 2018 8:01 PM
Wednesday, January 17, 2018 8:00 PM -
Hello,
I suggest you move your WSUS data from the SQL express to another SQL server instead of WID.
Regards,
Yan
Please remember to mark the replies as answers if they help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.
Tuesday, January 23, 2018 3:16 AM