Solved

Access WIndows 2012

Posted on 2014-10-30
10
210 Views
Last Modified: 2014-11-05
Hello

I have 2 servers on my network.
Server A: Windows 2008 SP2 32bit (6 years old)
Server B : Windows 2012 R2 Essential 64bit (new server)

I have an old ACCESS application (4 users) running on Access 2003. The application is a single "small" 60K DBF file (but many tables, many queries, high complexity). it has been developed internally many years ago and runs fine on Access 2003 (client) on Windows 2008 SP2 (server)

My Problem:

WHen the DBF is simply moved to server2 (Windows 2012 R2 64bit) it becomes very very slow. About 3 time slower than on Windows 2008. When a single person open the DBF file it is more or less OK to work but when 2 persons open the DBF file at the same time it becomes 5 times as slow. I am not even trying with 3 or 4 persons simultaneously...

Database on Server2 becomes very very sensitive to the fact that 2 (or more) persons are working at the same time on the DBF

Network switch has ben replaced and all PC are now on 1 Gb

I have done many tests and I am out of ideas now...

If someone could help...

Thank you
0
Comment
Question by:gadsad
  • 6
  • 3
10 Comments
 

Expert Comment

by:pressMac
ID: 40413318
My experience that when using any MS Access that uses ACE database engine.  I tested only 2010 and 2013, it is very slow on data access.  The JET database engine benchmarked much faster in my testing.  I don't what engine access uses when connected to a DBF.  ( I thought that was typo at first)

On our tests, even hardware that was way faster, could not make up the difference.  We had to punt and change to SQL Server.
ms-access-bencmark.jpg
0
 

Author Comment

by:gadsad
ID: 40413337
there is no SQL engine, or other database engine except the single DBF file on the Windows 2008/2012 share folder
Nothing else. And the client is an Access 2003 opening this DBF

In your graph what is ACCDB ?

Thanks
0
 
LVL 57

Accepted Solution

by:
Jim Dettman (Microsoft MVP/ EE MVE) earned 500 total points
ID: 40413338
gadsad,

 You've already asked this question:

http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/Server/Windows_Server_2008/Q_28544466.html

 and didn't return to the thread.  Have you tried any of those suggestions?

Jim.
0
 

Author Comment

by:gadsad
ID: 40413401
Hello Jim

You are right but the problem is still not solved

I replaced switch to 1 Gb, disable antivirus, firewall, made Many many test but still no good.

DBF is VERY very slow to respond in the 2012 server (whereas is it very fast on Windows 2008 server)

I did not disable SMB3 on server (I am a little afraid to mess something). Should I do that?

Regarding your suggestion to do : dbEngine.SetOption "MaxBuffers", 65535
I am not a Access programmer, can I enter this command somewhere in Access 2003?

THanks again and very much
0
 

Author Comment

by:gadsad
ID: 40413452
another idea I had

Could migrate the MDB to Access 2010 (it is not working on Access 2003) could have any effect on performance and could solve my problem?

Thanks
0
Do email signature updates give you a headache?

Constantly trying to correctly format email signatures? Spending all of your time at every user’s desk to make updates? Want high-quality HTML signatures on all devices, including on mobiles and Macs? Then, let Exclaimer solve all your email signature problems today!

 
LVL 57
ID: 40413475
<<I did not disable SMB3 on server (I am a little afraid to mess something). Should I do that? >>

 No.  As I suggested, leave two copies of the app open, then try and have the users use it.  If you still have slowness, then it is not related to OPLOCKS and more than likely, nothing to do with SMB2/3.

<<dbEngine.SetOption "MaxBuffers", 65535 >>

 This expands the JET cache and it can be placed in the app, but what may be simpler for you is a registry edit so you don't have to mess with the app.  The Key is:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0.

 The key is MaxBuffers.  Set it to 65535 and see if it makes any difference.  NOTE: this must be done on the machine running MSACCESS.EXE (in other words, the client stations).

Jim.
0
 

Author Comment

by:gadsad
ID: 40413492
Yes registry edit is far simpler for me
I will do it tomorrow and keep you informed

thank you
0
 

Author Comment

by:gadsad
ID: 40415242
The key is MaxBuffers.  Set it to 65535

THis key MaxBuffers did not exist
SO I created the key as a dword 32 bits and set 65535 in decimal
is it the right thing?

On an other Win7 SP1 PC,  I did not found the key in the expected location but in another location in
HKLM\SOFT\Wow6432node\Microsoft\Jet\.....

is it normal ?
Thanks
0
 
LVL 57
ID: 40415449
<<HKLM\SOFT\Wow6432node\Microsoft\Jet\.....
>>

That would be the correct key for a 32 bit install of Office on a 64 bit OS.   The one I gave you would be for 64 bit Office

Jim.
0
 

Author Closing Comment

by:gadsad
ID: 40424744
Unfortunately I did not found another solution but toput the MDB out of the Windows 2012 R2 server and to put it on a share on a WIndows 7 SP1 PC ant it works fine like that

I tried it all but nothing else worked

Thanks you anyway

Regards
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

Introduction When developing Access applications, often we need to know whether an object exists.  This article presents a quick and reliable routine to determine if an object exists without that object being opened. If you wanted to inspect/ite…
Regardless of which version on MS Access you are using, one of the harder data-entry forms to create is one where most data from previous entries needs to be appended to new records, especially when there are numerous fields and records involved.  W…
Familiarize people with the process of utilizing SQL Server functions from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Ac…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now