Comments
7 comments
-
Could you please post the SQL Backup command(s) that you are using, that causes the CPU utilization to hit 80%-90%? Are there are scheduled SQL Backup processes that run simultaneously? Is there a specific interval where the backups cause the CPU utilization to max out, or does it happen with every transaction log backup?
Thanks. -
Hi Peter.
We have 2 different databases on the server(s) that had the problem,both getting transaction log backups every 10mins. Looking at the graph in sql backup they seem to occur at the same time.
I have grabbed the sql the sql backup tool generates for the job and added it to the end of this reply.
In answer to your last question:
'Is there a specific interval where the backups cause the CPU utilization to max out, or does it happen with every transaction log backup?'
No there is no specific interval where the backups cause a problem - its very random as to when the issue occurs on different servers. As I mentioned - all servers have 2 databases which have tranaction log backups every 10 mins.
sql text
DECLARE @exitcode int
DECLARE @sqlerrorcode int
EXECUTE master..sqlbackup '-SQL "BACKUP LOGS [dataA,dataB] TO DISK = ''S:\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\<AUTO>.sqb'' WITH ERASEFILES_ATSTART = 1, ERASEFILES_REMOTE = 3, FILEOPTIONS = 4, CHECKSUM, DISKRETRYINTERVAL = 30, DISKRETRYCOUNT = 10, COMPRESSION = 4, COPYTO = ''\\Server1\TransactionLogBackups\Server11\'', INIT, THREADCOUNT = 2, VERIFY"', @exitcode OUT, @sqlerrorcode OUT
IF (@exitcode >= 500) OR (@sqlerrorcode <> 0)
BEGIN
RAISERROR ('SQL Backup failed with exit code: %d SQL error code: %d', 16, 1, @exitcode, @sqlerrorcode)
END -
Th most likely cause of the high CPU utilization is the use of compression level 4. Could you please try using compression level 2 instead to see if it reduces the CPU utilization?
-
I will try that however that doesnt really explain why this is happening.
We have always used level 4 with no issues.
As i mentioned the cpu pressure is high even when no backups are occuring on the system at the end of business hours. When nobody is using the server at night the cpu is at around 50% and that 50% is being used by the process sqbcoreservice. So how would compression levels effect an idle server ? -
My apologies, I did not know that the SQBCoreService was running the CPU at 50% even when no backups were being performed.
The next time that you find this happening, could you please run the following:EXEC master..sqbutility 9997
to generate a SQBCoreService activity log file, and send me the file? This file is named SQBCoreService_<instance name>_bugreport.txt, and is located in 'C:\Documents and Settings\All Users\Application Data\Red Gate\SQL Backup\Log\' on Windows 2003 and older, and 'C:\ProgramData\Red Gate\SQL Backup\Log\' on Windows Vista and newer.
Thanks. -
Hi - My apologies also as i think i mentioned the no activity bit on another post !!!!
I have ran the query on the server but i cant find the location. It is on Windows Sever 2008.
c:\program files\red gate\sql backup 7\localIn the local i can see SQBCoreService - application, sqlbackupC - application, unins000.dat, unins000 -application and zlib1.dll
There is also a x64 folder with xp_sqlbackupdll
but no text file ! -
sorry - ive got it !
Add comment
Please sign in to leave a comment.
We use backup 7 to do nightly backups (1am) and we backup the transaction logs every 10 mins on certain databases.
When ever i get a cpu alert (resource can be anywhere between 80 -100%) i look at the most costly cpu proccess and it is always the SQBCoresercvice which is taking all of the cpu.
I have checked the log backups from the point in time where the cpu max's out using the msdb..backupset and the results returned dont show any exdroindary large transaction log backups - just the same size on average as the rest of the day.
We also have transactional replication - could this be the smoking gun ?
Users are starting to complain of unresponsive systems whilst this cpu is pegged at 80 - 100%
Any ideas ?