What's new
  • Happy Cataclysm gaming! The long-awaited 4.3.4 Cataclysm Repack V19.0 is now live - and downloadable from our brand-new Emucoach App.
    Download it now
  • Mists of Pandaria is calling! Heya - did you know that the newest 5.4.8 MoP Repack - version 7.0 - is now live?
    Download now

Guide: Configure MySQL my.ini for Better WoW MoP Repack Performance, Stability, and More Players

Kneuma

MoP Premium
2
2025
1
Why this matters

Hi all,

With the new MoP repack now using MySQL 8.0, one of the first things I noticed is that there is no my.ini configuration file included in the MySQL folder. This usually means the database server is running with default factory settings instead of values tuned for a WoW server.

Those default values are very conservative. For example:
  • max_connections is usually only 151
  • innodb_buffer_pool_size is usually only 128 MB

For a WoW server, that is often far from ideal.

Your database server tries to keep as much useful data in RAM as possible for speed.
If your world database alone is already over 568 MB, then a tiny 128 MB buffer pool is clearly not enough to cache much of it.

That can lead to:
  • slower queries
  • more disk reads
  • extra lag under load
  • reduced stability
  • more connection-related issues when the server gets busy

A simple my.ini can make a very noticeable difference.



The most important variables to adjust

For most repack users, the two most important values to check are:

  • innodb_buffer_pool_size
  • max_connections

1. innodb_buffer_pool_size

This is the most important MySQL memory setting for InnoDB tables, which your WoW databases use.

General rule:
  • On a dedicated database machine, many admins use around 70-80% of available RAM for InnoDB
  • On a single-box repack where MySQL, worldserver, authserver, website, and tools all share the same machine, be more conservative

Good starting examples:
  • 4 GB RAM machine running everything: try 512M to 1024M
  • 8 GB RAM machine running everything: try 1024M to 2048M
  • Dedicated DB machine: you can often go much higher

2. max_connections

Default MySQL often uses only 151 connections.

That does not mean 151 players only. Connections can also come from:
  • authserver
  • worldserver
  • website
  • admin tools
  • remote management tools
  • imports and maintenance tasks

Practical examples:
  • Small server with 20-50 active players: 151 is usually fine
  • Medium server with 50-150 active players plus tools/website: 200-300 is often better
  • Larger setups: you may need 300+



Which values can usually stay as they are

For a simple and safe starter config, these values can usually stay as shown:

  • port=3306
  • bind-address=0.0.0.0
  • default_authentication_plugin=mysql_native_password
  • sql_mode=NO_ENGINE_SUBSTITUTION
  • wait_timeout=28800
  • max_allowed_packet=64M
  • default_storage_engine=InnoDB
  • innodb_flush_log_at_trx_commit=2
  • log_error=mysql_error.log

So in short:

Usually adjust:
  • innodb_buffer_pool_size
  • max_connections

Usually keep as-is:
  • the rest of the starter config unless you know exactly why you want something different



Basic starter my.ini

This is a simple baseline config that works well as a starting point:

Code:
[mysqld]

# Network
port=3306
bind-address=0.0.0.0

# Compatibility
default_authentication_plugin=mysql_native_password
sql_mode=NO_ENGINE_SUBSTITUTION

# Core workload settings
max_connections=151
wait_timeout=28800
max_allowed_packet=64M

# InnoDB
default_storage_engine=InnoDB
innodb_buffer_pool_size=1024M
innodb_flush_log_at_trx_commit=2

# Logging
log_error=mysql_error.log

[client]
port=3306
default-character-set=utf8mb4

[mysql]
default-character-set=utf8mb4

[mysqldump]
quick
max_allowed_packet=64M

[mysqladmin]
default-character-set=utf8mb4



How to apply it

  1. Stop your server completely
  2. Go to <your_repack>\Database\_Server\mysql
  3. Create a new file called my.ini
  4. Make sure it is really my.ini and not my.ini.txt
  5. In Windows, enable Show file extensions if needed
  6. Copy and paste the config above into the file
  7. Edit innodb_buffer_pool_size and max_connections to match your hardware and player count
  8. Save the file
  9. Start the server again



Final notes

If your MySQL server is running with default values, you are very likely leaving performance on the table.

For WoW repacks, the database is one of the most important parts of the entire server.
A proper my.ini can help with:

  • faster database access
  • better caching
  • less disk usage under load
  • better stability
  • better handling of active players and tools
  • fewer problems caused by weak default settings

You do not need a huge or complicated config.
Even a small and clean my.ini, with the right values for innodb_buffer_pool_size and max_connections, can massively improve the database server compared to pure factory defaults.

Hope this helps someone.
 
Back
Top