I've just updated my databases to V7.0 from 6.5. I am having some issues with CPU utilization after rebuilding the databases. I rebuilt the databases from scripts after modifying the scripts to deal with any SQL issues between the versions.
Symptoms:
When a bunch of stored procedures are executed the % Processor Time his 100% on a single processor system, the Processor Queue Length hits 13, the Batch Request/Sec starts at 20 and rises to 47 before dropping off, Context Switches go from 370/sec to about 833/sec before dropping off and there is an increase in page faulting.
My testing was done on a single processor but my real system is dual-300+ with 128Mb RAM. The database is only 40Mb and after running the index wizard there were no changes advised.
After reading a lot in help areas for MS and here I am not sure if this has to do with how SQL Server runs now (i.e. system configuration) or if it is a query issue with parallelism. I'm assuming query parallelism since the performance spikes occur when stored procedures are run. On a single processor is there a way to address this. Then, hopefully, I can deal with the real multiprocessor system.
We have been getting really bad performance from one of our databases recently.
This is a three tier system with two services (.dll) connecting to the database, we have only experienced problems since the second service has been installed.
These two services both use the same user and make about 300 connections to the database.
I have noticed IO bottleneck when the system is under load, and the Average disk queue at this time is 15.
How do I fix this? We have the logs and data on the same raid 10 array.
I am trying to figure out if we have a memory bottlneck on our SQL Server. We have a large database (90 GB) on Standard Edition of SQL 2000. Currently we have 2 GB of Memory. To me this seems low already, but Standard edition can't handle more than 2 GB anyway. Our cache hit ratio is very low (40%). This is also telling me we need memory. The thing that gets me is we still have 147 MB of memory available. If Memory really was the problem wouldn't that 147 MB be used?
Hello, I have an SP that transfers data from one DB to another. As I run the SP with the management studio - it takes about 15min. But when I scheduled it as an SQL agent job it ran all night and never completed.
The difference I noticed was that the % disk time (of the destination DB) was very high (~100) when I used the agent (which never happened when I ran the SP with the studio). Only when I restart the SQL service, the disk gets back to normal % disk time.
What could be the reason for that?
My server - Windows 2003 R2 SP1 / SQL 2005 SP2
p.s - could it be related to SQL SP2 ? I didn't have this problem with SP1, but then - I had many other changes since.
I understand that there is much involved in figuring up I/Othroughput, but I'm hoping the answer to the following question willbe a simple A, B OR C.Given the configuration below, what hardware component wouldbottleneck first.A. Drive Spindle ThroughputB. SCSI ControllerC. Other Component(if so what component?)Configuration:Controller: Ultra320RAID Config: RAID 5Drives on RAID: 14 - 73gb/15k - SCSI DrivesType of Writes: RandomQuestion Background:I currently have the configuration above on a local box. Our companyhas ordered a SAN and and has space set aside. What I'm trying toacertain is whether or not I'd be better off staying local or ifputting my DB on a SAN would be more beneficial.Other Notes:I've determined using a formula that determines the max theoreticalI/O operations/sec for the # of drives (spindles) and RAID Config...but I've not been able to establish a relationship betweenOperation/sec -> MB/Sec. I'm sure this is for obvious reasons...If anyone has had a related scenario, I'd be interested in hearingyour thoughts.Thanks,Ornac
If I install an instance of SQL Server on a box with 4 processors but specify in the licensing part of the installation procedure that it's a '2 processor license', does that really mean that SQL Server will only use 2 of the 4 processors? I ask because, having done this, if I check the SQL Server instance's properties, on the Processors tab, there are 4 processors ticked - giving the impression that 4 processors are being used by this SQL Server instance. Can anyone throw some light on this?
Another question... If I wish to reconfigure the same SQL Server instance from a 2 to a 4 processor 'per processor' license, how can this be done?
Every once in a while (every couple weeks or so) one of our SQL Server 2005 servers will have its performance take a dive. Response time on applications will slow way down. In checking €˜Task Manager€™ the CPU utilization will be up to 50 to 70 percent for the SQL server service. We have tried looking at €˜Perf Mon€™ there doesn€™t seem to be any consistent performance item that is out of whack. On occasion, it may appear to be a lot of paging going on, but I don€™t know what application is causing it. We€™ve looked at SP_who2 to see if there are any blocks, but there do not appear to be any. Though on occasion we will see a €˜Killed/roll-back€™ entry on €˜SP_who2€™ that has a lot of CPU cycles that, at least at one point in time, had a lot of counts against it.
In looking at a trace that we have set up, we don€™t see anything glaring that is held up or even a recurring theme (application) on the list that would point to a problem.
We find that by restarting the SQL Server service, this resolves the issue for another couple of weeks.
Is there something that I can look at that would tell me at least, what PC name is doing all of the IO against the database. I could then at least call the user and say €˜Hey, what are you doing€™ so that we can start to narrow down what is going on.
Regarding Standard vs Enterprise processor usage, I have read the SQL2K5 edition comparison articles that MS puts out, but I recently viewed a webcast that gave me cause for concern.
There was a webcast called "Selecting the Right SQL Server 2005 Edition", hosted by Michael Raheem, where he stated that although Standard edition allowed 4 processors (based on sockets, not cores) some index operations only leveraged one core at a time. So even if you have, let's say, 4 dual core CPUs (= 8 processor cores), only one core at a time will be used, and the rest will be idle during that operation.
Can anyone give a better idea of which operations are full multi-core in SQL Standard. Michael mentions indexing - does that mean strictly explicit reindexing operations which are part of a maintenance routine, or does that apply to index operations during normal inserts and/or updates?
We will be using this to run a backend for a commercial website, and we need to be sure whether we can get by with Standard or we need to make the investment in Enterprise.
Hi everyone, Primary platform is 2005 under 64-bit.
I'm trying to figure out what does 'Processor Affinity' and 'I/O Affinity' means when you're viewing server properties. We've got eight processors. Thanks for your comments,
I was browsing Microsoft's SQL Server site, looking forsome details about SQL Server 2005. Didn't find whatI was looking for...I'm thinking about moving an existing SQL Server 2000workload to a new box, using SQL Server 2005, andmaybe the 64-bit version.My questions are:1. What is the current target date for release of SQL Server 2005?Will 64-bit ship when 32-bit ships?2. Will 64-bit SQL Server 2005 require a special versionof Windows Server 2003 (e.g. Windows Server 2003 Enterprise x64)?Will it work with both Intel and AMD processors?3. How many CPUs, and how much memory, will be supported bySQL Server 2005, 32-bit and 64-bit, on each OS that can runSQL Server 2005.I'm looking for a chart here, something like the chart onpage 117 of Kalen Delaney's "Inside SQL Server 2000" book.SQL Server 2005 SQL Server 2005Feature Enterprise 32-bit Enterprise 64-bit------------------- ----------------- -----------------CPUs supportedWin Srvr 2003:Win Srvr 2003 Adv:Win Srvr 2003 Ent x64:Physical memorysupportedWin Srvr 2003:Win Srvr 2003 Adv:Win Srvr 2003 Ent x64:Has Microsoft published this info, and I just can find it?
We have recently tested upgrading our web service from sql 2000 to 2005 sp1. The upgrade went smoothly enough, however we now have the problem of the sqlserver.exe process taking 90-100 % of the processors time, but using only 100 MB of memory.
We have 6GB available and we are running the enterprise editions of Windows 2003 and SQL 2005.
Machine specs,
DL380 G2, 2 X 2.8 Ghz Zeon, 6GB ram, Raid 5, database partition of 140 GB, Log partition of 35 GB.
Db is 25 GB, Log is 12 GB. Largest table has 32 million rows.
We are seeing that the %Processor Time for the sqlservr process in Perfmon is over 100%. I am trying to understand how can the percentage of use be over 100%, and why it is over 100%. Someone told me that if the machine has multiple processors, that it will be over 100%. If that is the case, how can I determine what the maximum and normal values are? If I have 4 processors, does that mean 400% is the max? Does not make sense since it is suppose to be a percentage value...
Could someone explain to me how the CPU Utilization value is being measured, and if it is going over 100%, why that is and how I can determine what the threshold should be for monitoring?
This is weird situation for me as i can access my database server from 32- bit processor and its working fine but when i try to connect through 64 bit processor it throws the following error : Please help. I am using enterprise library january 2006 to access database.
An Error has occured while stablishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow Remote Connections . (provider : Named Pipes provider,error: 40 - Could not open a connection to SQL Server)
Hi everybody, I have a mirroring set up for around 30 databases in a 64 bit - 2 powerfull servers scenario - wih latest sp2 + hotfix. Mirroring works perfectly most of the times but when the principal is getting busy during the busy period of the day all of a sudden the processor on the mirror jumps to 100% and stays there for a long time - there are no live databases on the mirror server - all the databases are in mirrored mode. The principal server processor is less than 5% all the time. The network load between the principal and the mirror is also in normal limits. The principal server is dedicated to SQL but the mirror has other things too but the other processes use up maximum 15-20% of the CPU and when I stop SQL Server in one of those moments when the CPU jumps to 100% everything comes back to normal so it's clear that the issue is SQL on the mirror. Any ideas would be greatly appreciated.
I am looking at running SQL Server 2005 Standard Edition in a clustered environment (2 nodes) and am not sure if the 4 processor limit applies to the number of processors per node or the number of processors it will run on in the entire cluster. Could someone please clarify this for me?
"Error: 8624, Severity: 16, State: 1 Internal Query Processor Error: The query processor could not produce a query plan. For more information, contact Customer Support Services."
I have traced this to an insert statement that executes as part of a stored procedure.
INSERT INTO ledger (journal__id, account__id,account_recv_info__id,amount)
There is also an auto-increment column called id. There are FK contraints on all of the columns ending in "__id". I have found that if I remove the contraint on account__id the procedure will execute without error. None of the other constraints seem to make a difference. Of course I don't want to remove this key because it is important to the database integrity and should not be causing problems, but apparently it confuses the optimizer.
Also, the strange thing is that I can get the procedure to execute without error when I run it directly through management studio, but I receive the error when executing from .NET code or anything using ODBC (Access).
I have a unique problem while connecting to oracle source with a 64 bit processor. I can connect to the oracle from the command prompt in the 64 bit processor but not from SSIS.
The acutal problem is, when check the properties of the connection manager and provide a provider for oracle, and then provide username and password and click on test connection. I get the following error:
"Test Connection failed because of an error in initializing provider.ORA-06413: Connection not open"
We've had a problem for a few months now that has completely stumped us. We are running a heavily cursored massive data manipulation process on a 32 bit SQL Server instance running on a virtual machine, running ontop of VMWare, with the following specs
Processors: 2x2674MHz processors Memory: 4GB RAID 10 disk config
When we run our process on this machine, in total it runs in 30 hours.
When this process is run on another 32 bit server with the following specs
Processors: 8x3658MHx processors Memory: 8 GB SAN w/ RAID 5 disk config
It runs 25% slower
But here is the real kicker. When this process is run on a 64 bit server with the following specs
Processors: 8x3658MHz processors Memory: 8 GB SAN w/ RAID 5 disk config
It runs 75% slower.
This process consists solely of stored procedures written in TSQL. The weird thing is that on our smaller server, the CPUs' % utilization are evenly balanced (at 20-30%) when this large data manipulation process is running. However on the bigger servers, SQL Server latches onto a single processor and doesn't load balance across other processors. Such that what we're seeing is that only one processor out of the eight will be utilized and it will be throttled at 90% while the other 7 are at zero.
The default configuration settings in all three places.
Has anyone ever seen any behavior like this, where only one processor gets used by SQL Server during processing? Granted our processes are single threaded b/c they are using cursors but, it seems that the single thread shouldn't be restricted to one processor.
Hello,I'm trying to install the SQL Server 2005 Standard edition and while I can easily install the first part of the package, the document.write(L_LINK_RUNINSTALL_VAR_TEXT) Server components, tools, Books Online, and samples, when I click to install the Run the SQL Native Client Installation Wizard it tells me this:This Microsoft sql server native client package is not supported on the current processor type I have Windows XP64bit with IIS running on 32bit now. Why does it do that and how I can get around it ? :) Thanks.
I have a SProc that runs across many clients without any problems. Every now and then, though, I get the following error:
Internal Query Processor Error: The query processor encountered an unexpected error during execution. [SQLSTATE 42000] (Error 8630).
All I am doing is populating Temp tables with some data and then joining them together to create a Global Temp table that is being BCP'd to a network share.
Has anyone come across this error in SQL Server 2005? I cannot find anything on Google or Microcsoft.
Has anyone come across error 8630 "Internal Query Processor Error: The query processor encountered an unexpected error during execution." with SQL Server 7 with SP4 installed?
There are microsoft articles on the error, but the errors are suposidly fixed in SQL Server 7 SP2 and SP3.
We are selecting from one view left outer joined with another, but no unions are involved.
This is not a problem in SQL Server 2000, but unfortunatlely Microsoft are supporting SQL Server 7 until 2005 and so we have to do the same...
I have several data bases on a server (SQL Server 2000 only, no web server installed) and lately, as the company keeps gowing, my users complain saying the server gets slow, (this dbs are well designed and recieve optimizations and integrity checks, etc) because of this, Im thinking about getting a new server to repleace my old ProLiant ML 330 which was bought 4 years ago but Im concerned about what server arquitecture or characteristic can help me best to improve response performance, is it HD speed? Processor speed? or more Ram? I want to make a good decision, so I´d really appreciate your help...
How should I know if I need to add new processor to my Server?
During Submission of our Records every 24th day of the month the cpu usage of the server is steady 100% can you please help me what alternative can I do? or how can i check if need to add new processor.
I have a rather intensive load on a server that has a data mapping application on the same server(I know this is a no no but I didn't have a say). It seems to be maxing the CPU. Is there a way on a dual or quad processor machine to tell SQL Server to only use one of the processors?
I was wondering, is there a way to allocate processors to SQL2000. I have a server that has 4 processors, I would like to leave one just for the operating system and have SQL2000 use the other 3. Is this possible and do you think it would be recomended to do this? Or should i just leave the 4 processors for everything?
We are looking to purchase a new SQL2000 server.... Tada.... Right then, for around about the same money, we could have either 2 x PIII 1Ghz Xeon with 256Kb cache, or 2 x PIII 700Mhz Xeon with 1Mb cache.... Which choice is best for SQL Server 2000???
Does it mean "per hard drive" or "per CPU"(Pentium III, Pentium IV, etc.)? I'm a bit confused about it after reading a lot of books and article talking about processor license. Thanks in advance....