Skip to main content
GullySystem

Database Performance Tuning

Database performance tuning covers the database as a whole and not one query. Indexes, table growth, connection limits, memory settings and the placement of reporting workloads are all reviewed.

Indexes, including the ones to remove

Adding indexes is the usual advice. Removing some can bring as much improvement.

Designed from the plan

An index is added because the execution plan calls for it, and not because a column appears in a filter.

The cost of each one

Every index slows writes. On a busy order table that cost is larger than people expect.

Duplicates dropped

Years of quick fixes leave overlapping indexes. Removing them speeds up entry and shrinks backups.

Tables that keep growing

Systems often slow gradually because nothing was archived. No single day marks the change.

Archiving rules

Older records move to a history table. They stay searchable and sit outside the daily screens.

Log and audit tables

These are often the largest tables in the database, and how long they must be kept is rarely agreed.

Partitioning where it helps

Large tables are split by period, where the platform supports it and the queries benefit.

Server settings and traffic

A well-written query still queues if the database is configured for a smaller machine, or if reports and order entry compete for it.

Memory and pools

Buffer sizes, connection limits and worker counts are matched to real concurrency and not left at the installer default.

Reporting separated

Heavy reads move to a replica, so the month-end report stops blocking data entry.

Backups that do not hurt

Backup timing and method are reviewed, since a nightly dump during your busiest hour is a performance problem too.

FAQ

Frequently asked questions

Which databases do you tune?

MySQL and MariaDB, PostgreSQL, Microsoft SQL Server and MongoDB most often, with Redis alongside for caching. The approach is the same throughout: read the plans and the logs before touching anything.

Is archiving safe if our auditor needs old records?

Yes. Archiving moves rows and does not delete them, and they stay searchable through a history view. Retention is agreed with your accountant before anything moves.

Can the database be tuned without changing application code?

Partly, through indexes, configuration and archiving. Repeated-query patterns in the code usually need a change, and the report shows which of them are worth it.

Talk to us

Tell us what you need.

Share your requirements and one of our engineers will come back to you within one business day.

  • No obligation
  • A reply within one business day
  • Your details stay private

Start with your requirements

Seven short steps that tell us what you need. An engineer reads them before getting in touch.

Share your requirements