From 85d97393c90c2861cc53211827b0eecaf0d5f3c4 Mon Sep 17 00:00:00 2001 From: Julio Suarez Date: Fri, 26 Jun 2026 15:07:26 -0500 Subject: [PATCH 1/2] MySQL Tuning LP Refresh - Refresh MySQL tuning Learning Path title, description, objectives, prerequisites, and further reading. - Rework tuning guidance to emphasize measurement-based performance tuning instead of fixed one-size-fits-all settings. - Add updated HammerDB TPROC-C before/after image. - Expand system-level tuning coverage for storage, huge pages, and 64 KB Arm kernel pages. - Split MySQL configuration guidance into focused sections for buffer pool, redo log capacity, huge pages, durability, I/O capacity, and spin locks. - Add MySQL documentation links for tuning variables. - Remove redundant verification and Innodb_log_waits guidance. - Clean up wording, spelling, and Learning Path conventions across the updated pages. --- .../mysql_tune/OOBvsTuned.png | Bin 0 -> 233011 bytes .../mysql_tune/_index.md | 33 +++- .../mysql_tune/before_and_after.md | 29 +++- .../mysql_tune/kernel_comp_lib.md | 87 +++++++--- .../mysql_tune/tuning.md | 157 +++++++++++++----- 5 files changed, 220 insertions(+), 86 deletions(-) create mode 100644 content/learning-paths/servers-and-cloud-computing/mysql_tune/OOBvsTuned.png diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/OOBvsTuned.png b/content/learning-paths/servers-and-cloud-computing/mysql_tune/OOBvsTuned.png new file mode 100644 index 0000000000000000000000000000000000000000..ffb533528fd89dcdc022c2adb4f38f1f1dca850d GIT binary patch literal 233011 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%0A`k3Z~#-aFMgr4~F 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 Wr=pU%Yu!Qw{_ZMi-N{pY82BHxzv~eI literal 0 HcmV?d00001 diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/_index.md b/content/learning-paths/servers-and-cloud-computing/mysql_tune/_index.md index 48039b70c6..9dfcfc421b 100644 --- a/content/learning-paths/servers-and-cloud-computing/mysql_tune/_index.md +++ b/content/learning-paths/servers-and-cloud-computing/mysql_tune/_index.md @@ -1,15 +1,19 @@ --- -title: Learn how to Tune MySQL +title: Tune MySQL performance on Arm-based platforms +description: Learn how to tune MySQL configuration, Linux memory settings, and storage options to improve database performance on Arm-based platforms. minutes_to_complete: 30 -who_is_this_for: This is an advanced topic for software developers and DevOps professionals interested in optimizing MySQL performance on Arm-based VMs in the cloud. +who_is_this_for: This Learning Path is for database administrators (DBAs) and software developers who want to optimize MySQL performance on Arm-based platforms. learning_objectives: - - Tune MySQL to increase performance + - Configure MySQL settings that affect connection handling, memory usage, disk flush behavior, and concurrency. + - Enable huge pages for MySQL and size them based on the InnoDB buffer pool. + - Evaluate storage, kernel, compiler, and library choices that can affect MySQL performance. prerequisites: - - Bare-metal or cloud [installation of MySQL](/learning-paths/servers-and-cloud-computing/mysql/) + - On-prem or cloud [installation of MySQL](https://dev.mysql.com/doc/refman/en/) + - A repeatable MySQL workload or benchmark that you can run before and after tuning author: Julio Suarez @@ -41,13 +45,25 @@ test_maintenance: true further_reading: - resource: - title: MySQL documentation - link: https://www.mysql.com/ + title: MySQL Reference Manual + link: https://dev.mysql.com/doc/refman/en/ type: documentation - resource: - title: Running MySQL on ARM - link: https://mysqlonarm.github.io/Running-MySQL-on-ARM/ + title: InnoDB configuration parameters + link: https://dev.mysql.com/doc/refman/en/innodb-parameters.html type: documentation + - resource: + title: Optimizing InnoDB disk I/O + link: https://dev.mysql.com/doc/refman/en/optimizing-innodb-diskio.html + type: documentation + - resource: + title: Linux HugeTLBpage documentation + link: https://docs.kernel.org/admin-guide/mm/hugetlbpage.html + type: documentation + - resource: + title: Migrating applications to Arm servers + link: /learning-paths/servers-and-cloud-computing/migration/ + type: learning-path ### FIXED, DO NOT MODIFY # ================================================================================ @@ -55,4 +71,3 @@ weight: 1 layout: learningpathall learning_path_main_page: 'yes' --- - diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md b/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md index b5fd336d99..b60a476b86 100644 --- a/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md +++ b/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md @@ -1,17 +1,32 @@ --- -title: "About MySQL performance tuning" +title: "Measure MySQL tuning impact" +description: Learn how to approach MySQL performance tuning as a measurement-driven process and compare baseline results with tuned results. weight: 2 layout: "learningpathall" --- -## About database performance tuning +## About performance tuning -The configuration of a database and the types of requests made by clients to it will differ from use case to use case. This means there is no one size fits all set of tuning parameters for `MySQL`. Use the information in this learning path as general guidance to help with tuning `MySQL`. +Performance tuning is most useful when you treat it as a measurement process, not a fixed checklist. You can tune by changing one parameter at a time, running a designed experiment, comparing profiles, or using automation and AI-assisted tools to explore a larger configuration space. -## Importance of tuning +There isn't a universal set of tuning parameters that works best for every application. The right settings depend on the workload, data size, memory capacity, storage performance, network behavior, software version, system architecture, operating system, and other application-specific factors. -Application tuning allows you to gain performance without scaling a deployment up (bigger machines) or out (more machines). This gives the option to use the gained performance, or to trade it for cost savings by reducing the total compute resources provisioned. +Whatever method you use, keep the measurements repeatable. Record the system configuration, workload, software versions, and tuning parameters so you can identify which changes improved performance and which changes had little effect. -## Note on MySQL Documentation +## Why tune MySQL -All links to [MySQL documentation](https://dev.mysql.com/doc/refman/en/) in this learning path point to the latest version of the documentation. If you are using an older version of MySQL, be sure to change the documentation version after clicking the links. \ No newline at end of file +MySQL performance can be limited by memory usage, disk I/O, connection handling, concurrency, or synchronization overhead. Tuning helps you use the available compute, memory, and storage resources more efficiently. + +Improved performance can give you higher throughput, lower latency, or better cost efficiency. A tuned configuration can increase capacity on the same system, or help you meet the same performance target with fewer compute resources. + +## Example benchmark result + +The following example shows MySQL throughput with HammerDB TPROC-C before and after tuning on an Arm Neoverse V3 system. + +![Bar chart comparing MySQL HammerDB TPROC-C normalized NOPM throughput before and after tuning on an Arm Neoverse V3 system. At 128 clients, the out-of-box configuration is 1.00 and the tuned configuration is 15.37.#center](OOBvsTuned.png "MySQL HammerDB TPROC-C throughput before and after tuning") + +This benchmark result is an example, not a guaranteed improvement for every workload. Your results depend on the MySQL version, database size, storage device, memory capacity, client thread count, and the queries used in the test. + +{{% notice Note %}} +Links to MySQL documentation in this Learning Path point to the latest version of the documentation. If you use an older version of MySQL, select the matching documentation version after opening the links. +{{% /notice %}} diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib.md b/content/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib.md index 287cf756a3..2cacd23636 100644 --- a/content/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib.md +++ b/content/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib.md @@ -1,6 +1,7 @@ --- # User change -title: "System, Kernel, Compiler, and Libraries" +title: "Tune system, kernel, compiler, and library settings" +description: Learn how storage, kernel page size, Linux huge pages, compiler settings, and OpenSSL choices can affect MySQL performance on Arm-based systems. weight: 3 # 1 is first, 2 is second, etc. @@ -8,29 +9,33 @@ weight: 3 # 1 is first, 2 is second, etc. layout: "learningpathall" --- -## Storage technology, file system format, and disk scheduling +## Tune the system around MySQL -The underlying storage technology and the file system format can impact performance. In general, locally attached SSD storage will perform best. However, network based storage systems can perform well. You should spend some time studying and experimenting with different storage technologies and configuration options. +MySQL configuration is only one part of performance tuning. Operating system settings, storage behavior, kernel memory management, compiler choices, and library versions can also affect throughput and latency. This section highlights system-level areas to check before or alongside MySQL-specific tuning. -Aside from the storage technology, the file system format used with `MySQL` can impact performance. The `xfs` file system is a good starting point. The `ext4` file system is another good alternative. Last, it is recommended to use storage drives that are dedicated to the database (i.e. not shared with the OS or other applications). +## Storage technology, file systems, and disk scheduling -When running in the cloud, the disk scheduling algorithm is typically set to `noop` or a similar "dumb" algorithm. This is typically optimal for `MySQL` in the cloud, so no adjustment is needed. However, if running `MySQL` on an on-prem server, it's a good idea to double check what the disk scheduling algorithm is, and possibly change it. According to the [Optimizing InnoDB Disk I/O documentation](https://dev.mysql.com/doc/refman/en/optimizing-innodb-diskio.html), `noop` or `deadline` might be better options. It's worth testing this with on-prem systems. +Storage technology and file system choices can affect performance. In general, locally attached SSD storage performs best, but network-based storage systems can also perform well. Test the storage technologies and configuration options available in your environment. -## MySQL storage engines +The file system used with MySQL can also affect performance. The `xfs` file system is a good starting point, and `ext4` is another good option. For production systems, use storage volumes dedicated to the database instead of sharing them with the operating system or other applications. -There are different storage engines available for `MySQL`. The default storage engine is `InnoDB`. `InnoDB` is the default storage engine because it performs the best in the broadest set of use cases. +When running in the cloud, the disk scheduling algorithm is typically set to `noop` or a similar minimal scheduler. This is usually a good setting for MySQL in cloud environments, so no adjustment is needed. If you run MySQL on an on-premises server, double-check the disk scheduling algorithm and test alternatives. According to the [Optimizing InnoDB Disk I/O documentation](https://dev.mysql.com/doc/refman/en/optimizing-innodb-diskio.html), `noop` or `deadline` might be better options for some systems. + +## MySQL storage engines + +MySQL supports different storage engines. The default storage engine is `InnoDB`, which performs best across the broadest set of use cases. Information on alternative storage engines can be found in the [MySQL documentation](https://dev.mysql.com/doc/refman/en/storage-engines.html). -## Kernel configuration +## Kernel configuration -`MySQL` can benefit from adjustments to kernel parameters. Below is a list of kernel related settings that can have a positive impact on performance. +MySQL can benefit from adjustments to kernel parameters. The following kernel-related settings can have a positive impact on performance. ### Linux virtual memory subsystem -Making changes to the Linux Virtual Memory subsystem can improve performance. +Making changes to the Linux virtual memory subsystem can improve performance. -These settings can be changed in the `/etc/sysctl.conf` file, or by using the `sysctl` command. +You can change these settings by using the `sysctl` command or by adding configuration files under `/etc/sysctl.d/`. Documentation on the virtual memory subsystem parameters can be found in the [admin-guide for sysctl in the Linux source code](https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/sysctl/vm.rst). @@ -42,14 +47,35 @@ sudo sysctl -a See the `sysctl` command documentation for more. +### Consider 64 KB kernel pages on Arm + +Some Arm Linux distributions provide kernels built with `64 KB` base pages instead of `4 KB` base pages. This is a kernel selection or build-time choice, not a `sysctl` setting you can change on a running system. + +A `64 KB` base page can improve some memory-intensive workloads because each base page maps more memory. This can reduce Memory Management Unit (MMU) translation overhead, reduce page-table walk depth, and relieve Translation Lookaside Buffer (TLB) pressure, including instruction-side TLB pressure in the CPU front end. + +The tradeoff is memory efficiency. Larger base pages can increase internal fragmentation for workloads with many small or sparsely touched mappings, which can reduce the effective amount of memory available to the application and operating system. + +The benefit is workload dependent, so compare a `4 KB` kernel and a `64 KB` kernel with the same MySQL & storage configuration. + +Base page size also affects the huge page sizes available on Arm. The common PMD-level huge page sizes are: + +| Kernel base page size | PMD-level huge page size | +|-----------------------|--------------------------| +| `4 KB` | `2 MiB` | +| `64 KB` | `512 MiB` | + +For more information, see the Linux kernel documentation for [Memory Layout on AArch64 Linux](https://docs.kernel.org/next/arm64/memory.html) and [HugeTLBpage on ARM64](https://docs.kernel.org/next/arm64/hugetlbpage.html). + ### Huge memory pages - `MySQL` benefits from using huge memory pages. Huge pages reduce how often virtual memory pages are mapped to physical memory. - +MySQL can benefit from using huge memory pages, especially when the InnoDB buffer pool is large. Huge memory pages have a similar performance goal to `64 KB` base pages: they map more memory per translation entry, which can reduce page-table walks and TLB pressure. + +The tradeoff is also similar. Huge pages reserve memory in larger chunks, so over-allocating them can reduce the memory available for other uses. Under-allocating them can prevent MySQL from using huge pages at all. The performance impact depends on your workload and system configuration. + To see the current huge memory page configuration, run the following command on the host: ```bash -cat /proc/meminfo | grep ^Huge +grep '^Huge' /proc/meminfo ``` The output should be similar to: @@ -63,9 +89,9 @@ Hugepagesize: 2048 kB Hugetlb: 0 kB ``` -Huge pages are not being used if `HugePages_Total` is 0 (this is typically the default). +Huge pages are not being used if `HugePages_Total` is `0` (this is typically the default). -Also note that `Hugepagesize` is 2MiB which is the typical default for huge pages on Linux. +The `Hugepagesize` value depends on the kernel base page size and platform configuration. Use the value reported by `/proc/meminfo` when calculating `vm.nr_hugepages`. The sysctl parameter that enables huge pages is shown below: @@ -73,34 +99,41 @@ The sysctl parameter that enables huge pages is shown below: vm.nr_hugepages ``` -This parameter sets the number of huge pages you want the kernel to make available to applications. +This parameter sets the number of huge pages you want the kernel to make available to applications. -The total amount of memory that will be used for huge pages will be this number (defaulted to 0) times the `Hugepagesize`. +The total amount of memory used for huge pages is this number, which defaults to 0, multiplied by the `Hugepagesize` value. -As an example, if you want a total of 1GB of huge page space, then you should set `vm.nr_hugepages` to 500 (500x2MB=1GB). +For example, if you want `1 GiB` of huge page space and `Hugepagesize` is `2 MiB`, set `vm.nr_hugepages` to `512`. ```bash -sudo sysctl -w vm.nr_hugepages=500 +sudo sysctl -w vm.nr_hugepages=512 ``` To make the change permanent: ```bash -sudo sh -c 'echo "vm.nr_hugepages=500" >> /etc/sysctl.conf' +echo "vm.nr_hugepages=512" | sudo tee /etc/sysctl.d/99-mysql-hugepages.conf +sudo sysctl --system ``` ### Selecting the number of huge pages to use -You should set `vm.nr_hugepages` to a value that gives a total huge page space equal to or slightly larger than the `MySQL` buffer pool size. Selecting the buffer pool size is discussed in the [Tuning MySQL](/learning-paths/servers-and-cloud-computing/mysql_tune/tuning/) section. +If huge pages improve your workload, set `vm.nr_hugepages` to a value that gives a total huge page space equal to or slightly larger than the InnoDB buffer pool size, which is controlled by `innodb_buffer_pool_size`. + +{{% notice Important %}} +After restarting MySQL with `large-pages=ON`, check both `/proc/meminfo` and the MySQL error log. If the huge page pool is too small, or MySQL cannot allocate huge pages for another reason, InnoDB can fall back to traditional memory and write `Warning: Using conventional memory pool.` to the MySQL error log. You might also see an allocation warning similar to `large_page_aligned_alloc mmap(... bytes) failed; errno 12`. +{{% /notice %}} + +Selecting the buffer pool size is discussed in the [Tuning MySQL](/learning-paths/servers-and-cloud-computing/mysql_tune/tuning/) section. Typically, only the number of huge pages needs to be configured. However, for more information on the different parameters that affect the configuration of huge pages, review the [admin-guide for hugetlbpage in the Linux source code](https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/mm/hugetlbpage.rst). -## Compiler Considerations +## Compiler considerations -The easiest way to gain performance is to use the latest version of GCC. Aside from that, the flags `-mcpu` and `-flto` can be used to potentially gain additional performance. Usage of these flags is explained in the [Migrating C/C++ applications](/learning-paths/servers-and-cloud-computing/migration/c/) section of the [Migrating applications to Arm servers](/learning-paths/servers-and-cloud-computing/migration/) learning path. +If you build MySQL from source, the compiler version and optimization flags can affect performance. Use a recent version of GCC, and consider flags such as `-mcpu` and `-flto` for additional optimization. These flags are explained in the [Migrating C/C++ applications](/learning-paths/servers-and-cloud-computing/migration/c/) section of the [Migrating applications to Arm servers](/learning-paths/servers-and-cloud-computing/migration/) Learning Path. -## OpenSSL Considerations +## OpenSSL considerations -MySQL relies on [OpenSSL](https://www.openssl.org/) for cryptographic operations. Thus, the version of OpenSSL used with MySQL (and the GCC version and switches used to compile it) can impact performance. Typically using the Linux distribution default version of OpenSSL is sufficient. +MySQL relies on [OpenSSL](https://www.openssl.org/) for cryptographic operations. The OpenSSL version used with MySQL, and the compiler version and switches used to build it, can affect performance. The default OpenSSL version provided by your Linux distribution is typically sufficient. -However, it is possible to use newer versions of OpenSSL which could yield performance improvements. This is achieved by building and installing OpenSSL before building MySQL. \ No newline at end of file +If you build MySQL from source, you can also build and install a newer version of OpenSSL before building MySQL. This might improve performance for workloads that spend significant time in cryptographic operations. diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/tuning.md b/content/learning-paths/servers-and-cloud-computing/mysql_tune/tuning.md index 93293bf523..c43265f903 100644 --- a/content/learning-paths/servers-and-cloud-computing/mysql_tune/tuning.md +++ b/content/learning-paths/servers-and-cloud-computing/mysql_tune/tuning.md @@ -1,6 +1,7 @@ --- # User change -title: "Tuning MySQL" +title: "Tune MySQL configuration" +description: Learn how to tune MySQL server parameters for connections, memory, disk flushing, transaction durability, I/O capacity, and lock polling. weight: 4 # 1 is first, 2 is second, etc. @@ -8,92 +9,162 @@ weight: 4 # 1 is first, 2 is second, etc. layout: "learningpathall" --- -## MySQL configuration +## MySQL configuration -There are different ways to set configuration parameters for `MySQL`. +You can set MySQL server configuration parameters in an option file or on the `mysqld` command line. -This is discussed in the [Specifying Program Options](https://dev.mysql.com/doc/refman/en/program-options.html) section of the MySQL documentation. +For persistent tuning, use an option file so the configuration can be reviewed, version controlled, and applied consistently when MySQL restarts. For more information, see the MySQL [Specifying Program Options documentation](https://dev.mysql.com/doc/refman/en/program-options.html). -The configurations below can be directly pasted into a `MySQL` configuration file under the group `mysqld`. +The examples in this section are intended for the `[mysqld]` group in a MySQL option file. -It's also possible to specify these configurations on the `mysqld` command line. However, it's better to use configuration files since these can be version controlled more easily. +In general, leave most MySQL settings at their defaults and change them only when you have a workload requirement, test result, profile, or observed bottleneck that supports the change. -Last, keep in mind, that in general, it's usually best to leave most configs at default, and only change them if there is a suspected/known issue. +### Connections and prepared statements -### Connections and prepared transactions +The following example shows intentionally high limits that can be useful in benchmark environments where you want to prevent connection or prepared statement limits from affecting the test result: +```ini +# Intentionally high benchmark limits. +max_connections=100000 +max_prepared_stmt_count=4194304 ``` -max_connections=100000 # Default 151 -max_prepared_stmt_count=4194304 # Default 16382 + +The [`max_connections`](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_max_connections) parameter doesn't directly improve performance. It raises the number of client connections MySQL can accept. Higher values consume more memory and can also depend on operating system limits such as file descriptors, so size this value for your expected peak connection count. + +The [`max_prepared_stmt_count`](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_max_prepared_stmt_count) parameter limits the total number of prepared statements across the server. The default protects the server from excessive memory use. Increase this value only when a benchmark or application needs more prepared statements, and avoid carrying an oversized value into production without measuring memory impact. + +### Dedicated server configuration + +If the system only runs MySQL, enable the dedicated server setting: + +```ini +innodb_dedicated_server=ON ``` -`max_connections` doesn't impact performance, but if a high connection count is expected or required, this should be raised in order to not reject requests from clients. +The [`innodb_dedicated_server`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_dedicated_server) parameter automatically sizes selected InnoDB settings for a server dedicated to MySQL. Check the [MySQL dedicated server documentation](https://dev.mysql.com/doc/refman/en/innodb-dedicated-server.html) for the MySQL version you deploy because the behavior can change between releases. + +In MySQL 8.4+, `innodb_dedicated_server` automatically configures `innodb_buffer_pool_size` and `innodb_redo_log_capacity`. On systems with more than `4 GiB` of RAM, `innodb_buffer_pool_size` is set to `75%` of detected system memory. + +The auto-sized values are a useful starting point, but you can still override individual settings when workload requirements or performance data justify the change. + +### Buffer pool size -Keep in mind that more connections means more resources will be consumed, especially memory. Setting this to something higher is completely dependent on use case and requirements. +The [`innodb_buffer_pool_size`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_buffer_pool_size) parameter is one of the most important MySQL performance settings. It controls how much memory InnoDB can use to cache indexes and table data. -`max_prepared_stmt_count` is 16382 by default. It's a good idea to set this as small as possible in order to help prevent denial of service attacks. You can make it very large in a test environment that uses many prepared statements. +If MySQL runs on a dedicated server, `innodb_dedicated_server=ON` can be enough to size the buffer pool. If you don't use `innodb_dedicated_server`, or you want to test a specific value, set `innodb_buffer_pool_size` based on your workload and available memory: -### Dedicated Server Configuration +```ini +# Example value for a dedicated 128 GiB test system. +innodb_buffer_pool_size=96G ``` -innodb_dedicated_server=ON + +The [MySQL InnoDB buffer pool documentation](https://dev.mysql.com/doc/refman/en/innodb-buffer-pool.html) suggests setting the buffer pool size to as much as `80%` of system memory on a dedicated database server. Leave memory for the operating system, connections, background MySQL memory use, and any other processes on the system. + +Confirm the current buffer pool size: + +```sql +SHOW VARIABLES LIKE 'innodb_buffer_pool_size'; ``` -If the node will only run `MySQL` and no other application. One of the easiest ways to gain performance is by setting `innodb_dedicated_server=ON`. This setting does different things depending on the version of `MySQL`, so it's important to check the [documentation](https://dev.mysql.com/doc/refman/en/innodb-dedicated-server.html) for the specific version of `MySQL` being deployed. As of version 8.4, this setting will automatically set both `innodb_buffer_pool_size` and `innodb_redo_log_capacity`. Two configurations that impact performance. -On systems with a large amount of RAM (greater than 4GB), the `innodb_buffer_pool_size` will be set to 75% total system memory. `innodb_buffer_pool_size` is one of the most important configuration parameters that can be set. It determines how much memory can be used to store indexes and table data. It's a cache that improves read/write latency by relieving pressure on storage. If `innodb_dedicated_server` is not used, then this parameter should be set. The [MySQL documentation](https://dev.mysql.com/doc/refman/en/innodb-buffer-pool.html) suggests this be set to up to 80% of total system memory. The default of 128MiB is probably going to be far less than 80% of total system memory. +{{% notice Note %}} +The `innodb_buffer_pool_size` value is shown in bytes. Use the value reported by MySQL when calculating huge page allocation. +{{% /notice %}} -`innodb_redo_log_capacity` was introduced in MySQL 8.0.30. It controls the amount of disk space used for redo log files. In earlier versions of `MySQL`, the parameters `innodb_log_file_size` and `innodb_log_files_in_group` influence redo log size and behavior. `innodb_redo_log_capacity` simplifies things. When `innodb_dedicated_server` is enabled, `innodb_redo_log_capacity` is set to (number of available logical processors / 2)GB with a max of 16GB. If `innodb_dedicated_server` is not used, then `innodb_redo_log_capacity` should be set. If the redo log is too small, the status variable [`Innodb_log_waits`](https://dev.mysql.com/doc/refman/en/server-status-variables.html#statvar_Innodb_log_waits) will be large. This indicates that the redo log buffer is waiting for the log to be flushed to storage before continuing. Ideally, this status variable is 0 at all times. +### Buffer pool instances -### Huge Pages +For large buffer pools, multiple buffer pool instances can improve concurrency by reducing contention as different threads read and write cached pages. +```ini +# Example value for a large buffer pool. +innodb_buffer_pool_instances=8 ``` -large_pages=ON # default is OFF + +The [`innodb_buffer_pool_instances`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_buffer_pool_instances) setting takes effect only when `innodb_buffer_pool_size` is at least `1 GiB`. The total buffer pool is divided across the instances, so keep each instance at least `1 GiB`. Test values such as `4`, `8`, or `16` with your workload, and avoid creating so many instances that each one becomes too small. + +### Redo log capacity + +For write-heavy workloads, you can keep `innodb_dedicated_server=ON` and explicitly set a larger redo log capacity than the value MySQL calculates automatically: + +```ini +innodb_dedicated_server=ON +# Example override for write-heavy workloads. +innodb_redo_log_capacity=32G ``` -Turning on `large_pages` can result in significant performance gains. +The [`innodb_redo_log_capacity`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_redo_log_capacity) parameter controls the amount of disk space used for redo log files. It was introduced in MySQL 8.0.30. In earlier MySQL versions, [`innodb_log_file_size`](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_log_file_size) and [`innodb_log_files_in_group`](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_log_files_in_group) control redo log size and behavior. -Using larger pages helps to reduce how often physical memory has to get mapped to virtual memory. Note that huge pages needs to be [turned on at the kernel level](/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib/) for this to work. +The auto-sized `innodb_redo_log_capacity` value is a starting point. Increasing it can improve write-heavy workloads by giving InnoDB more redo log space before checkpoints limit write throughput. An explicit `innodb_redo_log_capacity` value overrides the value calculated by `innodb_dedicated_server` for that variable, while still allowing `innodb_dedicated_server` to size other settings such as `innodb_buffer_pool_size`. When you override one of the automatically configured variables, MySQL prints a startup warning such as `Option innodb_dedicated_server is ignored for innodb_redo_log_capacity`. That warning is expected for the overridden variable. -If `innodb_dedicated_server` is set to `ON`, then `innodb_buffer_pool_size` will automatically be set. The value of `innodb_buffer_pool_size` is needed to calculate how many huge pages will need to be allocated. The value of `innodb_buffer_pool_size` can be confirmed by checking the variable in the `mysql` cli. +Larger redo logs use more disk space and can increase crash recovery time, so test values against both performance and operational requirements. -```sql -SHOW VARIABLES LIKE 'innodb_buffer_pool_size'; +### Huge pages + +Enable large page support in the MySQL configuration: + +```ini +large-pages=ON ``` -> NOTE: The innodb_buffer_pool_size unit is bytes. -> There is no need to confirm the value of `innodb_buffer_pool_size` if it is set manually (i.e. you are not using `innodb_dedicated_server=ON`). -> Alternatively, you can estimate the value of `innodb_buffer_pool_size` since the calculation when `innodb_dedicated_server=ON` is in the documentation. Use the command "`free --bytes`" to get the total system memory in bytes. +Turning on [`large-pages`](https://dev.mysql.com/doc/refman/en/server-system-variables.html#sysvar_large_pages) can improve performance when MySQL uses a large InnoDB buffer pool. Larger pages map more memory per translation entry, which can reduce page-table walks and TLB pressure. + +Huge pages must also be configured at the Linux kernel level. See the [system, kernel, compiler, and library settings](/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib/) section for huge page setup instructions. -Divide this number by the huge page size (convert to bytes first) to get the number of huge pages that should be allocated. Instructions on how to get the huge page size and to set the number of pages is in the [System, Kernel, Compiler, and Libraries](/learning-paths/servers-and-cloud-computing/mysql_tune/kernel_comp_lib/) section. +Divide the buffer pool size by the huge page size to estimate the number of huge pages needed. Use the `Hugepagesize` value from `/proc/meminfo`, and allocate enough huge pages for a total huge page space equal to or slightly larger than the buffer pool. -In general, there's no need to adjust other memory parameters unless an issue is suspected/found. That said, other memory related configurations that could be worth exploring are the [Buffer Pool Prefetching](https://dev.mysql.com/doc/refman/en/innodb-performance-read_ahead.html) configurations (take this as an FYI). You may see modest performance gains by decreasing the `innodb_read_ahead_threshold` from the default. The default is very conservative and will result in very little to no prefetching. Some workloads may benefit from being less conservative with prefetching. Turning on random prefetch (`innodb_random_read_ahead`) seems to hurt performance but could benefit some user cases. The affects of these settings will be use case dependent. +{{% notice Important %}} +After restarting MySQL with `large-pages=ON`, check `/proc/meminfo` and the MySQL error log. If the huge page pool is too small, or MySQL cannot allocate huge pages for another reason, InnoDB can fall back to traditional memory and print `Warning: Using conventional memory pool.` to the MySQL error log. You might also see an allocation warning similar to `large_page_aligned_alloc mmap(... bytes) failed; errno 12`. +{{% /notice %}} + +You don't usually need to change other memory parameters unless you observe a specific issue. One optional area to test is [InnoDB buffer pool prefetching](https://dev.mysql.com/doc/refman/en/innodb-performance-read_ahead.html). Lowering [`innodb_read_ahead_threshold`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_read_ahead_threshold) from the default can help workloads with predictable sequential access patterns, while [`innodb_random_read_ahead`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_random_read_ahead) can help some workloads and hurt others. Treat these settings as workload-specific experiments. ### Disk flush behavior -``` -innodb_use_fdatasync=ON # Default is OFF prior to MySQL 8.4 +For MySQL versions earlier than 8.4, test `innodb_use_fdatasync`: + +```ini +innodb_use_fdatasync=ON ``` -Setting `innodb_use_fdatasync` to ON helps reduce the number of system calls that occur when flushing data to disk. Using `fdatasync` reduces flushing by not updating the meta data associated with files when those files are written to. For most use cases, this is acceptable. As of MySQL 8.4, this is now set to `ON` by default. If running an older version of `MySQL`, it is generally recommended to set this to `ON`. In fact, this is why it has been defaulted to `ON` in newer version of `MySQL`. +The [`innodb_use_fdatasync`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_use_fdatasync) parameter allows InnoDB to use `fdatasync()` instead of `fsync()` for operating systems and flush methods that support it. This can improve write performance because `fdatasync()` flushes file data without forcing unrelated metadata updates, such as timestamps to disk. Metadata required to retrieve the data is still flushed. In MySQL 8.4, this setting defaults to `ON`. -### Concurrency configuration +### Transaction durability settings -Increasing parallelism uses available resources more efficiently. It's always a good idea to look at parameters related to parallel execution. +Use the following settings when transaction durability and consistency are required (these are the default in MySQL 8.4+): +```ini +sync_binlog=1 +innodb_flush_log_at_trx_commit=1 ``` -innodb_io_capacity=10000 # Default is 200 prior to MySQL 8.4 and 10000 from 8.4 -innodb_io_capacity_max=20000 # Default is 2x innodb_io_capacity + +The [`sync_binlog`](https://dev.mysql.com/doc/refman/en/replication-options-binary-log.html#sysvar_sync_binlog) parameter controls how often MySQL synchronizes the binary log to disk. The [`innodb_flush_log_at_trx_commit`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_flush_log_at_trx_commit) parameter controls how InnoDB writes and flushes redo log records at transaction commit. + +When both settings are `1`, MySQL prioritizes transaction durability over peak write throughput. Relaxing either setting can reduce how often transactions wait for binary log and redo log data to be flushed to durable storage. This can improve parallel transaction execution and write throughput, especially on write-heavy workloads, but it increases the time window where committed transactions exist only in memory or operating system cache. + +{{% notice Warning %}} +Changing `sync_binlog` or `innodb_flush_log_at_trx_commit` away from `1` trades away transaction durability, which is part of ACID compliance. Values such as `sync_binlog=0`, `sync_binlog=N` where `N` is greater than `1`, or `innodb_flush_log_at_trx_commit=0` or `2` can lose committed transactions during a power failure, operating system crash, or unexpected MySQL exit. Change these settings only when your application and recovery process can tolerate potential transaction loss. +{{% /notice %}} + +### I/O capacity configuration + +Increasing parallelism can help InnoDB use available storage resources more efficiently. For older MySQL versions on SSD-backed or cloud storage, test values similar to the MySQL 8.4 defaults: + +```ini +innodb_io_capacity=10000 +innodb_io_capacity_max=20000 ``` -`innodb_io_capacity` tells the `InnoDB` storage engine how many IOPS it can issue to storage. Prior to `MySQL` 8.4, the default was 200 which is very low and more appropriate for rotational storage. Modern SSD storage and even cloud based storage can benefit greatly from increasing this value. As of `MySQL` 8.4, the default value has been increased to 10000. If you are using an older version of `MySQL` where this is defaulted to 200, it might benefit you to set this to 10000. See the [MySQL InnoDB I/O Capacity documentation](https://dev.mysql.com/doc/refman/en/innodb-configuring-io-capacity.html) for more. +The [`innodb_io_capacity`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_io_capacity) parameter tells InnoDB how many I/O operations per second it can issue to storage for background work. Before MySQL 8.4, the default was `200`, which is often too low for modern SSD and cloud storage. In MySQL 8.4, the default is `10000`. -`innodb_io_capacity_max` defaults to 2x of `innodb_io_capacity`. This should be ok for most use cases. +The [`innodb_io_capacity_max`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_io_capacity_max) parameter provides a higher limit for bursts of background work. It defaults to `2x` `innodb_io_capacity`. Use that relationship as a starting point, then adjust the values based on storage capability and measured performance. ### Spin lock configuration -``` -innodb_sync_spin_loops=120 # Default is 30 +Use the following setting as a starting point for testing lock polling behavior: + +```ini +innodb_sync_spin_loops=30 ``` -You should experiment with the `innodb_sync_spin_loops` parameter. This sets the number of times a thread checks for an `InnoDB` lock to be free before yielding execution to another thread. +The [`innodb_sync_spin_loops`](https://dev.mysql.com/doc/refman/en/innodb-parameters.html#sysvar_innodb_sync_spin_loops) parameter controls how many times a thread checks whether an InnoDB mutex is free before yielding execution to another thread. -Profiling `MySQL` under heavy load on Arm with Linux `perf` shows that `MySQL` spends a lot of time waiting for locks to be freed. Experimenting with tuning parameters around locks might help. Increasing the number of times a lock is checked before the thread yields can reduce context switching. This reduction in context switching tends to increase performance. Start with a value of 120 for `innodb_sync_spin_loops`, but you can also try values such as 30, 60, 180, and 240. See the [Configuring Spin Lock Polling](https://dev.mysql.com/doc/refman/en/innodb-performance-spin_lock_polling.html) for more. \ No newline at end of file +Profiling MySQL under heavy load on Arm with Linux `perf` can show time spent waiting for locks. Increasing `innodb_sync_spin_loops` can reduce context switching when locks are released quickly, but setting it too high can waste power and delay other useful work. Keep the default value, `30`, unless profiling and measured performance show that a different value helps. For more information, see the MySQL [Configuring Spin Lock Polling documentation](https://dev.mysql.com/doc/refman/en/innodb-performance-spin_lock_polling.html). From e7313e6b4007b096cdcf54aec1b371243636e6a3 Mon Sep 17 00:00:00 2001 From: Julio Suarez Date: Fri, 26 Jun 2026 15:20:38 -0500 Subject: [PATCH 2/2] Rename MySQL tuning image --- .../mysql_tune/before_and_after.md | 2 +- .../mysql_tune/{OOBvsTuned.png => oobvstuned.png} | Bin 2 files changed, 1 insertion(+), 1 deletion(-) rename content/learning-paths/servers-and-cloud-computing/mysql_tune/{OOBvsTuned.png => oobvstuned.png} (100%) diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md b/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md index b60a476b86..d8e0e829a4 100644 --- a/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md +++ b/content/learning-paths/servers-and-cloud-computing/mysql_tune/before_and_after.md @@ -23,7 +23,7 @@ Improved performance can give you higher throughput, lower latency, or better co The following example shows MySQL throughput with HammerDB TPROC-C before and after tuning on an Arm Neoverse V3 system. -![Bar chart comparing MySQL HammerDB TPROC-C normalized NOPM throughput before and after tuning on an Arm Neoverse V3 system. At 128 clients, the out-of-box configuration is 1.00 and the tuned configuration is 15.37.#center](OOBvsTuned.png "MySQL HammerDB TPROC-C throughput before and after tuning") +![Bar chart comparing MySQL HammerDB TPROC-C normalized NOPM throughput before and after tuning on an Arm Neoverse V3 system. At 128 clients, the out-of-box configuration is 1.00 and the tuned configuration is 15.37.#center](oobvstuned.png "MySQL HammerDB TPROC-C throughput before and after tuning") This benchmark result is an example, not a guaranteed improvement for every workload. Your results depend on the MySQL version, database size, storage device, memory capacity, client thread count, and the queries used in the test. diff --git a/content/learning-paths/servers-and-cloud-computing/mysql_tune/OOBvsTuned.png b/content/learning-paths/servers-and-cloud-computing/mysql_tune/oobvstuned.png similarity index 100% rename from content/learning-paths/servers-and-cloud-computing/mysql_tune/OOBvsTuned.png rename to content/learning-paths/servers-and-cloud-computing/mysql_tune/oobvstuned.png