Avatar of lasax
lasax
 asked on

Exchage Server/DC runs out of virtual memory every few days.

My Exchange 2003 is running on Small Business Server 2003, which is also the domain controller.  I've inherited the network, and I'm trying to figure out why the Exchange server regularly runs out of Virtual Memory.

I'm monitoring with the SolarWinds Exchange Monitor tool, and it shows that I have around 4.88% Available Virtual Memory.

Is this normal / acceptible?  A few days ago, Exchange stopped sending & recieving external emails.  I rebooted the server, and then all was ok, but I'm wondering if it is normal for the virtual memory to be constantly max'd out.  I know that generally, one wouldn't put an Exchange server on the same piece of hardware as a DC, but from what I've read, it is done using SBS.  Can anyone give any comments, suggestions, or advice regarding this topic?
SBSActive DirectoryExchange

Avatar of undefined
Last Comment
Philip Elder

8/22/2022 - Mon
ryansoto

For SBS exchange on the same machine is standard.
Now what process in taskmgr.exe is hogging space.  I know your saying virtual memory but something is probably using standard memory
lasax

ASKER
Hmmm.  Looks like sqlservr.exe is is using 1.6 gb.  
ASKER CERTIFIED SOLUTION
Philip Elder

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
lasax

ASKER
I'm new to SBS.  I've always run Windows Server OS in Enterprise environments where we clusterd systems and pretty much always had separate hardware for individual functions.  I already checked the 3gb switch issue, and I see that this is not recommended on SBS.  
User home directories are on this server, as well as shared printers.  CPU usage stays low (like 3-8%), and server doesn't appear to be stressed otherwise.  There are only about 40 users at the company.
Experts Exchange has (a) saved my job multiple times, (b) saved me hours, days, and even weeks of work, and often (c) makes me look like a superhero! This place is MAGIC!
Walt Forbes
ryansoto

MPEC thats a nice tool.  Can this be applied to other things say spoolsv.exe
lasax

ASKER
Thank you so much!  I will read through this & try it out!  Cheers!
Philip Elder

The above steps are specific to setting the allowed memory for any SQL instance to take.
As far as spoolsv.exe, not too sure on that one.
Philip
⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
lasax

ASKER
Hi,
I tried this procedure, but got the following failure message {actual servername replaced with "mysbsserver" for this example}.
C:\>osql -E -S mysbsserver\msfw
[DBNETLIB]SQL Server does not exist or access denied.
[DBNETLIB]ConnectionOpen (Connect()).
The offending service is indeed sqlservr.exe (PID 1804).  SQL Server Service Manager is currently set to "Stop".  I tried the mentioned procedure twice (once logged in with a domain admin account, and next time with the SQLAdmin account.
Any idea why I would get this error?  Server does exist, and access should not be denied.  Hmmm...
lasax

ASKER
This didn't seem to solve the issue.  I'm now considering that perhaps I had too many user accounts on the server.  I read that the limit on SBS2003 is around 75 users.  There were over 80 objects before (though about 17 were disabled accounts of terminated employees.  I deleted about 12 of these disabled accounts and performance seems to have improved slightly, even though the virtual memory still ran down to 5% free yesterday.  Physical memory seems to be ok.  Is it normal or acceptible that the server just fills up this buffer of virtual memory since it is available?  Server does not seem slow or anything.  Only once, the outgoing & incoming mail stopped working.  Now I have been rebooting the server on weekends to try to maintain stability (I've read that this is recommended for SBS2003).
Philip Elder

Make sure the instance is running when you run the commands. Also, logging in as domain admin is the key.

Virtual memory can be 2GB-4GB in size on SBS 2003. We set a 10GB partition aside on our boxes for both the OS swap file and the ISA URL cache.

This keeps the virtual memory file relatively fragment free thus improving the system's performance.

Philip
This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.
rwheeler23
lasax

ASKER
Ahaaa.  Ok, that makes sense.  So it won't upset Exchange or anything if I enable it just long enough to do this procedure?  We have a separate SQL2005 server on another box.  I'm assuming that this is the reason the SQL instance has been disabled on SBS2003.  If this is the case, I will run the instance & try the procedure again.  Thanks!
Philip Elder

Using the above mentioned method, you should be able to peg the culprit and put a limit on its memory usage.
Philip