This section of the website is not about best practices. It is about the absence of them and how to create workarounds when you can’t solve the core problems.
If you’re a business owner who has bought or leased a turnkey application system, you’ve undoubtedly acquired application software, a database server, a database management system, and at least one application database. The application software and the database are intricately intertwined. A software update may include modifications to the database. Any ad hock modifications to the database or the implemented security model have the strong potential to break the applications software, so you don’t dare modify the database to solve performance or security problems.
In other words, for better or worse, you are stuck with the application vendor’s implementation of the database and its security model.
In my 30+ years in I.T., it has universally been my experience that software developers have little to no conception of database and server best practices, no concept of the need for efficiency in SQL queries, and expect SQL Server or any other database management system to just “automagically” work. I have only known one software developer that differed from this profile, and he was exceptional.
I have been through this situation with three clients. When they finally contacted me, the database server’s performance was so bad that daily production activities were routinely interrupted by poor database server performance. Their servers were, as I describe them, “on fire”.
Yes, the application database is tied to the application software, and modifications to the database to improve performance can break things – unless you know what can be done to improve system performance without the risks of breaking the application.
A careful analysis of your server’s operating environment will reveal stress points and suggest ways to get things under control, both immediately and permanently. Appropriate and careful modifications to selected parts of your database(s) will not break the interface with your applications software, but those modifications will have the potential to dramatically improve your server’s performance.
If you are the owner/user of a turnkey application system and you are having performance problems, call me. After careful analysis, I can suggest and implement workarounds to solve your performance problems. I’ve done it before and I’m good at it.