Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Access WIndows 2012

Posted on 2014-10-30
10
Medium Priority
?
234 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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 58

Accepted Solution

by:
Jim Dettman (Microsoft MVP/ EE MVE) earned 2000 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
Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

 

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
 
LVL 58
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 58
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

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In Part II of this series, I will discuss how to identify all open instances of Excel and enumerate the workbooks, spreadsheets, and named ranges within each of those instances.
Microsoft Access is a place to store data within tables and represent this stored data using multiple database objects such as in form of macros, forms, reports, etc. After a MS Access database is created there is need to improve the performance and…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
Suggested Courses

661 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