From a1fdcd234c906f718aa08f069bbc55747585bd4b Mon Sep 17 00:00:00 2001 From: Alina Derkach Date: Tue, 25 Nov 2025 19:33:35 +0100 Subject: [PATCH] PS-10334 [DOCs] Add the plugin to open external links in a new tab modified: docs/adaptive-network-buffers.md modified: docs/added-features.md modified: docs/advisors.md modified: docs/aio-page-requests.md modified: docs/apt-download-deb.md modified: docs/apt-pinning.md modified: docs/apt-repo.md modified: docs/apt-run.md modified: docs/audit-log-filter-variables.md modified: docs/audit-log-plugin.md modified: docs/backup-restore-overview.md modified: docs/binary-tarball-install.md modified: docs/binary-tarball-names.md modified: docs/binlogging-replication-improvements.md modified: docs/changed-page-tracking.md modified: docs/compile-percona-server.md modified: docs/copyright-and-licensing-information.md modified: docs/data-at-rest-encryption.md modified: docs/data-loading.md modified: docs/data-masking-function-list.md modified: docs/data-masking-plugin-functions.md modified: docs/development.md modified: docs/differences.md modified: docs/docker.md modified: docs/downgrade.md modified: docs/download-instructions.md modified: docs/encrypting-doublewrite-buffers.md modified: docs/encrypting-tablespaces.md modified: docs/encryption-functions.md modified: docs/enforce-engine.md modified: docs/extended-show-grants.md modified: docs/faq.md modified: docs/feature-comparison.md modified: docs/fido-authentication-plugin.md modified: docs/gap-locks-detection.md modified: docs/get-help.md modified: docs/glossary.md modified: docs/group-replication-flow-control.md modified: docs/group-replication-system-variables.md modified: docs/improved-memory-engine.md modified: docs/improved-slow-query-log.md modified: docs/in-place-upgrade-guide.md modified: docs/index-info-schema-tables.md modified: docs/index.md modified: docs/innodb-corrupt-table-action.md modified: docs/innodb-expanded-fast-index-creation.md modified: docs/innodb-fragmentation-count.md modified: docs/innodb-fts-improvements.md modified: docs/innodb-io.md modified: docs/innodb-show-status.md modified: docs/install-data-masking-plugin.md modified: docs/install-myrocks.md modified: docs/jemalloc-profiling.md modified: docs/limitations.md modified: docs/myrocks-index.md modified: docs/myrocks-performance-schema-tables.md modified: docs/pam-plugin.md modified: docs/percona-release.md modified: docs/percona-sequence-table.md modified: docs/post-installation.md modified: docs/process-list.md modified: docs/procfs-plugin.md modified: docs/ps-versions-comparison.md modified: docs/query-limit-records.md modified: docs/quickstart-apt.md modified: docs/quickstart-dnf.md modified: docs/quickstart-next-steps.md modified: docs/quickstart-overview.md modified: docs/removing-tokudb.md modified: docs/reserved-words.md modified: docs/sequence-table.md modified: docs/server-version-numbers.md modified: docs/slowlog-rotation.md modified: docs/start-transaction-with-consistent-snapshot.md modified: docs/status-variables.md modified: docs/telemetry.md modified: docs/thread-based-profiling.md modified: docs/toku-backup.md modified: docs/tokudb-background-analyze-table.md modified: docs/tokudb-faq.md modified: docs/tokudb-installation.md modified: docs/tokudb-intro.md modified: docs/tokudb-performance-schema.md modified: docs/tokudb-troubleshooting.md modified: docs/tokudb-version-changes.md modified: docs/too-many-connections-mysql-warning.md.md modified: docs/trademark-policy.md modified: docs/trigger-updates.md modified: docs/udf-percona-toolkit.md modified: docs/upgrade-changes-deprecated.md modified: docs/upgrade-changes-removed.md modified: docs/upgrade-percona-repos.md modified: docs/upgrade-pt.md modified: docs/upgrade-standalone-packages.md modified: docs/upgrade.md modified: docs/using-amz-kms.md modified: docs/using-keyring-plugin.md modified: docs/using-kmip.md modified: docs/using-tokudb.md modified: docs/utility-user.md modified: docs/variables.md modified: docs/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md modified: docs/yum-download-rpm.md modified: docs/yum-repo.md modified: docs/yum-run.md modified: docs/zenfs.md modified: mkdocs-base.yml modified: requirements.txt --- docs/adaptive-network-buffers.md | 2 +- docs/added-features.md | 4 +-- docs/advisors.md | 6 ++-- docs/aio-page-requests.md | 8 ++--- docs/apt-download-deb.md | 2 +- docs/apt-pinning.md | 2 +- docs/apt-repo.md | 10 +++--- docs/apt-run.md | 2 +- docs/audit-log-filter-variables.md | 2 +- docs/audit-log-plugin.md | 10 +++--- docs/backup-restore-overview.md | 8 ++--- docs/binary-tarball-install.md | 2 +- docs/binary-tarball-names.md | 2 +- docs/binlogging-replication-improvements.md | 16 ++++----- docs/changed-page-tracking.md | 4 +-- docs/compile-percona-server.md | 2 +- docs/copyright-and-licensing-information.md | 2 +- docs/data-at-rest-encryption.md | 2 +- docs/data-loading.md | 4 +-- docs/data-masking-function-list.md | 2 +- docs/data-masking-plugin-functions.md | 2 +- docs/development.md | 2 +- docs/differences.md | 2 +- docs/docker.md | 10 +++--- docs/downgrade.md | 2 +- docs/download-instructions.md | 2 +- docs/encrypting-doublewrite-buffers.md | 4 +-- docs/encrypting-tablespaces.md | 4 +-- docs/encryption-functions.md | 2 +- docs/enforce-engine.md | 4 +-- docs/extended-show-grants.md | 2 +- docs/faq.md | 4 +-- docs/feature-comparison.md | 2 +- docs/fido-authentication-plugin.md | 8 ++--- docs/gap-locks-detection.md | 2 +- docs/get-help.md | 4 +-- docs/glossary.md | 4 +-- docs/group-replication-flow-control.md | 6 ++-- docs/group-replication-system-variables.md | 2 +- docs/improved-memory-engine.md | 4 +-- docs/improved-slow-query-log.md | 2 +- docs/in-place-upgrade-guide.md | 2 +- docs/index-info-schema-tables.md | 2 +- docs/index.md | 2 +- docs/innodb-corrupt-table-action.md | 2 +- docs/innodb-expanded-fast-index-creation.md | 4 +-- docs/innodb-fragmentation-count.md | 4 +-- docs/innodb-fts-improvements.md | 6 ++-- docs/innodb-io.md | 2 +- docs/innodb-show-status.md | 8 ++--- docs/install-data-masking-plugin.md | 2 +- docs/install-myrocks.md | 6 ++-- docs/jemalloc-profiling.md | 4 +-- docs/limitations.md | 34 +++++++++---------- docs/myrocks-index.md | 6 ++-- docs/myrocks-performance-schema-tables.md | 2 +- docs/pam-plugin.md | 6 ++-- docs/percona-release.md | 6 +--- docs/percona-sequence-table.md | 4 +-- docs/post-installation.md | 16 ++++----- docs/process-list.md | 4 +-- docs/procfs-plugin.md | 2 +- docs/ps-versions-comparison.md | 4 +-- docs/query-limit-records.md | 4 +-- docs/quickstart-apt.md | 5 +-- docs/quickstart-dnf.md | 4 +-- docs/quickstart-next-steps.md | 14 ++++---- docs/quickstart-overview.md | 9 ++--- docs/removing-tokudb.md | 2 +- docs/reserved-words.md | 4 +-- docs/sequence-table.md | 4 +-- docs/server-version-numbers.md | 4 +-- docs/slowlog-rotation.md | 2 +- ...rt-transaction-with-consistent-snapshot.md | 4 +-- docs/status-variables.md | 2 +- docs/telemetry.md | 2 +- docs/thread-based-profiling.md | 2 +- docs/toku-backup.md | 2 +- docs/tokudb-background-analyze-table.md | 2 +- docs/tokudb-faq.md | 6 ++-- docs/tokudb-installation.md | 8 ++--- docs/tokudb-intro.md | 2 +- docs/tokudb-performance-schema.md | 2 +- docs/tokudb-troubleshooting.md | 10 +++--- docs/tokudb-version-changes.md | 2 +- docs/too-many-connections-mysql-warning.md.md | 2 +- docs/trademark-policy.md | 2 +- docs/trigger-updates.md | 6 ++-- docs/udf-percona-toolkit.md | 2 +- docs/upgrade-changes-deprecated.md | 9 ++--- docs/upgrade-changes-removed.md | 4 +-- docs/upgrade-percona-repos.md | 2 +- docs/upgrade-pt.md | 10 +++--- docs/upgrade-standalone-packages.md | 4 +-- docs/upgrade.md | 26 +++++++------- docs/using-amz-kms.md | 10 +++--- docs/using-keyring-plugin.md | 14 ++++---- docs/using-kmip.md | 4 +-- docs/using-tokudb.md | 16 ++++----- docs/utility-user.md | 4 +-- docs/variables.md | 4 +-- ...ts-io-bound-highly-concurrent-workloads.md | 8 ++--- docs/yum-download-rpm.md | 6 ++-- docs/yum-repo.md | 11 +++--- docs/yum-run.md | 4 +-- docs/zenfs.md | 12 +++---- mkdocs-base.yml | 1 + requirements.txt | 6 ++-- 108 files changed, 268 insertions(+), 289 deletions(-) diff --git a/docs/adaptive-network-buffers.md b/docs/adaptive-network-buffers.md index 0109e31fdff..cc78ea9ddae 100644 --- a/docs/adaptive-network-buffers.md +++ b/docs/adaptive-network-buffers.md @@ -2,7 +2,7 @@ To find the buffer size of the current connection, use the `network_buffer_length` status variable. Add `SHOW GLOBAL` to review the cumulative buffer sizes for all connections. This variable can help to estimate the maximum size of the network buffer’s overhead. -Network buffers grow towards the [max_allowed_packet](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_allowed_packet) size and do not shrink until the connection is terminated. For example, if the connections are selected at random from the pool, an occasional big query eventually increases the buffers of all connections. The combination of max_allowed packet set to a value between 64MB to 128MB and the connection number between 256 to 1024 can create a large memory overhead. +Network buffers grow towards the [max_allowed_packet :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_allowed_packet) size and do not shrink until the connection is terminated. For example, if the connections are selected at random from the pool, an occasional big query eventually increases the buffers of all connections. The combination of max_allowed packet set to a value between 64MB to 128MB and the connection number between 256 to 1024 can create a large memory overhead. *Percona Server for MySQL* version 8.0.23-14 introduces the [net_buffer_shrink_interval](#net_buffer_shrink_interval) variable to solve this issue. The default value is 0 (zero). If you set the value higher than 0, Percona Server records the network buffer’s maximum use size for the number of seconds set by net_buffer_shrink_interval. When the next interval starts, the network buffer is set to the recorded size. This action removes spikes in the buffer size. diff --git a/docs/added-features.md b/docs/added-features.md index 31883623ae1..0ff8ced98cd 100644 --- a/docs/added-features.md +++ b/docs/added-features.md @@ -10,6 +10,6 @@ The following is a list of the latest supported features: * Using a global variable `rocksdb_cancel_manual_compactions` to cancel all ongoing manual compactions. -* **Percona Server for MySQL** 8.0.23-14 adds supported for [Generated Columns](https://dev.mysql.com/doc/refman/8.0/en/create-table-generated-columns.html) and index are supported. Generated columns are not supported in versions earlier than 8.0.23-14. +* **Percona Server for MySQL** 8.0.23-14 adds supported for [Generated Columns :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/create-table-generated-columns.html) and index are supported. Generated columns are not supported in versions earlier than 8.0.23-14. -* **Percona Server for MySQL** 8.0.23-14 adds support for [explicit DEFAULT value expressions](https://dev.mysql.com/doc/refman/8.0/en/data-type-defaults.html). From version 8.0.13-3 to version 8.0.22-13, MyRocks did not support these expressions. +* **Percona Server for MySQL** 8.0.23-14 adds support for [explicit DEFAULT value expressions :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/data-type-defaults.html). From version 8.0.13-3 to version 8.0.22-13, MyRocks did not support these expressions. diff --git a/docs/advisors.md b/docs/advisors.md index afc93e118f7..ce34d830106 100644 --- a/docs/advisors.md +++ b/docs/advisors.md @@ -1,11 +1,11 @@ # Use Percona Monitoring and Management (PMM) Advisors -[Percona Monitoring and Management (PMM)](https://www.percona.com/software/database-tools/percona-monitoring-and-management) provides several categories of Advisors. Each Advisor contains a set of automated checks. These checks investigate your database settings for a specific range of possible issues. +[Percona Monitoring and Management (PMM) :octicons-link-external-16:](https://www.percona.com/software/database-tools/percona-monitoring-and-management) provides several categories of Advisors. Each Advisor contains a set of automated checks. These checks investigate your database settings for a specific range of possible issues. -[The Percona Platform](https://www.percona.com/software/percona-platform) hosts the Advisors. +[The Percona Platform :octicons-link-external-16:](https://www.percona.com/software/percona-platform) hosts the Advisors. The PMM Server automatically downloads the Advisors if the `Advisors` and `Telemetry` options are enabled in `Configuration > Settings > Advanced Settings`. Both options are enabled by default. !!! admonition "See also" - [PMM documentation - Advisor checks](https://docs.percona.com/percona-platform/advisors.html) \ No newline at end of file + [PMM documentation - Advisor checks :octicons-link-external-16:](https://docs.percona.com/percona-platform/advisors.html) \ No newline at end of file diff --git a/docs/aio-page-requests.md b/docs/aio-page-requests.md index 434f4686710..18cb63ed3b7 100644 --- a/docs/aio-page-requests.md +++ b/docs/aio-page-requests.md @@ -4,9 +4,9 @@ The I/O unit size in *InnoDB* is only one page, even if the server doing read ah I/O unit size is too small for sequential reads, and less efficient than a larger I/O unit size. *InnoDB* uses Linux asynchronous I/O (`aio`) by default. By submitting multiple, consecutive 16KB read requests at the same time, Linux internally merges the requests and reads more efficiently. -This feature is able to submit multiple page I/O requests and works in the background. You can manage the feature with the [linear read-ahead technique](https://dev.mysql.com/doc/refman/8.0/en/innodb-performance-read_ahead.html). This technique adds pages to the buffer pool based on the buffer pool pages being accessed sequentially. The [`innodb_read_ahead_threshold`](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_read_ahead_threshold) configuration parameter controls this operation. +This feature is able to submit multiple page I/O requests and works in the background. You can manage the feature with the [linear read-ahead technique :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-performance-read_ahead.html). This technique adds pages to the buffer pool based on the buffer pool pages being accessed sequentially. The [`innodb_read_ahead_threshold` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_read_ahead_threshold) configuration parameter controls this operation. -[On a HDD RAID 1+0 environment](http://yoshinorimatsunobu.blogspot.hr/2013/10/making-full-table-scan-10x-faster-in.html), +[On a HDD RAID 1+0 environment :octicons-link-external-16:](http://yoshinorimatsunobu.blogspot.hr/2013/10/making-full-table-scan-10x-faster-in.html), more than 1000MB/s disk reads can be achieved by submitting 64 consecutive pages requests at once, while only 160MB/s disk reads is shown by submitting single page request. @@ -28,6 +28,6 @@ This variable shows the number of submitted buffered asynchronous I/O requests. ## Other reading -* [Making full table scan 10x faster in InnoDB](https://yoshinorimatsunobu.blogspot.hr/2013/10/making-full-table-scan-10x-faster-in.html) +* [Making full table scan 10x faster in InnoDB :octicons-link-external-16:](https://yoshinorimatsunobu.blogspot.hr/2013/10/making-full-table-scan-10x-faster-in.html) -* [Bug #68659 InnoDB Linux native aio should submit more i/o requests at once](https://bugs.mysql.com/bug.php?id=68659) +* [Bug #68659 InnoDB Linux native aio should submit more i/o requests at once :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=68659) diff --git a/docs/apt-download-deb.md b/docs/apt-download-deb.md index f600ef4d4dc..1e250f21902 100644 --- a/docs/apt-download-deb.md +++ b/docs/apt-download-deb.md @@ -10,7 +10,7 @@ When installing packages manually, you must resolve all the dependencies and ins * `libmecab2`. -Download the packages from [Percona Product Downloads](https://www.percona.com/downloads). If needed, [Instructions for the Percona Product Download](download-instructions.md) are available. +Download the packages from [Percona Product Downloads :octicons-link-external-16:](https://www.percona.com/downloads). If needed, [Instructions for the Percona Product Download](download-instructions.md) are available. 1. The following example uses `Wget` to download the Percona Server 8.0 bundle from the specified URL. The bundle is a tar archive containing the Percona Server 8.0.31-23 binary for Debian Buster (x86_64 architecture): diff --git a/docs/apt-pinning.md b/docs/apt-pinning.md index c0815c54336..741bc8b10b1 100644 --- a/docs/apt-pinning.md +++ b/docs/apt-pinning.md @@ -19,4 +19,4 @@ Pin-Priority: 1001 Save this file and update your package lists with `sudo apt update`. Finally, install Percona Server for MySQL 8.0 with `sudo apt install percona-server-server-8.0`, and apt will adhere to your pinning preferences. -For more information, see [debian wiki on AptConfiguration](https://wiki.debian.org/AptConfiguration?action=show&redirect=AptPreferences). +For more information, see [debian wiki on AptConfiguration :octicons-link-external-16:](https://wiki.debian.org/AptConfiguration?action=show&redirect=AptPreferences). diff --git a/docs/apt-repo.md b/docs/apt-repo.md index b6ef9f035bf..fb2e60864a6 100644 --- a/docs/apt-repo.md +++ b/docs/apt-repo.md @@ -1,9 +1,9 @@ # Use an APT repository to install Percona Server for MySQL 8.0 Ready-to-use packages are available from the Percona Server for MySQL software -repositories and the [Percona downloads](https://www.percona.com/downloads/Percona-Server-8.0/) page. +repositories and the [Percona downloads :octicons-link-external-16:](https://www.percona.com/downloads/Percona-Server-8.0/) page. -Specific information on the supported platforms, products, and versions is described in [Percona Software and Platform Lifecycle](https://www.percona.com/services/policies/percona-software-platform-lifecycle#mysql). +Specific information on the supported platforms, products, and versions is described in [Percona Software and Platform Lifecycle :octicons-link-external-16:](https://www.percona.com/services/policies/percona-software-platform-lifecycle#mysql). We gather [Telemetry data] in the Percona packages and Docker images. @@ -11,7 +11,7 @@ Review [Get more help](get-help.md) for ways that we can work with you. ## Version changes -Starting with [Percona Server 8.0.37-29](release-notes/8.0.37-29.md), the following operating systems on [Percona Software Download](https://www.percona.com/downloads) include ARM64 packages with the `arm64.deb` extension: +Starting with [Percona Server 8.0.37-29](release-notes/8.0.37-29.md), the following operating systems on [Percona Software Download :octicons-link-external-16:](https://www.percona.com/downloads) include ARM64 packages with the `arm64.deb` extension: * Debian GNU/Linux 12.0 @@ -80,12 +80,12 @@ Starting with [Percona Server 8.0.37-29](release-notes/8.0.37-29.md), the follow $ sudo apt install percona-server-server ``` -See [Configuring Percona repositories with `percona-release`](https://docs.percona.com/percona-software-repositories/percona-release.html) for more information. +See [Configuring Percona repositories with `percona-release` :octicons-link-external-16:](https://docs.percona.com/percona-software-repositories/percona-release.html) for more information. Starting with Percona Server for MySQL 8.0.28-19 (2022-05-12), the TokuDB storage engine is no longer supported. For more information, see the [TokuDB Introduction](tokudb-intro.md) and [TokuDB version changes](tokudb-version-changes.md). -Percona Server for MySQL contains user-defined functions from the [Percona Toolkit](https://docs.percona.com/percona-toolkit/). These user-defined functions provide faster checksums. For more details on the user-defined functions, see [Percona Toolkit UDF functions](udf-percona-toolkit.md). +Percona Server for MySQL contains user-defined functions from the [Percona Toolkit :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/). These user-defined functions provide faster checksums. For more details on the user-defined functions, see [Percona Toolkit UDF functions](udf-percona-toolkit.md). After the installation completes, run the following commands to create these functions: diff --git a/docs/apt-run.md b/docs/apt-run.md index 7ff90e3cf02..4cece5b6a09 100644 --- a/docs/apt-run.md +++ b/docs/apt-run.md @@ -30,7 +30,7 @@ Run the following commands as root or by using the sudo command !!! note - Debian 9.0 (stretch) and Ubuntu 18.04 LTS (bionic) come with [systemd](http://freedesktop.org/wiki/Software/systemd/) as the default system and service manager. You can invoke all the above commands with `systemctl` instead of `service`. Currently, both are supported. + Debian 9.0 (stretch) and Ubuntu 18.04 LTS (bionic) come with [systemd :octicons-link-external-16:](http://freedesktop.org/wiki/Software/systemd/) as the default system and service manager. You can invoke all the above commands with `systemctl` instead of `service`. Currently, both are supported. ## Working with AppArmor diff --git a/docs/audit-log-filter-variables.md b/docs/audit-log-filter-variables.md index 60d4ad070f0..e2cd40d9ab0 100644 --- a/docs/audit-log-filter-variables.md +++ b/docs/audit-log-filter-variables.md @@ -727,7 +727,7 @@ messages. The default value is "audit-filter". | Data type | String | | Default | LOG_INFO | -Defines the `priority` value for the syslog. The option has the same meaning as the appropriate parameter described in the [syslog(3) manual](https://man7.org/linux/man-pages/man3/syslog.3.html). +Defines the `priority` value for the syslog. The option has the same meaning as the appropriate parameter described in the [syslog(3) manual :octicons-link-external-16:](https://man7.org/linux/man-pages/man3/syslog.3.html). ## Performance and buffering diff --git a/docs/audit-log-plugin.md b/docs/audit-log-plugin.md index b56ac1a8df5..d4288fda963 100644 --- a/docs/audit-log-plugin.md +++ b/docs/audit-log-plugin.md @@ -2,7 +2,7 @@ Percona Audit Log Plugin provides monitoring and logging of connection and query activity that were performed on specific server. Information about the activity -is stored in a log file. This implementation is alternative to the [MySQL Enterprise Audit Log Plugin](https://dev.mysql.com/doc/refman/8.0/en/audit-log.html). +is stored in a log file. This implementation is alternative to the [MySQL Enterprise Audit Log Plugin :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/audit-log.html). ## Version specific information @@ -283,7 +283,7 @@ The audit Log plugin generates a log of following events. ## Stream the audit log to syslog -To stream the audit log to syslog you’ll need to set audit_log_handler variable to `SYSLOG`. To control the syslog file handler, the following variables can be used: audit_log_syslog_ident, audit_log_syslog_facility, and audit_log_syslog_priority These variables have the same meaning as appropriate parameters described in the [syslog(3) manual](https://man7.org/linux/man-pages/man3/syslog.3.html). +To stream the audit log to syslog you’ll need to set audit_log_handler variable to `SYSLOG`. To control the syslog file handler, the following variables can be used: audit_log_syslog_ident, audit_log_syslog_facility, and audit_log_syslog_priority These variables have the same meaning as appropriate parameters described in the [syslog(3) manual :octicons-link-external-16:](https://man7.org/linux/man-pages/man3/syslog.3.html). !!! note @@ -879,7 +879,7 @@ will be written to syslog. This variable is used to specify the `ident` value for syslog. This variable has the same meaning as the appropriate parameter described in the [syslog(3) -manual](https://man7.org/linux/man-pages/man3/syslog.3.html). +manual :octicons-link-external-16:](https://man7.org/linux/man-pages/man3/syslog.3.html). ### `audit_log_syslog_facility` @@ -893,7 +893,7 @@ manual](https://man7.org/linux/man-pages/man3/syslog.3.html). This variable is used to specify the `facility` value for syslog. This variable has the same meaning as the appropriate parameter described in the -[syslog(3) manual](https://man7.org/linux/man-pages/man3/syslog.3.html). +[syslog(3) manual :octicons-link-external-16:](https://man7.org/linux/man-pages/man3/syslog.3.html). ### `audit_log_syslog_priority` @@ -907,7 +907,7 @@ variable has the same meaning as the appropriate parameter described in the This variable is used to specify the `priority` value for syslog. This variable has the same meaning as the appropriate parameter described in the -[syslog(3) manual](https://man7.org/linux/man-pages/man3/syslog.3.html). +[syslog(3) manual :octicons-link-external-16:](https://man7.org/linux/man-pages/man3/syslog.3.html). ## Status Variables diff --git a/docs/backup-restore-overview.md b/docs/backup-restore-overview.md index 39c83929f3b..d95f963ec7a 100644 --- a/docs/backup-restore-overview.md +++ b/docs/backup-restore-overview.md @@ -61,10 +61,10 @@ If the server is stopped or down, you can copy the datadir with the `cp` command A logical backup contains the structural details. This type of backup contains tables, views, procedures, and functions. -Tools like [`mysqldump`](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) , -[`mydumper`](https://github.com/mydumper/mydumper), -[`mysqlpump`](https://dev.mysql.com/doc/refman/5.7/en/mysqlpump.html), and -[`mysql shell`](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-utilities-dump-instance-schema.html) +Tools like [`mysqldump` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) , +[`mydumper` :octicons-link-external-16:](https://github.com/mydumper/mydumper), +[`mysqlpump` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/5.7/en/mysqlpump.html), and +[`mysql shell` :octicons-link-external-16:](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-utilities-dump-instance-schema.html) take a logical backup. ### Comparison diff --git a/docs/binary-tarball-install.md b/docs/binary-tarball-install.md index 48f295a9153..da5f31a266e 100644 --- a/docs/binary-tarball-install.md +++ b/docs/binary-tarball-install.md @@ -4,7 +4,7 @@ A binary tarball contains a group of files, including the source code, bundled t See the list of the [binary tarball available based on the Percona Server for MySQL version](binary-tarball-names.md) to select the right tarball for your environment. -You can download the binary tarballs from the `Linux - Generic` [section](https://www.percona.com/downloads) on the download page. +You can download the binary tarballs from the `Linux - Generic` [section :octicons-link-external-16:](https://www.percona.com/downloads) on the download page. Fetch and extract the correct binary tarball. For example, for Debian 10: diff --git a/docs/binary-tarball-names.md b/docs/binary-tarball-names.md index 1afe6206161..8c1e60f5397 100644 --- a/docs/binary-tarball-names.md +++ b/docs/binary-tarball-names.md @@ -78,7 +78,7 @@ If the `glibc2` version from your operating system is not listed, then this Perc | Debian 11.1 | Able to run the ZenFS plugin | | Ubuntu 20.04.3 | Requires the 5.11 HWE kernel patched with the allow blk-zoned ioctls without CAPT_SYS_ADMIN patch | - If you do not enable the ZenFS functionality on Ubuntu 20.04, the binaries with ZenFS support can run on the standard 5.4 kernel. [Other Linux distributions](https://zonedstorage.io/docs/distributions/linux/) are adding support for ZenFS, but Percona does not provide installation packages for those distributions. + If you do not enable the ZenFS functionality on Ubuntu 20.04, the binaries with ZenFS support can run on the standard 5.4 kernel. [Other Linux distributions :octicons-link-external-16:](https://zonedstorage.io/docs/distributions/linux/) are adding support for ZenFS, but Percona does not provide installation packages for those distributions. === "8.0.20-11 to 8.0.25-17" diff --git a/docs/binlogging-replication-improvements.md b/docs/binlogging-replication-improvements.md index b64d2526883..0d359ebca6b 100644 --- a/docs/binlogging-replication-improvements.md +++ b/docs/binlogging-replication-improvements.md @@ -13,7 +13,7 @@ non-deterministic result or not, and switches from statement-based logging to row-based one. *Percona Server for MySQL* is more accurate, it acknowledges such instructions as safe when they include `ORDER BY PK` or `WHERE` condition. This fix has been ported from the upstream bug report -[#42415](https://bugs.mysql.com/bug.php?id=42415) ([#44](https://jira.percona.com/browse/PS-44)). +[#42415 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=42415) ([#44 :octicons-link-external-16:](https://jira.percona.com/browse/PS-44)). ## Performance improvement on relay log position update @@ -29,8 +29,8 @@ GTIDs. Particularly, such unconditional relay log position updates caused additional fsync operations in case of `relay-log-info-repository=TABLE`, and with the higher number of channels transmitting such duplicate (already executed) -transactions the situation became proportionally worse. Bug fixed [#1786](https://jira.percona.com/browse/PS-1786) -(upstream [#85141](https://bugs.mysql.com/bug.php?id=85141)). +transactions the situation became proportionally worse. Bug fixed [#1786 :octicons-link-external-16:](https://jira.percona.com/browse/PS-1786) +(upstream [#85141 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=85141)). ## Performance improvement on source and connection status updates @@ -51,8 +51,8 @@ Heartbeats sent to the replica to skip GTID events which it had already executed previously, were evaluated as relay log rotation events and reacted with `mysql.slave_master_info` table sync. This inaccuracy could produce huge (up to 5 times on some setups) increase in write load on the replica, before this -problem was fixed in *Percona Server for MySQL*. Bug fixed [#1812](https://jira.percona.com/browse/PS-1812) (upstream -[#85158](https://bugs.mysql.com/bug.php?id=85158)). +problem was fixed in *Percona Server for MySQL*. Bug fixed [#1812 :octicons-link-external-16:](https://jira.percona.com/browse/PS-1812) (upstream +[#85158 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=85158)). ## Write `FLUSH` commands to the binary log @@ -224,7 +224,7 @@ By configuring these settings, the MySQL client can handle data type conversions All functions returning timestamps return their values as microsecond precision UNIX time. In other words, they represent the number of microseconds since 1-JAN-1970. -All functions accepting a binlog name as a parameter accept only short names, without a path component. If the path separator ('/') is found in the input, an error is returned. This restriction serves the purpose of limiting the locations from which binlogs can be read. They are always read from the current binlog directory ([@@log_bin_basename system variable](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_log_bin_basename)). +All functions accepting a binlog name as a parameter accept only short names, without a path component. If the path separator ('/') is found in the input, an error is returned. This restriction serves the purpose of limiting the locations from which binlogs can be read. They are always read from the current binlog directory ([@@log_bin_basename system variable :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_log_bin_basename)). All functions returning binlog file names return the name in short form, without a path component. @@ -529,8 +529,8 @@ The query should return no rows if the plugin is successfully uninstalled. For the following variables, do not define values with one or more dot (.) characters: -* [log_bin](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#option_mysqld_log-bin) +* [log_bin :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#option_mysqld_log-bin) -* [log_bin_index](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#option_mysqld_log-bin-index) +* [log_bin_index :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#option_mysqld_log-bin-index) A value defined with these characters is handled differently in *MySQL* and Percona XtraBackup and can cause unpredictable behavior. diff --git a/docs/changed-page-tracking.md b/docs/changed-page-tracking.md index d8264936881..5c77ce04b66 100644 --- a/docs/changed-page-tracking.md +++ b/docs/changed-page-tracking.md @@ -6,9 +6,9 @@ Starting with Percona Server for MySQL 8.0.27, the page tracking feature is deprecated and may be removed in future versions. - We recommend using the MySQL page tracking feature. For more information, see [MySQL InnoDB Clone and page tracking](https://dev.mysql.com/blog-archive/innodb-clone-and-page-tracking/). + We recommend using the MySQL page tracking feature. For more information, see [MySQL InnoDB Clone and page tracking :octicons-link-external-16:(https://dev.mysql.com/blog-archive/innodb-clone-and-page-tracking/). -*XtraDB* now tracks the pages that have changes written to them according to the redo log. This information is written out in special changed page bitmap files. This information can be used to speed up incremental backups using [Percona XtraBackup](https://docs.percona.com/percona-xtrabackup/) by removing the need to scan whole data files to find the changed pages. Changed page tracking is done by a new *XtraDB* worker thread that reads and parses log records between checkpoints. The tracking is controlled by a new read-only server variable [innodb_track_changed_pages](#innodb_track_changed_pages). +*XtraDB* now tracks the pages that have changes written to them according to the redo log. This information is written out in special changed page bitmap files. This information can be used to speed up incremental backups using [Percona XtraBackup :octicons-link-external-16:](https://docs.percona.com/percona-xtrabackup/) by removing the need to scan whole data files to find the changed pages. Changed page tracking is done by a new *XtraDB* worker thread that reads and parses log records between checkpoints. The tracking is controlled by a new read-only server variable [innodb_track_changed_pages](#innodb_track_changed_pages). Bitmap filename format used for changed page tracking is `ib_modified_log__.xdb`. The first number is the sequence number of the bitmap log file and the *startlsn* number is the starting LSN number of data tracked in that file. Example of the bitmap log files should look like this: diff --git a/docs/compile-percona-server.md b/docs/compile-percona-server.md index 48125f55e25..af35c3920a1 100644 --- a/docs/compile-percona-server.md +++ b/docs/compile-percona-server.md @@ -4,7 +4,7 @@ The following instructions install Percona Server for MySQL 8.0. ## Install Percona Server for MySQL from the Git Source Tree -Percona uses the [Github](https://github.com/) revision +Percona uses the [Github :octicons-link-external-16:](https://github.com/) revision control system for development. To build the latest Percona Server for MySQL from the source tree, you will need `git` installed on your system. diff --git a/docs/copyright-and-licensing-information.md b/docs/copyright-and-licensing-information.md index 1d42d212be8..e7e9e45eb85 100644 --- a/docs/copyright-and-licensing-information.md +++ b/docs/copyright-and-licensing-information.md @@ -2,7 +2,7 @@ ## Documentation licensing -Percona Server for MySQL documentation is (C)2009-2025 Percona LLC and/or its affiliates and is distributed under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/). +Percona Server for MySQL documentation is (C)2009-2025 Percona LLC and/or its affiliates and is distributed under the [Creative Commons Attribution 4.0 International License :octicons-link-external-16:](https://creativecommons.org/licenses/by/4.0/). ## Software license diff --git a/docs/data-at-rest-encryption.md b/docs/data-at-rest-encryption.md index 41031aed4ee..5b13ae035d2 100644 --- a/docs/data-at-rest-encryption.md +++ b/docs/data-at-rest-encryption.md @@ -64,4 +64,4 @@ layer, added to the buffer pool, and used to access the data. A buffer pool page Percona XtraBackup version 8 supports the backup of encrypted general tablespaces. -Percona XtraBackup only supports features that are [Generally Available (GA)](glossary.md#general-availability-ga) in Percona Server for MySQL. Due to time constraints, GA features may be supported in a later Percona XtraBackup release. Review the [Percona XtraBackup release notes](https://docs.percona.com/percona-xtrabackup/8.0/release-notes.html) for more information. +Percona XtraBackup only supports features that are [Generally Available (GA)](glossary.md#general-availability-ga) in Percona Server for MySQL. Due to time constraints, GA features may be supported in a later Percona XtraBackup release. Review the [Percona XtraBackup release notes :octicons-link-external-16:](https://docs.percona.com/percona-xtrabackup/8.0/release-notes.html) for more information. diff --git a/docs/data-loading.md b/docs/data-loading.md index b9d21fde812..786c52050f5 100644 --- a/docs/data-loading.md +++ b/docs/data-loading.md @@ -125,6 +125,6 @@ If you are loading large data without enabling [rocksdb_bulk_load](variables.md# ## Other reading -* [Data Loading](https://github.com/facebook/mysql-5.6/wiki/Data-Loading) - this document has been used as a source for writing this documentation +* [Data Loading :octicons-link-external-16:](https://github.com/facebook/mysql-5.6/wiki/Data-Loading) - this document has been used as a source for writing this documentation -* [ALTER TABLE … ENGINE=ROCKSDB uses too much memory](https://github.com/facebook/mysql-5.6/issues/692) +* [ALTER TABLE … ENGINE=ROCKSDB uses too much memory :octicons-link-external-16:](https://github.com/facebook/mysql-5.6/issues/692) diff --git a/docs/data-masking-function-list.md b/docs/data-masking-function-list.md index 793afe84d6b..3fdcad68fc7 100644 --- a/docs/data-masking-function-list.md +++ b/docs/data-masking-function-list.md @@ -168,7 +168,7 @@ None. ### Returns -Returns a Canada SIN formatted in three groups of three digits (for example, 123-456-789) in the `utf8mb4` character set. To ensure the number is consistent, the number is verified with the [Luhn algorithm](https://en.wikipedia.org/wiki/Luhn_algorithm). +Returns a Canada SIN formatted in three groups of three digits (for example, 123-456-789) in the `utf8mb4` character set. To ensure the number is consistent, the number is verified with the [Luhn algorithm :octicons-link-external-16:](https://en.wikipedia.org/wiki/Luhn_algorithm). ### Example diff --git a/docs/data-masking-plugin-functions.md b/docs/data-masking-plugin-functions.md index 9ad58df27c3..664089d3ca3 100644 --- a/docs/data-masking-plugin-functions.md +++ b/docs/data-masking-plugin-functions.md @@ -300,7 +300,7 @@ Use a selected dictionary to generate random terms. The dictionary must be loade * Must contain at least one entry -Copy the dictionary files to a directory accessible to MySQL. Percona Server for MySQL* 8.0.21-12 enabled using the `secure-file-priv` option for gen_dictionary_load(). The [secure-file-priv](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_secure_file_priv) option defines the directories where gen_dictionary_load() loads the dictionary files. +Copy the dictionary files to a directory accessible to MySQL. Percona Server for MySQL* 8.0.21-12 enabled using the `secure-file-priv` option for gen_dictionary_load(). The [secure-file-priv :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_secure_file_priv) option defines the directories where gen_dictionary_load() loads the dictionary files. !!! note diff --git a/docs/development.md b/docs/development.md index 1303387e3e1..f33082819d2 100644 --- a/docs/development.md +++ b/docs/development.md @@ -11,7 +11,7 @@ any time and to minimize wasted time by developers due to broken code. ### Overview -At Percona we use [Git](https://git-scm.com) for source control, [GitHub](https://github.com/percona) for code hosting, and [Jira](https://jira.percona.com) for release management. +At Percona we use [Git :octicons-link-external-16:](https://git-scm.com) for source control, [GitHub :octicons-link-external-16:](https://github.com/percona) for code hosting, and [Jira :octicons-link-external-16:](https://jira.percona.com) for release management. We change our software to implement new features and/or to fix bugs. Refactoring could be classed either as a new feature or a bug depending on the scope of diff --git a/docs/differences.md b/docs/differences.md index cac2daa07d2..c7fa53da256 100644 --- a/docs/differences.md +++ b/docs/differences.md @@ -6,7 +6,7 @@ and works with their implementation of MySQL. and includes the following differences from the original implementation: * The behavior of the `START TRANSACTION WITH CONSISTENT SNAPSHOT` statement -depends on the [transaction isolation level](https://dev.mysql.com/doc/refman/5.7/en/innodb-transaction-isolation-levels.html). +depends on the [transaction isolation level :octicons-link-external-16:](https://dev.mysql.com/doc/refman/5.7/en/innodb-transaction-isolation-levels.html). | Storage Engine| Transaction isolation level | | | ------------- | --------------------------- | ---------------------------- | diff --git a/docs/docker.md b/docs/docker.md index 2410a828ec1..82f3d3f460f 100644 --- a/docs/docker.md +++ b/docs/docker.md @@ -34,11 +34,11 @@ For this document, container refers to the Docker container and instance refers Review [Get more help](get-help.md) for ways that we can work with you. -*Percona Server for MySQL* has an official Docker image hosted on [Docker Hub](https://hub.docker.com/r/percona/percona-server/). If you want the latest version, use the `latest` tag. You can reference a specific version using the [Docker tag filter for the 8.0 versions](https://registry.hub.docker.com/r/percona/percona-server/tags?page=1&name=8.0). +*Percona Server for MySQL* has an official Docker image hosted on [Docker Hub :octicons-link-external-16:](https://hub.docker.com/r/percona/percona-server/). If you want the latest version, use the `latest` tag. You can reference a specific version using the [Docker tag filter for the 8.0 versions :octicons-link-external-16:](https://registry.hub.docker.com/r/percona/percona-server/tags?page=1&name=8.0). We gather [Telemetry data] in the Percona packages and Docker images. -Make sure that you are using the latest version of Docker. The `apt` and `yum` versions may be outdated and cause errors. [Install Docker](https://docs.docker.com/get-docker/) on your system. +Make sure that you are using the latest version of Docker. The `apt` and `yum` versions may be outdated and cause errors. [Install Docker :octicons-link-external-16:](https://docs.docker.com/get-docker/) on your system. ## Starting a detached container @@ -97,7 +97,7 @@ You can access the server when you see the `ready for connections` information i ### Percona Server for MySQL ARM64 -Percona Server for MySQL is available in the ARM64 architecture. You can find the version and architecture on [Docker Hub Percona/Percona-Server Tags](https://hub.docker.com/r/percona/percona-server/tags). Docker Hub provides images for multiple OS/ARCH combinations, letting you select the version and architecture that aligns with your specific system. Docker Hub has two elements for identifying and managing container images: tags and OS/ARCH. +Percona Server for MySQL is available in the ARM64 architecture. You can find the version and architecture on [Docker Hub Percona/Percona-Server Tags :octicons-link-external-16:](https://hub.docker.com/r/percona/percona-server/tags). Docker Hub provides images for multiple OS/ARCH combinations, letting you select the version and architecture that aligns with your specific system. Docker Hub has two elements for identifying and managing container images: tags and OS/ARCH. Tags are labels attached to Docker images. The tag identifies the different versions of the same image. @@ -333,7 +333,7 @@ If you have a non-shell process running, interrupt the process with `CTRL-C` bef ## Stopping the container -The [docker stop](https://docs.docker.com/engine/reference/commandline/stop/) container command sends a TERM signal, then waits 10 seconds and sends a KILL signal. The following example stops the `ps` container: +The [docker stop :octicons-link-external-16:](https://docs.docker.com/engine/reference/commandline/stop/) container command sends a TERM signal, then waits 10 seconds and sends a KILL signal. The following example stops the `ps` container: ```{.bash data-prompt="$"} $ docker stop ps @@ -354,6 +354,6 @@ $ docker rm ps ``` ## For more information -Review the [Docker Docs](https://docs.docker.com/) +Review the [Docker Docs :octicons-link-external-16:](https://docs.docker.com/) [Telemetry data]: telemetry.md diff --git a/docs/downgrade.md b/docs/downgrade.md index 54eed1cfbce..82c143b9c5a 100644 --- a/docs/downgrade.md +++ b/docs/downgrade.md @@ -14,6 +14,6 @@ Before you [upgrade to the latest release](./upgrade.md), do the following: * Thoroughly test in a staging environment -[MySQL 8 Minor Version Upgrades Are ONE-WAY Only](https://www.percona.com/blog/2020/01/10/mysql-8-minor-version-upgrades-are-one-way-only/) +[MySQL 8 Minor Version Upgrades Are ONE-WAY Only :octicons-link-external-16:](https://www.percona.com/blog/2020/01/10/mysql-8-minor-version-upgrades-are-one-way-only/) Review [Get more help](get-help.md) for ways that we can work with you. \ No newline at end of file diff --git a/docs/download-instructions.md b/docs/download-instructions.md index c4be91ffd84..31b4f8a30b8 100644 --- a/docs/download-instructions.md +++ b/docs/download-instructions.md @@ -4,7 +4,7 @@ Do the following steps to select the software: -1. Open [Percona Product Downloads](https://www.percona.com/downloads) +1. Open [Percona Product Downloads :octicons-link-external-16:](https://www.percona.com/downloads) 2. Locate the Percona Software, for example, Percona Server for MySQL 3. In `Select Product`, select the which product, for example, Percona Server 8.0 4. In `Select Product Version`, select the version, for example, PERCONA-SERVER-8.0.31-23 diff --git a/docs/encrypting-doublewrite-buffers.md b/docs/encrypting-doublewrite-buffers.md index 4cc7ccbb724..0ecc40eba5f 100644 --- a/docs/encrypting-doublewrite-buffers.md +++ b/docs/encrypting-doublewrite-buffers.md @@ -4,8 +4,8 @@ A summary of Doublewrite buffer and Doublewrite buffer encryption changes: |_Percona Server for MySQL_ Versions| Doublewrite Buffer and Doublewrite Buffer Encryption Implementation| |---|---| -|Percona Server from Percona-Server-8.0.23-14|_MySQL_ 8.0.23 implemented its own version of [parallel doublewrite encryption](https://dev.mysql.com/doc/refman/8.0/en/innodb-data-encryption.html#innodb-doublewrite-file-encryption). Pages that belong to encrypted tablespaces are also written into the doublewrite buffer in an encrypted form. The Percona implementation was reverted and the[innodb_parallel_dblwr_encrypt](#innodb_parallel_dblwr_encrypt) is deprecated and may be removed in later releases. -|Percona Server from Percona-Server-8.0.20-11 to Percona-Server-8.0.22-13 inclusive|_MySQL_ 8.0.20 implemented its own [parallel doublewrite buffer](https://dev.mysql.com/doc/refman/8.0/en/innodb-doublewrite-buffer.html), which is stored in external files (#ib\_16384\_xxx.dblwr) and not stored in the system tablespace. Percona’s implementation was reverted. As a result, [innodb\_parallel\_doublewrite\_path](xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md#innodb_parallel_doublewrite_path) was deprecated.
However, _MySQL_ did not implement parallel doublewrite buffer encryption at this time, so Percona reimplemented parallel doublewrite buffer encryption on top of the _MySQL_ parallel doublewrite buffer implementation. Percona preserved the meaning and functionality of the [innodb\_parallel\_dblwr\_encrypt](#innodb_parallel_dblwr_encrypt) variable. | +|Percona Server from Percona-Server-8.0.23-14|_MySQL_ 8.0.23 implemented its own version of [parallel doublewrite encryption :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-data-encryption.html#innodb-doublewrite-file-encryption). Pages that belong to encrypted tablespaces are also written into the doublewrite buffer in an encrypted form. The Percona implementation was reverted and the[innodb_parallel_dblwr_encrypt](#innodb_parallel_dblwr_encrypt) is deprecated and may be removed in later releases. +|Percona Server from Percona-Server-8.0.20-11 to Percona-Server-8.0.22-13 inclusive|_MySQL_ 8.0.20 implemented its own [parallel doublewrite buffer :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-doublewrite-buffer.html), which is stored in external files (#ib\_16384\_xxx.dblwr) and not stored in the system tablespace. Percona’s implementation was reverted. As a result, [innodb\_parallel\_doublewrite\_path](xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md#innodb_parallel_doublewrite_path) was deprecated.
However, _MySQL_ did not implement parallel doublewrite buffer encryption at this time, so Percona reimplemented parallel doublewrite buffer encryption on top of the _MySQL_ parallel doublewrite buffer implementation. Percona preserved the meaning and functionality of the [innodb\_parallel\_dblwr\_encrypt](#innodb_parallel_dblwr_encrypt) variable. | |Percona-Server-8.0.12-1.alpha to Percona-Server-8.0.19-10 inclusive|_Percona Server for MySQL_ had its own implementation of the parallel doublewrite buffer which was enabled by setting the [innodb\_parallel\_doublewrite\_path](xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md#innodb_parallel_doublewrite_path) variable.
Enabling the [innodb\_parallel\_dblwr\_encrypt](#innodb_parallel_dblwr_encrypt) controlled whether the parallel doublewrite pages were encrypted or not. In case the parallel doublewrite buffer was disabled ([innodb\_parallel\_doublewrite\_path](xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md#innodb_parallel_doublewrite_path) was set to empty string),the doublewrite buffer pages were located in the system tablespace (ibdata1). The system tablespace itself could be encrypted by setting [innodb\_sys\_tablespace\_encrypt](encrypting-system-tablespace.md#innodb_sys_tablespace_encrypt), which also encrypted the doublewrite buffer pages.| For *Percona Server for MySQL* versions below *Percona Server for MySQL* version 8.0.23-14, *Percona* encrypts the `doublewrite buffer` using [innodb_parallel_dblwr_encrypt](#innodb_parallel_dblwr_encrypt). diff --git a/docs/encrypting-tablespaces.md b/docs/encrypting-tablespaces.md index 5adf729a174..0f1804a94d8 100644 --- a/docs/encrypting-tablespaces.md +++ b/docs/encrypting-tablespaces.md @@ -75,7 +75,7 @@ The variable has the following possible options: !!! admonition "See also" - [MySQL Documentation: default_table_encryption](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html) + [MySQL Documentation: default_table_encryption :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html) ### Merge-sort-encryption @@ -105,7 +105,7 @@ mysql> CREATE TABLESPACE tablespace_name ENCRYPTION='Y'; All tables contained in the tablespace are either encrypted or not encrypted. You cannot encrypt only some of the tables in a general tablespace. This -feature extends the [CREATE TABLESPACE](https://dev.mysql.com/doc/refman/8.0/en/create-tablespace.html) statement to +feature extends the [CREATE TABLESPACE :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/create-tablespace.html) statement to accept the `ENCRYPTION='Y/N'` option. !!! note diff --git a/docs/encryption-functions.md b/docs/encryption-functions.md index d735043cead..ab735a2ff48 100644 --- a/docs/encryption-functions.md +++ b/docs/encryption-functions.md @@ -675,7 +675,7 @@ If you don't pick one, the system checks the `encryption_udf.legacy_padding_sche #### Want to learn more? -Check out this article: [`Digital Signatures: Another layer of Data Protection in Percona Server for MySQL`](https://www.percona.com/blog/digital-signatures-another-layer-of-data-protection-in-percona-server-for-mysql/) +Check out this article: [`Digital Signatures: Another layer of Data Protection in Percona Server for MySQL` :octicons-link-external-16:](https://www.percona.com/blog/digital-signatures-another-layer-of-data-protection-in-percona-server-for-mysql/) ### Encryption_udf.rsa_bits_threshold diff --git a/docs/enforce-engine.md b/docs/enforce-engine.md index 2496a0a228d..46dcaf4c387 100644 --- a/docs/enforce-engine.md +++ b/docs/enforce-engine.md @@ -37,7 +37,7 @@ This variable is not case-sensitive. When `enforce_storage_engine` is set, the server enforces specfic rules for table creation. -If [`NO_ENGINE_SUBSTITUTION`](https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html#sqlmode_no_engine_substitution) SQL mode is enabled. +If [`NO_ENGINE_SUBSTITUTION` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html#sqlmode_no_engine_substitution) SQL mode is enabled. The server enforces strict storage engine rules during table creation. If you specify a storage engine that differs from the enforced engine, the server will do the following: @@ -45,7 +45,7 @@ The server enforces strict storage engine rules during table creation. If you sp * Does not create a table -If [`NO_ENGINE_SUBSTITUTION`](https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html#sqlmode_no_engine_substitution) SQL mode is disabled. +If [`NO_ENGINE_SUBSTITUTION` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html#sqlmode_no_engine_substitution) SQL mode is disabled. When you specify a storage engine that differs from the enforced engine, the server does the following: diff --git a/docs/extended-show-grants.md b/docs/extended-show-grants.md index c8435ab21bb..8a70643b532 100644 --- a/docs/extended-show-grants.md +++ b/docs/extended-show-grants.md @@ -112,4 +112,4 @@ mysql> SHOW EFFECTIVE GRANTS; ## Other reading -* [#53645](https://bugs.mysql.com/bug.php?id=53645) - `SHOW GRANTS` not displaying all the applicable grants +* [#53645 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=53645) - `SHOW GRANTS` not displaying all the applicable grants diff --git a/docs/faq.md b/docs/faq.md index c3cd796ad55..63950bfe494 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -10,7 +10,7 @@ Support team members that they have customers who use *Percona Server for MySQL* ## Q: Will we have to *GPL* our whole application if we use *Percona Server for MySQL* with *XtraDB*? A: This is a common misconception about the *GPL*. We suggest reading the *Free -Software Foundation* ‘s excellent reference material on the [GPL Version 2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html), which is the license +Software Foundation* ‘s excellent reference material on the [GPL Version 2 :octicons-link-external-16:](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html), which is the license that applies to *MySQL* and therefore to *Percona Server for MySQL* with *XtraDB*. That document contains links to many other documents which should answer your questions. *Percona* is unable to give legal advice about the *GPL*. @@ -27,6 +27,6 @@ be sure that the password for `debian-sys-maint` user has been updated and it’s the same as that user’s password from the server that the backup has been taken from. The password can be seen and updated in `/etc/mysql/debian.cnf`. For more information on how to set up a -replication replica using *Percona XtraBackup* see [this how-to](https://docs.percona.com/percona-xtrabackup/8.0/set-up-replication.html). +replication replica using *Percona XtraBackup* see [this how-to :octicons-link-external-16:](https://docs.percona.com/percona-xtrabackup/8.0/set-up-replication.html). diff --git a/docs/feature-comparison.md b/docs/feature-comparison.md index 1478db2e0af..eebd223d178 100644 --- a/docs/feature-comparison.md +++ b/docs/feature-comparison.md @@ -60,7 +60,7 @@ compared to the standard *MySQL* database server: | Contention-Aware Transaction Scheduling | Yes | Yes | | Improved Scalability By Splitting Mutexes | Yes | No | | [Improved MEMORY Storage Engine](improved-memory-engine.md) | Yes | No | -| [Improved Flushing](https://docs.percona.com/percona-server/8.0/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.html) | Yes | No | +| [Improved Flushing :octicons-link-external-16:](https://docs.percona.com/percona-server/8.0/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.html) | Yes | No | | Parallel Doublewrite Buffer | Yes | Yes | | [Configurable Fast Index Creation](innodb-expanded-fast-index-creation.md)) | Yes | No | | Per-Column Compression for VARCHAR/BLOB and JSON | Yes | No | diff --git a/docs/fido-authentication-plugin.md b/docs/fido-authentication-plugin.md index f23e79f5824..af9bb1dc917 100644 --- a/docs/fido-authentication-plugin.md +++ b/docs/fido-authentication-plugin.md @@ -23,11 +23,11 @@ The plugin and library file names are listed in the following table. ## Install the FIDO authentication plugin -The library file must be stored in the directory named by the [`plugin_dir`](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_plugin_dir) variable. +The library file must be stored in the directory named by the [`plugin_dir` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_plugin_dir) variable. === "At server startup" - At server startup, use the [`--plugin_load_add`](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_plugin-load-add) option with the library name. The option must be added each time the server starts. + At server startup, use the [`--plugin_load_add` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_plugin-load-add) option with the library name. The option must be added each time the server starts. === "Edit my.cnf and restart the server" @@ -47,7 +47,7 @@ The library file must be stored in the directory named by the [`plugin_dir`](htt ### Verify installation -Use the [`SHOW PLUGINS`](https://dev.mysql.com/doc/refman/8.0/en/show-plugins.html) statement or query the `INFORMATION_SCHEMA.PLUGINS` table to verify that the plugin was loaded successfully and is active. +Use the [`SHOW PLUGINS` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/show-plugins.html) statement or query the `INFORMATION_SCHEMA.PLUGINS` table to verify that the plugin was loaded successfully and is active. Check the server error log if the plugin is not loaded. @@ -77,7 +77,7 @@ If FIDO is used as the only method of authentication, the method does not use a The user creates an account with the `PASSWORDLESS_USER_ADMIN` privilege and the `CREATE USER` privilege. -The first element of the `authentication_policy` value must be an asterisk(*). Do not start with the plugin name. For information about configuring the `authentication policy` value, see [Configuring the Multifactor Authentication Policy](https://dev.mysql.com/doc/refman/8.0/en/multifactor-authentication.html#multifactor-authentication-policy). +The first element of the `authentication_policy` value must be an asterisk(*). Do not start with the plugin name. For information about configuring the `authentication policy` value, see [Configuring the Multifactor Authentication Policy :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/multifactor-authentication.html#multifactor-authentication-policy). You must include the `INITIAL AUTHENTICATION IDENTIFIED BY` clause in the `CREATE USER` statement. The server does accept the statement without the clause but the account is unusable because the user cannot connect to the server to register the device. diff --git a/docs/gap-locks-detection.md b/docs/gap-locks-detection.md index 5eb6e267745..a528489e201 100644 --- a/docs/gap-locks-detection.md +++ b/docs/gap-locks-detection.md @@ -1,6 +1,6 @@ # Gap locks detection -The [Gap locks](https://dev.mysql.com/doc/refman/8.0/en/innodb-locking.html#innodb-gap-locks) +The [Gap locks :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-locking.html#innodb-gap-locks) detection is based on a Facebook *MySQL* patch. If a transactional storage engine does not support gap locks (for example diff --git a/docs/get-help.md b/docs/get-help.md index dc3fbbf9617..42b74abab15 100644 --- a/docs/get-help.md +++ b/docs/get-help.md @@ -6,9 +6,9 @@ Our documentation guides are packed with information, but they can’t cover eve Be a part of a space where you can tap into a wealth of knowledge from other database enthusiasts and experts who work with Percona’s software every day. While our service is entirely free, keep in mind that response times can vary depending on the complexity of the question. You are engaging with people who genuinely love solving database challenges. -We recommend visiting our [Community Forum](https://forums.percona.com/t/welcome-to-perconas-community-forum/7){:target="_blank"}. It’s an excellent place for discussions, technical insights, and support around Percona database software. If you’re new and feeling a bit unsure, our [FAQ](https://forums.percona.com/faq){:target="_blank"} and [Guide for New Users](https://forums.percona.com/t/faq-guide-for-new-users/8562){:target="_blank"} ease you in. +We recommend visiting our [Community Forum :octicons-link-external-16:](https://forums.percona.com/t/welcome-to-perconas-community-forum/7). It’s an excellent place for discussions, technical insights, and support around Percona database software. If you’re new and feeling a bit unsure, our [FAQ :octicons-link-external-16:](https://forums.percona.com/faq) and [Guide for New Users :octicons-link-external-16:](https://forums.percona.com/t/faq-guide-for-new-users/8562) ease you in. -If you have thoughts, feedback, or ideas, the community team would like to hear from you at [Any ideas on how to make the forum better?](https://forums.percona.com/t/any-ideas-on-how-to-make-the-forum-better/11522){:target="blank"}. We’re always excited to connect and improve everyone's experience. +If you have thoughts, feedback, or ideas, the community team would like to hear from you at [Any ideas on how to make the forum better? :octicons-link-external-16:](https://forums.percona.com/t/any-ideas-on-how-to-make-the-forum-better/11522). We’re always excited to connect and improve everyone's experience. ## Percona experts diff --git a/docs/glossary.md b/docs/glossary.md index 13591ac8d71..9eb605bf7c9 100644 --- a/docs/glossary.md +++ b/docs/glossary.md @@ -71,7 +71,7 @@ A common file format used to store data in a human-readable and machine-readable ## Jenkins -[Jenkins](https://www.jenkins-ci.org) is a continuous integration system that we use to help ensure the continued quality of the software we produce. It helps us achieve the aims of: +[Jenkins :octicons-link-external-16:](https://www.jenkins-ci.org) is a continuous integration system that we use to help ensure the continued quality of the software we produce. It helps us achieve the aims of: * no failed tests in the trunk on any platform @@ -109,7 +109,7 @@ An open source database that has spawned several distributions and forks. MySQL ## NUMA -Non-Uniform Memory Access ([NUMA](https://en.wikipedia.org/wiki/Non-Uniform_Memory_Access)) is a computer memory design used in multiprocessing, where the memory access time depends on the memory location relative to a processor. Under NUMA, a processor can access its own local memory faster than non-local memory, that is, memory local to another processor or memory shared between processors. The whole system may still operate as one unit, and all memory is basically accessible from everywhere but at a potentially higher latency and lower performance. +Non-Uniform Memory Access ([NUMA :octicons-link-external-16:](https://en.wikipedia.org/wiki/Non-Uniform_Memory_Access)) is a computer memory design used in multiprocessing, where the memory access time depends on the memory location relative to a processor. Under NUMA, a processor can access its own local memory faster than non-local memory, that is, memory local to another processor or memory shared between processors. The whole system may still operate as one unit, and all memory is basically accessible from everywhere but at a potentially higher latency and lower performance. ## Percona Server for MySQL diff --git a/docs/group-replication-flow-control.md b/docs/group-replication-flow-control.md index 5f6ed4153e7..4eb98b1cf0f 100644 --- a/docs/group-replication-flow-control.md +++ b/docs/group-replication-flow-control.md @@ -11,8 +11,8 @@ Flow controls work asynchronously and depend on the following: The following system variables set flow control behavior for Group Replication: -* [group_replication_flow_control_mode](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_mode) -* [group_replication_flow_control_certifier_threshold](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_certifier_threshold) -* [group_replication_flow_control_applier_threshold](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_applier_threshold) +* [group_replication_flow_control_mode :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_mode) +* [group_replication_flow_control_certifier_threshold :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_certifier_threshold) +* [group_replication_flow_control_applier_threshold :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_applier_threshold) Flow control is enabled and disabled by selecting a value in the group_replication_flow_control_mode variable. Flow control can also be enabled on the certifier or applier level or both and sets the threshold level. diff --git a/docs/group-replication-system-variables.md b/docs/group-replication-system-variables.md index c53e31a72ed..63a4a38d7ee 100644 --- a/docs/group-replication-system-variables.md +++ b/docs/group-replication-system-variables.md @@ -78,7 +78,7 @@ The "MAJORITY" value is in [tech preview](glossary.md#tech-preview) mode. Before The variable specifies the mode use for flow control. -*Percona Server for MySQL* 8.0.30-22 adds the "MAJORITY" value to the [group_replication_flow_control_mode](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_mode) variable. In "MAJORITY" mode, [flow control](group-replication-flow-control.md) is activated only if the majority, more than half the number of members, exceed the flow control threshold. The other values are not changed. +*Percona Server for MySQL* 8.0.30-22 adds the "MAJORITY" value to the [group_replication_flow_control_mode :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_flow_control_mode) variable. In "MAJORITY" mode, [flow control](group-replication-flow-control.md) is activated only if the majority, more than half the number of members, exceed the flow control threshold. The other values are not changed. ## group_replication_xcom_ssl_accept_retries diff --git a/docs/improved-memory-engine.md b/docs/improved-memory-engine.md index 0793cda1045..46e80db7826 100644 --- a/docs/improved-memory-engine.md +++ b/docs/improved-memory-engine.md @@ -4,7 +4,7 @@ As of `MySQL` 5.5.15, a *Fixed Row Format* (`FRF`) is still being used in the `M To overcome this limitation, the *Improved MEMORY Storage Engine* is introduced in this release for supporting **true** `VARCHAR`, `VARBINARY`, `TEXT`, and `BLOB` fields in the `MEMORY` tables. -This implementation is based on the *Dynamic Row Format* (`DFR`) introduced by the [mysql-heap-dynamic-rows](https://code.google.com/p/mysql-heap-dynamic-rows/) patch. +This implementation is based on the *Dynamic Row Format* (`DFR`) introduced by the [mysql-heap-dynamic-rows :octicons-link-external-16:](https://code.google.com/p/mysql-heap-dynamic-rows/) patch. `DFR` is used to store column values in a variable-length form, thus helping to decrease the memory footprint of those columns and making possible `BLOB` and `TEXT` fields and real `VARCHAR` and `VARBINARY`. @@ -184,4 +184,4 @@ Total chunk length is always aligned to the next `sizeof(uchar\*)`. !!! admonition "See also" - [Dynamic row format for MEMORY tables](https://www.mysqlperformanceblog.com/2011/09/06/dynamic-row-format-for-memory-tables/) + [Dynamic row format for MEMORY tables :octicons-link-external-16:](https://www.mysqlperformanceblog.com/2011/09/06/dynamic-row-format-for-memory-tables/) diff --git a/docs/improved-slow-query-log.md b/docs/improved-slow-query-log.md index 5aa25e5f082..dd0499fb8a4 100644 --- a/docs/improved-slow-query-log.md +++ b/docs/improved-slow-query-log.md @@ -2,7 +2,7 @@ This feature adds microsecond time resolution and additional statistics to the slow query log output. It lets you turn the slow query log on or off at runtime, adds logging for the replica SQL thread, and adds fine-grained control over what and how much to log into the slow query log. -You can use the Percona Toolkit [pt-query-digest](https://docs.percona.com/percona-toolkit/pt-query-digest.html) tool to aggregate similar queries together and report on those that consume the most execution time. +You can use the Percona Toolkit [pt-query-digest :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/pt-query-digest.html) tool to aggregate similar queries together and report on those that consume the most execution time. ## Version specific information diff --git a/docs/in-place-upgrade-guide.md b/docs/in-place-upgrade-guide.md index c85f9197063..a9b2f9d036a 100644 --- a/docs/in-place-upgrade-guide.md +++ b/docs/in-place-upgrade-guide.md @@ -2,7 +2,7 @@ !!! important - An in-place upgrade is not recommended. Use a [replication upgrade](https://docs.percona.com/percona-xtradb-cluster/8.0/upgrade-guide.html). + An in-place upgrade is not recommended. Use a [replication upgrade :octicons-link-external-16:](https://docs.percona.com/percona-xtradb-cluster/8.0/upgrade-guide.html). An in-place upgrade involves shutting down the 5.7 server, and replacing the server binaries, or packages, with new ones. At this point the new server version can be started on the existing data directory. If the new version is less than 8.0.16, you should run `mysql_upgrade`. Note that the server should be configured to perform a slow shutdown by setting `innodb_fast_shutdown=0` prior to shutdown. While an in-place upgrade may not be suitable for all environments, especially those environments with many variables to consider, the upgrade should work in most cases. diff --git a/docs/index-info-schema-tables.md b/docs/index-info-schema-tables.md index 51073a4b3e0..4a7e407cae0 100644 --- a/docs/index-info-schema-tables.md +++ b/docs/index-info-schema-tables.md @@ -10,7 +10,7 @@ This is a list of the `INFORMATION_SCHEMA TABLES` that exist in *Percona Server * [PROCFS](procfs-plugin.md#procfs) -* [INFORMATION_SCHEMA.QUERY_RESPONSE_TIME](https://docs.percona.com/percona-server/5.7/diagnostics/response_time_distribution.html#query-response-time) +* [INFORMATION_SCHEMA.QUERY_RESPONSE_TIME :octicons-link-external-16:](https://docs.percona.com/percona-server/5.7/diagnostics/response_time_distribution.html#query-response-time) * [INFORMATION_SCHEMA.TABLE_STATISTICS](user-stats.md#information_schematable_statistics) diff --git a/docs/index.md b/docs/index.md index 84e4050b002..109a235af06 100644 --- a/docs/index.md +++ b/docs/index.md @@ -12,7 +12,7 @@ Thousands of enterprises trust Percona Server for MySQL to provide better perfor Percona Monitoring and Management (PMM )monitors and provides actionable performance data for MySQL variants, including Percona Server for MySQL, Percona XtraDB Cluster, Oracle MySQL Community Edition, Oracle MySQL Enterprise Edition, and MariaDB. PMM captures metrics and data for the InnoDB, XtraDB, and MyRocks storage engines, and has specialized dashboards for specific engine details. -[Get started with PMM](https://docs.percona.com/percona-monitoring-and-management/3/quickstart/quickstart.html) +[Get started with PMM :octicons-link-external-16:](https://docs.percona.com/percona-monitoring-and-management/3/quickstart/quickstart.html)
diff --git a/docs/innodb-corrupt-table-action.md b/docs/innodb-corrupt-table-action.md index f80a0c78026..3e9ade2669b 100644 --- a/docs/innodb-corrupt-table-action.md +++ b/docs/innodb-corrupt-table-action.md @@ -20,7 +20,7 @@ running in the background. If the innodb_force_recovery option is <4, corrupted pages are lost and the server may continue to run due to the innodb_corrupt_table_action variable having a non-default value. For more information about the innodb_force_recovery variable, -see [Forcing InnoDB Recovery](https://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html) +see [Forcing InnoDB Recovery :octicons-link-external-16:](https://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html) from the MySQL Reference Manual. This feature adds a new system variable. diff --git a/docs/innodb-expanded-fast-index-creation.md b/docs/innodb-expanded-fast-index-creation.md index 268f65ae133..e21523f9dcc 100644 --- a/docs/innodb-expanded-fast-index-creation.md +++ b/docs/innodb-expanded-fast-index-creation.md @@ -89,8 +89,8 @@ this case *InnoDB* picks such an index as the clustered one. !!! admonition "See also" - [Improved InnoDB fast index creation](https://www.mysqlperformanceblog.com/2011/11/06/improved-innodb-fast-index-creation/) + [Improved InnoDB fast index creation :octicons-link-external-16:](https://www.mysqlperformanceblog.com/2011/11/06/improved-innodb-fast-index-creation/) - [Thinking about running OPTIMIZE on your InnoDB Table? Stop!](https://www.mysqlperformanceblog.com/2010/12/09/thinking-about-running-optimize-on-your-innodb-table-stop/) + [Thinking about running OPTIMIZE on your InnoDB Table? Stop! :octicons-link-external-16:](https://www.mysqlperformanceblog.com/2010/12/09/thinking-about-running-optimize-on-your-innodb-table-stop/) diff --git a/docs/innodb-fragmentation-count.md b/docs/innodb-fragmentation-count.md index 0410dad8c88..908d2531ed2 100644 --- a/docs/innodb-fragmentation-count.md +++ b/docs/innodb-fragmentation-count.md @@ -73,6 +73,6 @@ This variable shows the total seek distance when moving between pages. ## Related reading -* [InnoDB: look after fragmentation](https://www.percona.com/blog/2009/11/05/innodb-look-after-fragmentation/) +* [InnoDB: look after fragmentation :octicons-link-external-16:](https://www.percona.com/blog/2009/11/05/innodb-look-after-fragmentation/) -* [Defragmenting a Table](https://dev.mysql.com/doc/refman/8.0/en/innodb-file-defragmenting.html) +* [Defragmenting a Table :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-file-defragmenting.html) diff --git a/docs/innodb-fts-improvements.md b/docs/innodb-fts-improvements.md index 321a3667ef6..1bd2c2cd998 100644 --- a/docs/innodb-fts-improvements.md +++ b/docs/innodb-fts-improvements.md @@ -2,7 +2,7 @@ ## Ignoring stopword list -By default, all Full-Text Search indexes check the [stopwords list](https://dev.mysql.com/doc/refman/8.0/en/fulltext-stopwords.html), to see if any indexed elements contain words on that list. +By default, all Full-Text Search indexes check the [stopwords list :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/fulltext-stopwords.html), to see if any indexed elements contain words on that list. Using this list for n-gram indexes isn’t always suitable, for example, any item that contains `a` or `i` will be ignored. Another word that can’t be @@ -16,8 +16,8 @@ To resolve this issue, *Percona Server for MySQL* has the Although this variable is introduced to resolve n-gram issues, it affects all Full-Text Search indexes as well. Being a stopword doesn’t just mean being one of the predefined -words from the list. Tokens shorter than [innodb_ft_min_token_size](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ft_min_token_size) -or longer than [innodb_ft_max_token_size](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ft_max_token_size) +words from the list. Tokens shorter than [innodb_ft_min_token_size :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ft_min_token_size) +or longer than [innodb_ft_max_token_size :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_ft_max_token_size) are also considered stopwords. Therefore, when innodb_ft_ignore_stopwords is set to `ON` even for non-ngram FTS, `innodb_ft_min_token_size` / `innodb_ft_max_token_size` will be diff --git a/docs/innodb-io.md b/docs/innodb-io.md index 1b1bb95402d..b9c949b8151 100644 --- a/docs/innodb-io.md +++ b/docs/innodb-io.md @@ -42,7 +42,7 @@ The following values are allowed: On an ext4 filesystem, set `innodb_log_write_ahead_size` to match the filesystem's write-ahead block size. This variable avoids `unaligned AIO/DIO` warnings. -Starting from *Percona Server for MySQL* 8.0.20-11, the [innodb_flush_method](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_flush_method) affects doublewrite buffers exactly the same as in *MySQL* 8.0.20. +Starting from *Percona Server for MySQL* 8.0.20-11, the [innodb_flush_method :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_flush_method) affects doublewrite buffers exactly the same as in *MySQL* 8.0.20. ## Status variables diff --git a/docs/innodb-show-status.md b/docs/innodb-show-status.md index 6b141488eeb..2586bbbb83b 100644 --- a/docs/innodb-show-status.md +++ b/docs/innodb-show-status.md @@ -13,7 +13,7 @@ This feature modified the `SHOW ENGINE INNODB STATUS` command as follows: ## Other information -* Author / Origin: Baron Schwartz, [https://lists.mysql.com/internals/35174](https://lists.mysql.com/internals/35174) +* Author / Origin: Baron Schwartz, [https://lists.mysql.com/internals/35174 :octicons-link-external-16:](https://lists.mysql.com/internals/35174) ## System variables @@ -364,7 +364,7 @@ buffer pool. | Data type | Numeric | This variable shows the total number of buffer pool pages which are considered -to be old according to the [Making the Buffer Pool Scan Resistant manual page](https://dev.mysql.com/doc/refman/8.0/en/innodb-performance-midpoint_insertion.html). +to be old according to the [Making the Buffer Pool Scan Resistant manual page :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-performance-midpoint_insertion.html). ### TRANSACTIONS @@ -467,6 +467,6 @@ InnoDB/XtraDB hash tables. ## Other reading -* [SHOW INNODB STATUS walk through](https://www.percona.com/blog/show-innodb-status-walk-through/) +* [SHOW INNODB STATUS walk through :octicons-link-external-16:](https://www.percona.com/blog/show-innodb-status-walk-through/) -* [Table locks in SHOW INNODB STATUS](https://www.percona.com/blog/table-locks-in-show-innodb-status/) +* [Table locks in SHOW INNODB STATUS :octicons-link-external-16:](https://www.percona.com/blog/table-locks-in-show-innodb-status/) diff --git a/docs/install-data-masking-plugin.md b/docs/install-data-masking-plugin.md index 2eb15d88ba6..6b05fb8d768 100644 --- a/docs/install-data-masking-plugin.md +++ b/docs/install-data-masking-plugin.md @@ -16,7 +16,7 @@ INSTALL PLUGIN data_masking SONAME 'data_masking.so'; ## Uninstall the plugin -Use the [UNINSTALL PLUGIN](https://dev.mysql.com/doc/refman/8.0/en/uninstall-plugin.html) statement and the [DROP FUNCTION](https://dev.mysql.com/doc/refman/8.0/en/drop-function.html) statement to disable and uninstall the plugin and then remove the functions. +Use the [UNINSTALL PLUGIN :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/uninstall-plugin.html) statement and the [DROP FUNCTION :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/drop-function.html) statement to disable and uninstall the plugin and then remove the functions. ```{.bash data-prompt="mysql>"} UNINSTALL PLUGIN data_masking; diff --git a/docs/install-myrocks.md b/docs/install-myrocks.md index ecea8a5138d..16183b132b9 100644 --- a/docs/install-myrocks.md +++ b/docs/install-myrocks.md @@ -15,7 +15,7 @@ plugin for *Percona Server for MySQL* 8.0 and later versions. It is recommended to install Percona software from official repositories: -1. Configure Percona repositories as described in [Percona Software Repositories Documentation](https://docs.percona.com/percona-software-repositories/index.html). +1. Configure Percona repositories as described in [Percona Software Repositories Documentation :octicons-link-external-16:](https://docs.percona.com/percona-software-repositories/index.html). 2. Install Percona MyRocks using the corresponding package manager: @@ -112,7 +112,7 @@ for every table that you create. ### Install MyRocks plugins -You can install MyRocks manually with a series of [INSTALL PLUGIN](https://dev.mysql.com/doc/refman/8.0/en/install-plugin.html) statements. You must have the `INSERT` privilege for the `mysql.plugin` system table. +You can install MyRocks manually with a series of [INSTALL PLUGIN :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/install-plugin.html) statements. You must have the `INSERT` privilege for the `mysql.plugin` system table. The following statements install MyRocks: @@ -183,7 +183,7 @@ and restart *Percona Server for MySQL*. ### Uninstall MyRocks plugins -You can [uninstall the plugins](https://dev.mysql.com/doc/refman/8.0/en/uninstall-plugin.html) for MyRocks. You must have the `DELETE` privilege for the `mysql.plugin` system table. +You can [uninstall the plugins :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/uninstall-plugin.html) for MyRocks. You must have the `DELETE` privilege for the `mysql.plugin` system table. The following statements remove the MyRocks plugins: diff --git a/docs/jemalloc-profiling.md b/docs/jemalloc-profiling.md index de4150b5f4c..580aae54713 100644 --- a/docs/jemalloc-profiling.md +++ b/docs/jemalloc-profiling.md @@ -141,13 +141,13 @@ dot -Tpng /tmp/jeprof1.dot > /tmp/jeprof1.png !!! note - An example of [allocation graph](https://github.com/jemalloc/jemalloc/wiki/Use-Case%3A-Leak-Checking). + An example of [allocation graph :octicons-link-external-16:](https://github.com/jemalloc/jemalloc/wiki/Use-Case%3A-Leak-Checking). ## PERFORMANCE_SCHEMA tables In 8.0.25.14, the following tables are implemented to retrieve memory allocation statistics for a running instance or return the cumulative number of allocations requested or allocations returned for a running instance. -More information about the stats that are returned can be found in [jemalloc](https://jemalloc.net/jemalloc.3.html). +More information about the stats that are returned can be found in [jemalloc :octicons-link-external-16:](https://jemalloc.net/jemalloc.3.html). ## malloc_stats_totals diff --git a/docs/limitations.md b/docs/limitations.md index e2a940006f2..5a580ef1ac2 100644 --- a/docs/limitations.md +++ b/docs/limitations.md @@ -2,7 +2,7 @@ ## Online DDL limitations -MyRocks has limited support for [Online DDL operations](https://dev.mysql.com/doc/refman/{{vers}}/en/innodb-online-ddl.html) due to the lack of [atomic DDL](./glossary.md#atomic-ddl-data-definition-language). As a result the schema changes are more restricted compared to InnoDB. +MyRocks has limited support for [Online DDL operations :octicons-link-external-16:](https://dev.mysql.com/doc/refman/{{vers}}/en/innodb-online-ddl.html) due to the lack of [atomic DDL](./glossary.md#atomic-ddl-data-definition-language). As a result the schema changes are more restricted compared to InnoDB. ### Traditional MyRocks DDL behavior @@ -58,29 +58,29 @@ If either condition is missing: ## Unsupported InnoDB features in MyRocks -* [ALTER TABLE .. EXCHANGE PARTITION](https://dev.mysql.com/doc/refman/8.0/en/partitioning-management-exchange.html). +* [ALTER TABLE .. EXCHANGE PARTITION :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/partitioning-management-exchange.html). -* [SAVEPOINT](https://dev.mysql.com/doc/refman/8.0/en/savepoint.html) +* [SAVEPOINT :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/savepoint.html) -* [Transportable tablespace](https://dev.mysql.com/doc/refman/8.0/en/innodb-table-import.html) +* [Transportable tablespace :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-table-import.html) -* [Foreign keys](https://dev.mysql.com/doc/refman/8.0/en/create-table-foreign-keys.html) +* [Foreign keys :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/create-table-foreign-keys.html) -* [Spatial indexes](https://dev.mysql.com/doc/refman/8.0/en/using-spatial-indexes.html) +* [Spatial indexes :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/using-spatial-indexes.html) -* [Fulltext indexes](https://dev.mysql.com/doc/refman/8.0/en/innodb-fulltext-index.html) +* [Fulltext indexes :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-fulltext-index.html) -* [Gap locks](https://dev.mysql.com/doc/refman/8.0/en/innodb-locking.html#innodb-gap-locks) +* [Gap locks :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-locking.html#innodb-gap-locks) -* [Group Replication](https://dev.mysql.com/doc/refman/8.0/en/group-replication.html) +* [Group Replication :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/group-replication.html) -* [Partial Update of LOB in InnoDB](https://dev.mysql.com/blog-archive/mysql-8-0-optimizing-small-partial-update-of-lob-in-innodb/) +* [Partial Update of LOB in InnoDB :octicons-link-external-16:](https://dev.mysql.com/blog-archive/mysql-8-0-optimizing-small-partial-update-of-lob-in-innodb/) You should also consider the following: * All collations are supported on ``CHAR`` and ``VARCHAR`` indexed columns. By default, MyRocks prevents creating indexes with non-binary collations (including `latin1`). You can optionally use it by setting [rocksdb_strict_collation_exceptions](variables.md#rocksdb_strict_collation_exceptions) to `t1` (table names with regex format), but non-binary covering indexes other than `latin1` (excluding `german1`) still require a primary key lookup to return the `CHAR` or `VARCHAR` column. -* Either `ORDER BY DESC` or `ORDER BY ASC` is slow. This is because of “Prefix Key Encoding” feature in RocksDB. See [https://www.slideshare.net/matsunobu/myrocks-deep-dive/58](https://www.slideshare.net/matsunobu/myrocks-deep-dive/58) for details. By default, ascending scan is faster and descending scan is slower. If the “reverse column family” is configured, then descending scan will be faster and ascending scan will be slower. Note that InnoDB also imposes a cost when the index is scanned in the opposite order. +* Either `ORDER BY DESC` or `ORDER BY ASC` is slow. This is because of “Prefix Key Encoding” feature in RocksDB. See [https://www.slideshare.net/matsunobu/myrocks-deep-dive/58 :octicons-link-external-16:](https://www.slideshare.net/matsunobu/myrocks-deep-dive/58) for details. By default, ascending scan is faster and descending scan is slower. If the “reverse column family” is configured, then descending scan will be faster and ascending scan will be slower. Note that InnoDB also imposes a cost when the index is scanned in the opposite order. * When converting from large MyISAM/InnoDB tables, either by using the `ALTER` or `INSERT INTO SELECT` statements it’s recommended that you check the [Data loading](data-loading.md#myrocks-data-loading) documentation and create MyRocks tables as below (in case the table is sufficiently big it will cause the server to consume all the memory and then be terminated by the OOM killer): @@ -106,7 +106,7 @@ You should also consider the following: !!! admonition "See also" - [MySQL Documentation: Preparing Your Installation for Upgrade](https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html) + [MySQL Documentation: Preparing Your Installation for Upgrade :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html) * **Percona Server for MySQL** 8.0 and Unicode 9.0.0 standards have defined a change in the handling of binary collations. These collations are handled as NO PAD, trailing spaces are included in key comparisons. A binary collation comparison may result in two unique rows inserted and does not generate a\`DUP_ENTRY\` error. MyRocks key encoding and comparison does not account for this character set attribute. @@ -114,13 +114,13 @@ You should also consider the following: MyRocks does not support the following: -* Operating as either a source or a replica in any replication topology that is not exclusively row-based. Statement-based and mixed-format binary logging is not supported. For more information, see [Replication Formats](https://dev.mysql.com/doc/refman/8.0/en/replication-formats.html). +* Operating as either a source or a replica in any replication topology that is not exclusively row-based. Statement-based and mixed-format binary logging is not supported. For more information, see [Replication Formats :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/replication-formats.html). -* Using [multi-valued indexes](https://dev.mysql.com/doc/refman/8.0/en/create-index.html#create-index-multi-valued). Implemented in **Percona Server for MySQL** 8.0.17, InnoDB supports this feature. +* Using [multi-valued indexes :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/create-index.html#create-index-multi-valued). Implemented in **Percona Server for MySQL** 8.0.17, InnoDB supports this feature. -* Using [spatial data types](https://dev.mysql.com/doc/refman/8.0/en/spatial-type-overview.html) . +* Using [spatial data types :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/spatial-type-overview.html) . -* Using the [Clone Plugin](https://dev.mysql.com/doc/refman/8.0/en/clone-plugin.html) and the Clone Plugin API. As of **Percona Server for MySQL** 8.0.17, InnoDB supports either these features. +* Using the [Clone Plugin :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/clone-plugin.html) and the Clone Plugin API. As of **Percona Server for MySQL** 8.0.17, InnoDB supports either these features. * Using encryption in tables. At this time, during an `ALTER TABLE` operation, MyRocks mistakenly detects all InnoDB tables as encrypted. Therefore, any attempt to `ALTER` an InnoDB table to MyRocks fails. @@ -134,5 +134,5 @@ MyRocks does not support the following: !!! note - With MyRocks and with large tables, it is recommended to set the session variable `rocksdb_bulk_load=1` during the load to prevent running out of memory. This recommendation is because of the MyRocks large transaction limitation. For more information, see [MyRocks Data Loading](https://docs.percona.com/percona-server/8.0/myrocks/data-loading.html) + With MyRocks and with large tables, it is recommended to set the session variable `rocksdb_bulk_load=1` during the load to prevent running out of memory. This recommendation is because of the MyRocks large transaction limitation. For more information, see [MyRocks Data Loading :octicons-link-external-16:](https://docs.percona.com/percona-server/8.0/myrocks/data-loading.html) diff --git a/docs/myrocks-index.md b/docs/myrocks-index.md index 837ca33571b..3653d351f09 100644 --- a/docs/myrocks-index.md +++ b/docs/myrocks-index.md @@ -1,10 +1,10 @@ # Percona MyRocks introduction -[MyRocks](https://myrocks.io) is a storage engine -for [MySQL](https://www.mysql.com) based on [RocksDB](https://rocksdb.org/), +[MyRocks :octicons-link-external-16:](https://myrocks.io) is a storage engine +for [MySQL :octicons-link-external-16:](https://www.mysql.com) based on [RocksDB :octicons-link-external-16:](https://rocksdb.org/), an embeddable, persistent key-value store. Percona MyRocks is an implementation -for [Percona Server for MySQL](https://www.percona.com/software/percona-server). +for [Percona Server for MySQL :octicons-link-external-16:](https://www.percona.com/software/percona-server). The RocksDB store is based on the log-structured merge-tree (or LSM tree). It is optimized for fast storage and combines outstanding diff --git a/docs/myrocks-performance-schema-tables.md b/docs/myrocks-performance-schema-tables.md index 08cf088518f..be4b6a5e6d5 100644 --- a/docs/myrocks-performance-schema-tables.md +++ b/docs/myrocks-performance-schema-tables.md @@ -1,7 +1,7 @@ # Performance Schema MyRocks changes RocksDB WAL file information can be seen in the -[performance_schema.log_status](https://dev.mysql.com/doc/refman/8.0/en/performance-schema-log-status-table.html) +[performance_schema.log_status :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/performance-schema-log-status-table.html) table in the `STORAGE ENGINE` column. This feature has been implemented in [Percona Server for MySQL 8.0.15-6](release-notes/Percona-Server-8.0.15-6.md). diff --git a/docs/pam-plugin.md b/docs/pam-plugin.md index 0c225beb710..67e1331aaa0 100644 --- a/docs/pam-plugin.md +++ b/docs/pam-plugin.md @@ -10,7 +10,7 @@ Here are some of the benefits that Percona dialog plugin offers over the default * It can use the password which is passed to *MySQL* client via “-p” parameter. -* Dialog client [installation bug](https://bugs.mysql.com/bug.php?id=60745) has been fixed. +* Dialog client [installation bug :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=60745) has been fixed. Percona offers two versions of this plugin: @@ -89,9 +89,9 @@ This feature enables using secondary groups in the mapping part of the authentic ## Known issues -Default mysql stack size is not enough to handle `pam_encryptfs` module. The workaround is to increase the *MySQL* stack size by setting the [thread-stack](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_stack) variable to at least `512KB` or by increasing the old value by `256KB`. +Default mysql stack size is not enough to handle `pam_encryptfs` module. The workaround is to increase the *MySQL* stack size by setting the [thread-stack :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_thread_stack) variable to at least `512KB` or by increasing the old value by `256KB`. -PAM authentication can fail with `mysqld: pam_unix(mysqld:account): Fork failed: Cannot allocate memory` error in the `/var/log/secure` even when there is enough memory available. Current workaround is to set [vm.overcommit_memory](https://www.kernel.org/doc/Documentation/vm/overcommit-accounting) to `1`: +PAM authentication can fail with `mysqld: pam_unix(mysqld:account): Fork failed: Cannot allocate memory` error in the `/var/log/secure` even when there is enough memory available. Current workaround is to set [vm.overcommit_memory :octicons-link-external-16:](https://www.kernel.org/doc/Documentation/vm/overcommit-accounting) to `1`: ```text echo 1 /proc/sys/vm/overcommit_memory diff --git a/docs/percona-release.md b/docs/percona-release.md index ed25ad6a8cc..dff71c9e2e1 100644 --- a/docs/percona-release.md +++ b/docs/percona-release.md @@ -1,6 +1,6 @@ # Use percona-release -A user of Percona Server for MySQL prioritizes efficiency and reliability. Installing the software directly offers a baseline solution, but for enhanced control, convenience, and security, use the [Percona Software repositories and the percona-release tool]. The percona-release tool method provides simplified, secure, and efficient Percona Server for MySQL installation and experience. +A user of Percona Server for MySQL prioritizes efficiency and reliability. Installing the software directly offers a baseline solution, but for enhanced control, convenience, and security, use the [Percona Software repositories and the percona-release tool :octicons-link-external-16:](https://docs.percona.com/percona-software-repositories/index.html). The percona-release tool method provides simplified, secure, and efficient Percona Server for MySQL installation and experience. ## Effortless Repository Management @@ -41,7 +41,3 @@ All packages within Percona repositories are digitally signed, further bolsterin Percona actively releases security updates for its software. By using percona-release, you gain access to these critical updates when they become available, helping you maintain a secure and stable database environment. - - - -[Percona Software repositories and the percona-release tool]: https://docs.percona.com/percona-software-repositories/index.html diff --git a/docs/percona-sequence-table.md b/docs/percona-sequence-table.md index b0d1bb4d646..76025433416 100644 --- a/docs/percona-sequence-table.md +++ b/docs/percona-sequence-table.md @@ -22,11 +22,11 @@ Percona Server for MySQL 8.0.20-11 introduced the `SEQUENCE_TABLE()` function. ## Table functions -The function is an inline table-valued function. This function creates a temporary table with multiple rows. You can use this function within a single SELECT statement. Oracle MySQL Server only has the `JSON_TABLE` table function. The Percona Server for MySQL has the `JSON_TABLE` and `PERCONA_SEQUENCE_TABLE()` table functions. A single SELECT statement generates a multi-row result set. In contrast, a scalar function (like [EXP(x)](https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html#function_exp) or [LOWER(str)](https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_lower) always returns a single value of a specific data type. +The function is an inline table-valued function. This function creates a temporary table with multiple rows. You can use this function within a single SELECT statement. Oracle MySQL Server only has the `JSON_TABLE` table function. The Percona Server for MySQL has the `JSON_TABLE` and `PERCONA_SEQUENCE_TABLE()` table functions. A single SELECT statement generates a multi-row result set. In contrast, a scalar function (like [EXP(x) :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html#function_exp) or [LOWER(str) :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_lower) always returns a single value of a specific data type. ## Syntax -As with any [derived tables](https://dev.mysql.com/doc/refman/8.0/en/derived-tables.html), a table function requires an [alias](https://dev.mysql.com/doc/refman/8.0/en/identifiers.html) in the `SELECT` statement. +As with any [derived tables :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/derived-tables.html), a table function requires an [alias :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/identifiers.html) in the `SELECT` statement. The result set is a single column with the predefined column name `value` of type `BIGINT UNSIGNED`. You can reference the `value` column in `SELECT` statements. The following statements are valid. Using `n` as the number of generated values, the following is the basic syntax: diff --git a/docs/post-installation.md b/docs/post-installation.md index e1c0a0d4159..ec4efc6c6e3 100644 --- a/docs/post-installation.md +++ b/docs/post-installation.md @@ -16,7 +16,7 @@ Depending on the type of installation, you may need to do the following tasks: If you install the server using either the source distribution or generic binary distribution files, the data directory is not initialized, and you must run the initialization process after installation. -Run mysqld with the [–initialize](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_initialize) option or the [initialize-insecure](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_initialize-insecure) option. +Run mysqld with the [–initialize :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_initialize) option or the [initialize-insecure :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_initialize-insecure) option. Executing `mysqld` with either option does the following: @@ -42,7 +42,7 @@ You should run the following steps with the `mysql` login. ``` -1. Create a directory for the MySQL files. The [secure_file_priv](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_secure_file_priv) uses the directory path as a value. +1. Create a directory for the MySQL files. The [secure_file_priv :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_secure_file_priv) uses the directory path as a value. ```{.bash data-prompt="$"} $ mkdir mydata @@ -72,9 +72,9 @@ You should run the following steps with the `mysql` login. After you have initialized the data directory, and the server is started, you can run tests on the server. -This section assumes you have used the default installation settings. If you have modified the installation, navigate to the installation location. You can also add the location by [Setting the Environment Variables](https://dev.mysql.com/doc/refman/8.0/en/setting-environment-variables.html). +This section assumes you have used the default installation settings. If you have modified the installation, navigate to the installation location. You can also add the location by [Setting the Environment Variables :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/setting-environment-variables.html). -You can use the [mysqladmin](https://dev.mysql.com/doc/refman/8.0/en/mysqladmin.html) client to access the server. +You can use the [mysqladmin :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysqladmin.html) client to access the server. If you have issues connecting to the server, use the `root` user and the root account password. @@ -98,7 +98,7 @@ $ sudo mysqladmin -u root -p version Open tables: 59 Queries per second avg: 0.0000 ``` -Use [mysqlshow](https://dev.mysql.com/doc/refman/8.0/en/mysqlshow.html) to display database and table information. +Use [mysqlshow :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysqlshow.html) to display database and table information. ```{.bash data-prompt="$"} $ sudo mysqlshow -u root -p @@ -193,7 +193,7 @@ $ mysql -u root -p ### Secure the server -The [mysql_secure_installation](https://dev.mysql.com/doc/refman/8.0/en/mysql-secure-installation.html) +The [mysql_secure_installation :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysql-secure-installation.html) script improves the security of the instance. The script does the following: @@ -243,12 +243,12 @@ If you install the server using either the source distribution or the generic binary distribution files, the installation creates the time zone tables, but the tables are not populated. -The [mysql_tzinfo_to_sql](https://dev.mysql.com/doc/refman/8.0/en/mysql-tzinfo-to-sql.html) program +The [mysql_tzinfo_to_sql :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysql-tzinfo-to-sql.html) program populates the tables from the `zoneinfo` directory data available in Linux. A common method to populate the tables is to add the zoneinfo directory path to `mysql_tzinfo_to_sql` and then send the output into -the [mysql system schema](https://dev.mysql.com/doc/refman/8.0/en/system-schema.html). +the [mysql system schema :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/system-schema.html). The example assumes you are running the command with the `root` account. The account must have the privileges for modifying the `mysql` diff --git a/docs/process-list.md b/docs/process-list.md index cc466613d21..8c6f9d69bb6 100644 --- a/docs/process-list.md +++ b/docs/process-list.md @@ -2,7 +2,7 @@ !!! note - MySQL 8.0.22 provides the Performance Schema [`processlist` table](https://dev.mysql.com/doc/refman/8.0/en/performance-schema-processlist-table.html) which can be directly queried. + MySQL 8.0.22 provides the Performance Schema [`processlist` table :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/performance-schema-processlist-table.html) which can be directly queried. This page describes Percona changes to both the standard *MySQL* `SHOW PROCESSLIST` command and the standard *MySQL* `INFORMATION_SCHEMA` table `PROCESSLIST`. @@ -33,7 +33,7 @@ This table implements modifications to the standard MySQL `INFORMATION_SCHEMA` t ## Example output -Table [PROCESSLIST](https://docs.percona.com/percona-server/8.0/process-list.html#processlist): +Table [PROCESSLIST :octicons-link-external-16:](https://docs.percona.com/percona-server/8.0/process-list.html#processlist): ```{.bash data-prompt="mysql>"} mysql> SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST; diff --git a/docs/procfs-plugin.md b/docs/procfs-plugin.md index 22a876f5ee3..3ee7ec6ef9b 100644 --- a/docs/procfs-plugin.md +++ b/docs/procfs-plugin.md @@ -44,7 +44,7 @@ GRANT ACCESS_PROCFS ON *.* TO 'user'@'host'; Authorized users can obtain information from individual files by specifying the exact file name within a WHERE clause. Files that are not included are ignored and considered not to exist. -All files that match the [procfs_files_spec](#procfs_files_spec) are opened, read, stored in memory, and, finally, returned to the client. It is critical to add a WHERE clause to return only specific files to limit the impact of the plugin on the server’s performance. A failure to use a WHERE clause can lead to lengthy query response times, high load, and high memory usage on the server. The WHERE clause can contain either an equality operator, the LIKE operator, or the IN operator. The LIKE operator limits file globbing. You can write file access patterns in the [glob(7) style](https://man7.org/linux/man-pages/man7/glob.7.html), such as `/sys/block/sd[a-z]/stat;/proc/version\*` +All files that match the [procfs_files_spec](#procfs_files_spec) are opened, read, stored in memory, and, finally, returned to the client. It is critical to add a WHERE clause to return only specific files to limit the impact of the plugin on the server’s performance. A failure to use a WHERE clause can lead to lengthy query response times, high load, and high memory usage on the server. The WHERE clause can contain either an equality operator, the LIKE operator, or the IN operator. The LIKE operator limits file globbing. You can write file access patterns in the [glob(7) style :octicons-link-external-16:](https://man7.org/linux/man-pages/man7/glob.7.html), such as `/sys/block/sd[a-z]/stat;/proc/version\*` The following example returns the `proc/version`: diff --git a/docs/ps-versions-comparison.md b/docs/ps-versions-comparison.md index 1b3b5c78f4e..ddc62aba56b 100644 --- a/docs/ps-versions-comparison.md +++ b/docs/ps-versions-comparison.md @@ -56,6 +56,6 @@ ## Other reading -* [What Is New in MySQL 5.7](https://dev.mysql.com/doc/refman/5.7/en/mysql-nutshell.html) +* [What Is New in MySQL 5.7 :octicons-link-external-16:](https://dev.mysql.com/doc/refman/5.7/en/mysql-nutshell.html) -* [What Is New in MySQL 8.0](https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html) +* [What Is New in MySQL 8.0 :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html) diff --git a/docs/query-limit-records.md b/docs/query-limit-records.md index 70dc13f35f5..9020a49f94d 100644 --- a/docs/query-limit-records.md +++ b/docs/query-limit-records.md @@ -10,7 +10,7 @@ partition. This process can result in more pages read and more disk I/O, if the buffer pool must fetch the pages from disk. This process increases the query time if there are a large number of partitions. -The addition of two variables makes it possible to override [records_in_range](https://dev.mysql.com/doc/internals/en/records-in-range.html) which +The addition of two variables makes it possible to override [records_in_range :octicons-link-external-16:](https://dev.mysql.com/doc/internals/en/records-in-range.html) which effectively bypasses the process. !!! warning @@ -75,7 +75,7 @@ In specific scenarios, the optimizer chooses to scan a table instead of using a * WHERE clause contains multiple range conditions -The [optimizer_switch](https://dev.mysql.com/doc/refman/8.0/en/switchable-optimizations.html) controls the optimizer behavior. The favor_range_scan switch arbitrarily lowers the cost of a range scan by a factor of 10. +The [optimizer_switch :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/switchable-optimizations.html) controls the optimizer behavior. The favor_range_scan switch arbitrarily lowers the cost of a range scan by a factor of 10. The available values are: diff --git a/docs/quickstart-apt.md b/docs/quickstart-apt.md index e014445bce5..060b0b00d91 100644 --- a/docs/quickstart-apt.md +++ b/docs/quickstart-apt.md @@ -567,12 +567,9 @@ mysql> SELECT id, name, email, country FROM employees WHERE id > 10; * Keep Software Updated: Maintain Percona Server and related packages updated with security patches. -* Monitor Server Activity: Employ tools, like [Percona Monitoring and Management], and logs to monitor server activity for suspicious behavior. +* Monitor Server Activity: Employ tools, like [Percona Monitoring and Management :octicons-link-external-16:](https://docs.percona.com/percona-monitoring-and-management), and logs to monitor server activity for suspicious behavior. ## Next step [Choose your next steps:material-arrow-right:](quickstart-next-steps.md){.md-button} - - -[Percona Monitoring and Management]: https://docs.percona.com/percona-monitoring-and-management diff --git a/docs/quickstart-dnf.md b/docs/quickstart-dnf.md index 96c35174401..7b84f088f26 100644 --- a/docs/quickstart-dnf.md +++ b/docs/quickstart-dnf.md @@ -438,7 +438,7 @@ MySQL startup: * Disable unused accounts and databases: Remove unnecessary elements. -* Monitor Server Activity: Employ tools, like [Percona Monitoring and Management], and logs to monitor server activity for suspicious behavior. +* Monitor Server Activity: Employ tools, like [Percona Monitoring and Management :octicons-link-external-16:](https://docs.percona.com/percona-monitoring-and-management/3/), and logs to monitor server activity for suspicious behavior. * Backup data regularly: Ensure robust backups for disaster recovery. @@ -545,6 +545,4 @@ $ sudo mysql_secure_installation [Choose your next steps:material-arrow-right:](quickstart-next-steps.md){.md-button} - -[Percona Monitoring and Management]: https://docs.percona.com/percona-monitoring-and-management/3/ [Percona repositories]: percona-release.md diff --git a/docs/quickstart-next-steps.md b/docs/quickstart-next-steps.md index 278f06a3e5e..79403a5ce69 100644 --- a/docs/quickstart-next-steps.md +++ b/docs/quickstart-next-steps.md @@ -30,36 +30,36 @@ Review the [Percona Server for MySQL documentation](index.md) for more informati Percona XtraBackup (PXB) is a 100% open source backup solution for all versions of Percona Server for MySQL and MySQL® that performs online non-blocking, tightly compressed, highly secure full backups on transactional systems. Maintain fully available applications during planned maintenance windows with Percona XtraBackup. -[Install Percona XtraBackup](https://docs.percona.com/percona-xtrabackup/8.0/installation.html) +[Install Percona XtraBackup :octicons-link-external-16:](https://docs.percona.com/percona-xtrabackup/8.0/installation.html) ### For monitoring and management Percona Monitoring and Management (PMM )monitors and provides actionable performance data for MySQL variants, including Percona Server for MySQL, Percona XtraDB Cluster, Oracle MySQL Community Edition, Oracle MySQL Enterprise Edition, and MariaDB. PMM captures metrics and data for the InnoDB, XtraDB, and MyRocks storage engines, and has specialized dashboards for specific engine details. -[Install PMM and connect your MySQL instances to it](https://docs.percona.com/percona-monitoring-and-management/get-started/index.html). +[Install PMM and connect your MySQL instances to it :octicons-link-external-16:](https://docs.percona.com/percona-monitoring-and-management/get-started/index.html). ### For high availability Percona XtraDB Cluster (PXC) is a 100% open source, enterprise-grade, highly available clustering solution for MySQL multi-master setups based on Galera. PXC helps enterprises minimize unexpected downtime and data loss, reduce costs, and improve the performance and scalability of their database environments, supporting their critical business applications in the most demanding public, private, and hybrid cloud environments. -[Percona XtraDB Cluster Quick Start guide](https://docs.percona.com/percona-xtradb-cluster/8.0/quickstart-overview.html) +[Percona XtraDB Cluster Quick Start guide :octicons-link-external-16:](https://docs.percona.com/percona-xtradb-cluster/8.0/quickstart-overview.html) ### Advanced command-line tools Percona Toolkit is a collection of advanced command-line tools used by the Percona support staff to perform various MySQL, MongoDB, and system tasks that are complex or difficult to perform manually. These tools are ideal alternatives to “one-off” scripts because they are professionally developed, formally tested, and documented. Each tool is self-contained, so installation is quick and easy and does not install libraries. -[Percona Toolkit documentation](https://docs.percona.com/percona-toolkit/) +[Percona Toolkit documentation :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/) ### Operators Percona Operator for MySQL and Percona Operator for MySQL based on Percona XtraDB Cluster are tools designed to simplify the deployment, management, and scaling of MySQL and Percona XtraDB Cluster (PXC) instances in Kubernetes environments. These operators automate various database tasks such as backups, recovery, and updates, ensuring high availability and reliability. They provide robust features like automated failover, self-healing, and seamless scaling, which help maintain optimal database performance and reduce manual intervention. By leveraging Kubernetes' orchestration capabilities, these operators enhance the efficiency and resilience of MySQL and PXC deployments, making them well-suited for modern cloud-native applications. -[Percona Operator for MySQL Documentation](https://docs.percona.com/percona-operator-for-mysql/ps/) +[Percona Operator for MySQL Documentation :octicons-link-external-16:](https://docs.percona.com/percona-operator-for-mysql/ps/) -[Percona Operator for MySQL based on Percona XtraDB Cluster](https://docs.percona.com/percona-operator-for-mysql/pxc/) +[Percona Operator for MySQL based on Percona XtraDB Cluster :octicons-link-external-16:](https://docs.percona.com/percona-operator-for-mysql/pxc/) ### Cloud-native database services Percona Everest is an open-source cloud-native database platform that helps developers deploy code faster, scale deployments rapidly, and reduce database administration overhead while regaining control over their data, database configuration, and DBaaS costs. -[Percona Everest](https://docs.percona.com/everest/index.html) \ No newline at end of file +[Percona Everest :octicons-link-external-16:](https://docs.percona.com/everest/index.html) \ No newline at end of file diff --git a/docs/quickstart-overview.md b/docs/quickstart-overview.md index 188e854fd71..25a08e47476 100644 --- a/docs/quickstart-overview.md +++ b/docs/quickstart-overview.md @@ -16,7 +16,8 @@ You can also do the following: * [Download and install Percona Server for MySQL packages for your operating system](installation.md) -* Work with [the Quickstart for the Percona Operator for MySQL based on the Percona Server for MySQL using Helm] or [the Quickstart for the Percona Operator for MySQL based on the Percona Server for MySQL using Minikube] to find out more about the Percona Operator. +* Work with [the Quickstart for the Percona Operator for MySQL based on the Percona Server for MySQL using Helm :octicons-link-external-16:](https://docs.percona.com/percona-operator-for-mysql/ps/helm.html) or [the Quickstart for the Percona Operator for MySQL based on the Percona Server for MySQL using Minikube :octicons-link-external-16:](https://docs.percona.com/percona-operator-for-mysql/ps/minikube.html +) to find out more about the Percona Operator. ## Steps for first-time users @@ -34,8 +35,4 @@ The following guides walk you through the setup process and working with a datab [Install using DNF:material-arrow-right:](quickstart-dnf.md){.md-button} [Choose your next steps:material-arrow-right:](quickstart-next-steps.md){.md-button} - - -[the Quickstart for the Percona Operator for MySQL based on the Percona Server for MySQL using Helm]: https://docs.percona.com/percona-operator-for-mysql/ps/helm.html - -[the Quickstart for the Percona Operator for MySQL based on the Percona Server for MySQL using Minikube]: https://docs.percona.com/percona-operator-for-mysql/ps/minikube.html + \ No newline at end of file diff --git a/docs/removing-tokudb.md b/docs/removing-tokudb.md index b91e6a8db42..2b39921f6a6 100644 --- a/docs/removing-tokudb.md +++ b/docs/removing-tokudb.md @@ -4,7 +4,7 @@ Starting with Percona Server for MySQL 8.0.28-19 (2022-05-12), the TokuDB storag ## Migrate to MyRocks -To migrate data use the [mysqldump](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) client utility or the tools in the [MySQL Workbench](https://dev.mysql.com/downloads/workbench/) to dump and restore the database. +To migrate data use the [mysqldump :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) client utility or the tools in the [MySQL Workbench :octicons-link-external-16:](https://dev.mysql.com/downloads/workbench/) to dump and restore the database. We recommended migrating to the MyRocks storage engine. Follow these steps to migrate the data: diff --git a/docs/reserved-words.md b/docs/reserved-words.md index 80a6412c93d..c2f3e62b36b 100644 --- a/docs/reserved-words.md +++ b/docs/reserved-words.md @@ -1,6 +1,6 @@ # Reserved keywords -Percona uses reserved keywords, which define or manipulate a function or feature of the database. Add these words to the [MySQL reserved keyword list] when using Percona Server for MySQL. +Percona uses reserved keywords, which define or manipulate a function or feature of the database. Add these words to the [MySQL reserved keyword list :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/keywords.html) when using Percona Server for MySQL. If you must use a reserved keyword as an identifier, enclose the word in a set of backtick (`) symbols. @@ -15,5 +15,3 @@ The following is a list of Percona-specific reserved keywords: * TABLE_STATISTICS * THREAD_STATISTICS * USER_STATISTICS - -[MySQL reserved keyword list]: https://dev.mysql.com/doc/refman/8.0/en/keywords.html \ No newline at end of file diff --git a/docs/sequence-table.md b/docs/sequence-table.md index fb07c48ab17..36e2be2e92a 100644 --- a/docs/sequence-table.md +++ b/docs/sequence-table.md @@ -22,11 +22,11 @@ Percona Server for MySQL 8.0.20-11 introduced the `SEQUENCE_TABLE()` function. ## Table functions -The function is an inline table-valued function. This function creates a temporary table with multiple rows. You can use this function within a single SELECT statement. Oracle MySQL Server only has the `JSON_TABLE` table function. The Percona Server for MySQL has the `JSON_TABLE` and `SEQUENCE_TABLE()` table functions. A single SELECT statement generates a multi-row result set. In contrast, a scalar function (like [EXP(x)](https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html#function_exp) or [LOWER(str)](https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_lower) always returns a single value of a specific data type. +The function is an inline table-valued function. This function creates a temporary table with multiple rows. You can use this function within a single SELECT statement. Oracle MySQL Server only has the `JSON_TABLE` table function. The Percona Server for MySQL has the `JSON_TABLE` and `SEQUENCE_TABLE()` table functions. A single SELECT statement generates a multi-row result set. In contrast, a scalar function (like [EXP(x) :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html#function_exp) or [LOWER(str) :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_lower) always returns a single value of a specific data type. ## Syntax -As with any [derived tables](https://dev.mysql.com/doc/refman/8.0/en/derived-tables.html), a table function requires an [alias](https://dev.mysql.com/doc/refman/8.0/en/identifiers.html) in the `SELECT` statement. +As with any [derived tables :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/derived-tables.html), a table function requires an [alias :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/identifiers.html) in the `SELECT` statement. The result set is a single column with the predefined column name `value` of type `BIGINT UNSIGNED`. You can reference the `value` column in `SELECT` statements. The following statements are valid. Using `n` as the number of generated values, the following is the basic syntax: diff --git a/docs/server-version-numbers.md b/docs/server-version-numbers.md index 2b4aac44d4e..783d5ac15a5 100644 --- a/docs/server-version-numbers.md +++ b/docs/server-version-numbers.md @@ -6,11 +6,11 @@ A version number identifies the product release. The product contains the latest |---|---|---| | Base version | Minor build version | Custom build | -Percona uses semantic version numbering, which follows the pattern of base version, minor build version, and an optional custom build. Percona assigns unique, non-negative integers in increasing order for each minor build release. The version number combines the base [MySQL 8.0](https://dev.mysql.com/doc/relnotes/mysql/8.0/en/) version number, the minor build version, and the custom build version, if needed. +Percona uses semantic version numbering, which follows the pattern of base version, minor build version, and an optional custom build. Percona assigns unique, non-negative integers in increasing order for each minor build release. The version number combines the base [MySQL 8.0 :octicons-link-external-16:](https://dev.mysql.com/doc/relnotes/mysql/8.0/en/) version number, the minor build version, and the custom build version, if needed. For example, the version numbers for Percona Server for MySQL 8.0.29-21.2 define the following information: -* Base version - the leftmost numbers indicate [MySQL 8.0](https://dev.mysql.com/doc/relnotes/mysql/8.0/en/) version used as a base. +* Base version - the leftmost numbers indicate [MySQL 8.0 :octicons-link-external-16:](https://dev.mysql.com/doc/relnotes/mysql/8.0/en/) version used as a base. * Minor build version - an internal number that increases by one every time Percona Server for MySQL is released. diff --git a/docs/slowlog-rotation.md b/docs/slowlog-rotation.md index 1a6fb5a1868..ceb8455d76c 100644 --- a/docs/slowlog-rotation.md +++ b/docs/slowlog-rotation.md @@ -6,7 +6,7 @@ This feature was implemented in *Percona Server for MySQL* 8.0.27-18. -Percona has implemented two new variables, `max_slowlog_size` and `max_slowlog_files` to provide users with ability to control the slow query log disk usage. These variables have the same behavior as the [max_binlog_size variable](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_max_binlog_size) and the [max_binlog_files variable](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_max_binlog_size) used for controlling the binary log. +Percona has implemented two new variables, `max_slowlog_size` and `max_slowlog_files` to provide users with ability to control the slow query log disk usage. These variables have the same behavior as the [max_binlog_size variable :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_max_binlog_size) and the [max_binlog_files variable :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_max_binlog_size) used for controlling the binary log. ## System variables diff --git a/docs/start-transaction-with-consistent-snapshot.md b/docs/start-transaction-with-consistent-snapshot.md index 72a7466834d..aa0bb31d978 100644 --- a/docs/start-transaction-with-consistent-snapshot.md +++ b/docs/start-transaction-with-consistent-snapshot.md @@ -1,6 +1,6 @@ # Start transaction with consistent snapshot -*Percona Server for MySQL* has ported *MariaDB* [enhancement](https://mariadb.com/docs/server/ha-and-performance/standard-replication/enhancements-for-start-transaction-with-consistent-snapshot/) for `START TRANSACTION WITH CONSISTENT SNAPSHOTS` feature to *MySQL* 5.6 group commit implementation. This enhancement makes binary log positions consistent with *InnoDB* transaction snapshots. +*Percona Server for MySQL* has ported *MariaDB* [enhancement :octicons-link-external-16:](https://mariadb.com/docs/server/ha-and-performance/standard-replication/enhancements-for-start-transaction-with-consistent-snapshot/) for `START TRANSACTION WITH CONSISTENT SNAPSHOTS` feature to *MySQL* 5.6 group commit implementation. This enhancement makes binary log positions consistent with *InnoDB* transaction snapshots. This feature is quite useful to obtain logical backups with correct positions without running a `FLUSH TABLES WITH READ LOCK`. Binary log position can be obtained by two newly implemented status variables: [Binlog_snapshot_file](#binlog_snapshot_file) and [Binlog_snapshot_position](#binlog_snapshot_position). After starting a transaction using the `START TRANSACTION WITH CONSISTENT SNAPSHOT`, these two variables will provide you with the binlog position corresponding to the state of the database of the consistent snapshot so taken, irrespectively of which other transactions have been committed since the snapshot was taken. @@ -65,4 +65,4 @@ These status variables are only available when the binary log is enabled globall ## Other reading -* [MariaDB Enhancements for START TRANSACTION WITH CONSISTENT SNAPSHOT](https://mariadb.com/docs/server/ha-and-performance/standard-replication/enhancements-for-start-transaction-with-consistent-snapshot/) +* [MariaDB Enhancements for START TRANSACTION WITH CONSISTENT SNAPSHOT :octicons-link-external-16:](https://mariadb.com/docs/server/ha-and-performance/standard-replication/enhancements-for-start-transaction-with-consistent-snapshot/) diff --git a/docs/status-variables.md b/docs/status-variables.md index 038f1552a08..34c908b3a20 100644 --- a/docs/status-variables.md +++ b/docs/status-variables.md @@ -489,7 +489,7 @@ database. ### `rocksdb_rate_limit_delay_millis` -This variable was removed in *Percona Server for MySQL* [Percona Server 5.7.23-23](https://docs.percona.com/percona-server/5.7/release-notes/Percona-Server-5.7.23-23.html#id1). +This variable was removed in *Percona Server for MySQL* [Percona Server 5.7.23-23 :octicons-link-external-16:](https://docs.percona.com/percona-server/5.7/release-notes/Percona-Server-5.7.23-23.html#id1). ### `rocksdb_row_lock_deadlocks` diff --git a/docs/telemetry.md b/docs/telemetry.md index cb4db9b399a..e710ca2f336 100644 --- a/docs/telemetry.md +++ b/docs/telemetry.md @@ -10,7 +10,7 @@ By understanding these types of telemetry systems and their respective features, You control whether to share this information. The program is optional. You can disable either or both telemetry systems if you don't want to share anonymous data. -Percona protects your privacy. They don't gather personal information. All collected data is anonymous, preventing the identification of individual users or servers. Our [Percona Privacy policy](https://www.percona.com/privacy-policy) provides more details on data handling. +Percona protects your privacy. They don't gather personal information. All collected data is anonymous, preventing the identification of individual users or servers. Our [Percona Privacy policy :octicons-link-external-16:](https://www.percona.com/privacy-policy) provides more details on data handling. Percona includes the telemetry systems only in software packages, compressed archives (tarballs), and Docker images. diff --git a/docs/thread-based-profiling.md b/docs/thread-based-profiling.md index d3d87f740ee..5a6376fc206 100644 --- a/docs/thread-based-profiling.md +++ b/docs/thread-based-profiling.md @@ -6,6 +6,6 @@ * 8.0.12-1: The feature was ported from *Percona Server for MySQL* 5.7. -Thread based profiling is using the information provided by the kernel [getrusage](https://kernel.org/doc/man-pages/online/pages/man2/getrusage.2.html) function. Since the 2.6.26 kernel version, thread based resource usage is available with the **RUSAGE_THREAD**. This means that the thread based profiling will be used if you’re running the 2.6.26 kernel or newer, or if the **RUSAGE_THREAD** has been ported back. +Thread based profiling is using the information provided by the kernel [getrusage :octicons-link-external-16:](https://kernel.org/doc/man-pages/online/pages/man2/getrusage.2.html) function. Since the 2.6.26 kernel version, thread based resource usage is available with the **RUSAGE_THREAD**. This means that the thread based profiling will be used if you’re running the 2.6.26 kernel or newer, or if the **RUSAGE_THREAD** has been ported back. This feature is enabled by default if your system supports it, in other cases it uses process based profiling. diff --git a/docs/toku-backup.md b/docs/toku-backup.md index cfb1799ca41..49aa5bd177a 100644 --- a/docs/toku-backup.md +++ b/docs/toku-backup.md @@ -302,7 +302,7 @@ bin/mysql -uroot -e "set tokudb_backup_dir='$backup_dir'" * *TokuBackup* does not backup tablespaces if they are out of datadir. -* Due to upstream bug [#80183](https://bugs.mysql.com/bug.php?id=80183), *TokuBackup* can’t recover backed-up table data if backup was taken while running `OPTIMIZE TABLE` or `ALTER TABLE ... TABLESPACE`. +* Due to upstream bug [#80183 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=80183), *TokuBackup* can’t recover backed-up table data if backup was taken while running `OPTIMIZE TABLE` or `ALTER TABLE ... TABLESPACE`. * *TokuBackup* doesn’t support incremental backups. diff --git a/docs/tokudb-background-analyze-table.md b/docs/tokudb-background-analyze-table.md index f922db5d537..5e50a3da34f 100644 --- a/docs/tokudb-background-analyze-table.md +++ b/docs/tokudb-background-analyze-table.md @@ -7,7 +7,7 @@ Starting with Percona Server for MySQL 8.0.28-19 (2022-05-12), the TokuDB storag ## Background Jobs -Background jobs and schedule are transient in nature and are not persisted anywhere. Any currently running job will be terminated on shutdown and all scheduled jobs will be forgotten about on server restart. There can’t be two jobs on the same table scheduled or running at any one point in time. If you manually invoke an `ANALYZE TABLE` that conflicts with either a pending or running job, the running job will be canceled and the users task will run immediately in the foreground. All the scheduled and running background jobs can be viewed by querying the [TOKUDB_BACKGROUND_JOB_STATUS](https://docs.percona.com/percona-server/8.0/tokudb-background-analyze-table.html#tokudb-background-job-status) table. +Background jobs and schedule are transient in nature and are not persisted anywhere. Any currently running job will be terminated on shutdown and all scheduled jobs will be forgotten about on server restart. There can’t be two jobs on the same table scheduled or running at any one point in time. If you manually invoke an `ANALYZE TABLE` that conflicts with either a pending or running job, the running job will be canceled and the users task will run immediately in the foreground. All the scheduled and running background jobs can be viewed by querying the [TOKUDB_BACKGROUND_JOB_STATUS :octicons-link-external-16:](https://docs.percona.com/percona-server/8.0/tokudb-background-analyze-table.html#tokudb-background-job-status) table. New tokudb_analyze_in_background variable has been implemented in order to control if the `ANALYZE TABLE` will be dispatched to the background process or if it will be running in the foreground. To control the function of `ANALYZE TABLE` a new tokudb_analyze_mode variable has been implemented. This variable offers options to cancel any running or scheduled job on the specified table (`TOKUDB_ANALYZE_CANCEL`), use existing analysis algorithm (`TOKUDB_ANALYZE_STANDARD`), or to recount the logical rows in table and update persistent count (`TOKUDB_ANALYZE_RECOUNT_ROWS`). diff --git a/docs/tokudb-faq.md b/docs/tokudb-faq.md index 04cc7aee1c3..7e0d3d75704 100644 --- a/docs/tokudb-faq.md +++ b/docs/tokudb-faq.md @@ -153,7 +153,7 @@ When *MySQL* is shut down, a copy of the *MySQL* data directory, the *TokuDB* da ### Hot Backup using mylvmbackup -The **mylvmbackup** utility, located on [Launchpad](https://launchpad.net/), works with *TokuDB*. It does all of the magic required to get consistent copies of all of the *MySQL* tables, including *MyISAM* tables, *InnoDB* tables, etc., creates the LVM snapshots, and backs up the snapshots. +The **mylvmbackup** utility, located on [Launchpad :octicons-link-external-16:](https://launchpad.net/), works with *TokuDB*. It does all of the magic required to get consistent copies of all of the *MySQL* tables, including *MyISAM* tables, *InnoDB* tables, etc., creates the LVM snapshots, and backs up the snapshots. ### Logical Snapshots @@ -203,7 +203,7 @@ The maximum row size is 32 MiB. ### Can the data directories reside on a disk that is NFS or CIFS mounted? -Yes, we do have customers in production with NFS & CIFS volumes today. However, both of these disk types can pose a challenge to performance and data integrity due to their complexity. If you’re seeking performance, the switching infrastructure and protocols of a traditional network were not conceptualized for low response times and can be very difficult to troubleshoot. If you’re concerned with data integrity, the possible data caching at the NFS level can cause inconsistencies between the logs and data files that may never be detected in the event of a crash. If you are thinking of using a NFS or CIFS mount, we would recommend that you use synchronous mount options, which are available from the NFS mount man page, but these settings may decrease performance. For further discussion please look [here](https://www.percona.com/blog/storing-mysql-binary-logs-on-nfs-volume/). +Yes, we do have customers in production with NFS & CIFS volumes today. However, both of these disk types can pose a challenge to performance and data integrity due to their complexity. If you’re seeking performance, the switching infrastructure and protocols of a traditional network were not conceptualized for low response times and can be very difficult to troubleshoot. If you’re concerned with data integrity, the possible data caching at the NFS level can cause inconsistencies between the logs and data files that may never be detected in the event of a crash. If you are thinking of using a NFS or CIFS mount, we would recommend that you use synchronous mount options, which are available from the NFS mount man page, but these settings may decrease performance. For further discussion please look [here :octicons-link-external-16:](https://www.percona.com/blog/storing-mysql-binary-logs-on-nfs-volume/). ## Using Other Storage Engines @@ -215,7 +215,7 @@ Yes, we do have customers in production with NFS & CIFS volumes today. However, The Federated Storage Engine can also be used, however it is disabled by default in *MySQL*. It can be enabled by either running mysqld with `--federated` as a command line parameter, or by putting `federated` in the `[mysqld]` section of the `my.cnf` file. -For more information see the *MySQL* 8.0 Reference Manual: [FEDERATED Storage Engine](https://dev.mysql.com/doc/refman/8.0/en/federated-storage-engine.html). +For more information see the *MySQL* 8.0 Reference Manual: [FEDERATED Storage Engine :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/federated-storage-engine.html). ## Using MySQL Patches with TokuDB diff --git a/docs/tokudb-installation.md b/docs/tokudb-installation.md index 90b0680d639..29a27e5942f 100644 --- a/docs/tokudb-installation.md +++ b/docs/tokudb-installation.md @@ -12,11 +12,11 @@ engine that provides indexing-based query improvements, offers online schema modifications, and reduces replica lag for both hard disk drives and flash memory. This storage engine is specifically designed for high performance on write-intensive workloads which is achieved with Fractal Tree indexing. To learn -more about Fractal Tree indexing, you can visit the following [Wikipedia page](https://en.wikipedia.org/wiki/Fractal_tree_index). +more about Fractal Tree indexing, you can visit the following [Wikipedia page :octicons-link-external-16:](https://en.wikipedia.org/wiki/Fractal_tree_index). !!! warning - Only the [Percona supplied](https://www.percona.com/downloads/Percona-Server-8.0/LATEST/) *TokuDB* engine should be used with *Percona Server for MySQL* 8.0. A *TokuDB* engine downloaded from other sources is not compatible. *TokuDB* file formats are not the same across *MySQL* variants. Migrating from one variant to any other variant requires a logical data dump and reload. + Only the [Percona supplied :octicons-link-external-16:](https://www.percona.com/downloads/Percona-Server-8.0/LATEST/) *TokuDB* engine should be used with *Percona Server for MySQL* 8.0. A *TokuDB* engine downloaded from other sources is not compatible. *TokuDB* file formats are not the same across *MySQL* variants. Migrating from one variant to any other variant requires a logical data dump and reload. ## Prerequisites @@ -43,7 +43,7 @@ malloc-lib= /path/to/jemalloc ### Transparent huge pages *TokuDB* won’t be able to start if the transparent huge pages are -enabled. [Transparent huge pages](https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/s-memory-transhuge.html) +enabled. [Transparent huge pages :octicons-link-external-16:](https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/s-memory-transhuge.html) is a feature available in the newer kernel versions. You can check if the Transparent huge pages are enabled with: `cat /sys/kernel/mm/transparent_hugepage/enabled` @@ -55,7 +55,7 @@ Transparent huge pages are enabled, according to /sys/kernel/mm/redhat_transpare Transparent huge pages are enabled, according to /sys/kernel/mm/transparent_hugepage/enabled ``` -You can [disable](https://access.redhat.com/solutions/46111) +You can [disable :octicons-link-external-16:](https://access.redhat.com/solutions/46111) transparent huge pages permanently by passing `transparent_hugepage=never` to the kernel in your bootloader diff --git a/docs/tokudb-intro.md b/docs/tokudb-intro.md index fad581830b7..edb512d04ad 100644 --- a/docs/tokudb-intro.md +++ b/docs/tokudb-intro.md @@ -20,7 +20,7 @@ version of *Percona Server for MySQL*. !!! warning - Only the [Percona supplied](https://www.percona.com/downloads/Percona-Server-8.0/LATEST/) *TokuDB* engine should be used with *Percona Server for MySQL*. A *TokuDB* engine downloadedfrom other sources is not compatible. *TokuDB* file formats are not the same across MySQL variants. Migrating from one variant to any other variant requires a logical data dump and reload. + Only the [Percona supplied :octicons-link-external-16:](https://www.percona.com/downloads/Percona-Server-8.0/LATEST/) *TokuDB* engine should be used with *Percona Server for MySQL*. A *TokuDB* engine downloadedfrom other sources is not compatible. *TokuDB* file formats are not the same across MySQL variants. Migrating from one variant to any other variant requires a logical data dump and reload. Additional features unique to *TokuDB* include: diff --git a/docs/tokudb-performance-schema.md b/docs/tokudb-performance-schema.md index d6be184d08c..b9cd5c8bbfe 100644 --- a/docs/tokudb-performance-schema.md +++ b/docs/tokudb-performance-schema.md @@ -3,7 +3,7 @@ Starting with Percona Server for MySQL 8.0.28-19 (2022-05-12), the TokuDB storage engine is no longer supported. For more information, see the [TokuDB Introduction](tokudb-intro.md) and [TokuDB version changes](tokudb-version-changes.md). -*TokuDB* is integrated with [Performance Schema](https://dev.mysql.com/doc/refman/8.0/en/innodb-performance-schema.html) +*TokuDB* is integrated with [Performance Schema :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-performance-schema.html) This integration can be used for profiling additional *TokuDB* operations. diff --git a/docs/tokudb-troubleshooting.md b/docs/tokudb-troubleshooting.md index 27641d79e8b..6a238fa50ad 100644 --- a/docs/tokudb-troubleshooting.md +++ b/docs/tokudb-troubleshooting.md @@ -8,7 +8,7 @@ Starting with Percona Server for MySQL 8.0.28-19 (2022-05-12), the TokuDB storag **Replication and binary logging**: *TokuDB* supports binary logging and replication with one restriction. *TokuDB* does not implement a lock on the auto-increment function, so concurrent insert statements with one or more of the statements inserting multiple rows may result in a non-deterministic interleaving of the auto-increment values. When running replication with these concurrent inserts, the auto-increment values on the replica table may not match the auto-increment values on the source table. Note that this is only an issue with Statement Based Replication (SBR), and not Row Based Replication (RBR). For more information about auto-increment and replication, see the *MySQL* -Reference Manual: [AUTO_INCREMENT handling in InnoDB](https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html). +Reference Manual: [AUTO_INCREMENT handling in InnoDB :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html). In addition, when using the `REPLACE INTO` or `INSERT IGNORE` on tables with no secondary indexes or tables where secondary indexes are subsets of the primary, the session variable tokudb_pk_insert_mode controls whether row based replication will work. @@ -58,11 +58,11 @@ indexes only. Turning off uniqueness checking on the primary key can provide large performance boosts, but it should only be done when the primary key is known to be unique. -**Group Replication**: *TokuDB* storage engine doesn’t support [Group Replication](https://dev.mysql.com/doc/refman/8.0/en/group-replication.html). +**Group Replication**: *TokuDB* storage engine doesn’t support [Group Replication :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/group-replication.html). -As of 8.0.17, InnoDB supports [multi-valued indexes](https://dev.mysql.com/doc/refman/8.0/en/create-index.html#create-index-multi-valued). TokuDB does not support this feature. +As of 8.0.17, InnoDB supports [multi-valued indexes :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/create-index.html#create-index-multi-valued). TokuDB does not support this feature. -As of 8.0.17, InnoDB supports the [Clone Plugin](https://dev.mysql.com/doc/refman/8.0/en/clone-plugin.html) and the Clone Plugin API. TokuDB tables do not support either of these features. +As of 8.0.17, InnoDB supports the [Clone Plugin :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/clone-plugin.html) and the Clone Plugin API. TokuDB tables do not support either of these features. ## Lock Visualization in TokuDB @@ -132,7 +132,7 @@ SELECT * FROM INFORMATION_SCHEMA.TOKUDB_LOCK_WAITS; ### Supporting explicit DEFAULT value expressions as of 8.0.13-3 -TokuDB does not support [explicit DEFAULT value expressions](https://dev.mysql.com/doc/refman/8.0/en/data-type-defaults.html) as of verion 8.0.13-3. +TokuDB does not support [explicit DEFAULT value expressions :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/data-type-defaults.html) as of verion 8.0.13-3. ### The tokudb_lock_timeout_debug session variable diff --git a/docs/tokudb-version-changes.md b/docs/tokudb-version-changes.md index cd06bf794ee..33f4d5080f7 100644 --- a/docs/tokudb-version-changes.md +++ b/docs/tokudb-version-changes.md @@ -31,4 +31,4 @@ After saving these changes, restart your server instance to apply the new settin ## Deprecated -The TokuDB storage engine was declared deprecated in [Percona Server for MySQL 8.0](release-notes/Percona-Server-8.0.13-3.md). For more information, see the Percona blog post: [Heads-Up: TokuDB Support Changes and Future Removal from Percona Server for MySQL 8.0](https://www.percona.com/blog/2021/05/21/tokudb-support-changes-and-future-removal-from-percona-server-for-mysql-8-0/). \ No newline at end of file +The TokuDB storage engine was declared deprecated in [Percona Server for MySQL 8.0](release-notes/Percona-Server-8.0.13-3.md). For more information, see the Percona blog post: [Heads-Up: TokuDB Support Changes and Future Removal from Percona Server for MySQL 8.0 :octicons-link-external-16:](https://www.percona.com/blog/2021/05/21/tokudb-support-changes-and-future-removal-from-percona-server-for-mysql-8-0/). \ No newline at end of file diff --git a/docs/too-many-connections-mysql-warning.md.md b/docs/too-many-connections-mysql-warning.md.md index f614d624727..582d0e5938e 100644 --- a/docs/too-many-connections-mysql-warning.md.md +++ b/docs/too-many-connections-mysql-warning.md.md @@ -1,6 +1,6 @@ # Too Many Connections warning in the MySQL Error Log -When the [log_error_verbosity](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_log_error_verbosity) system variable is set to `2` or higher, the server generates a `Too many connections` warning in the error log. +When the [log_error_verbosity :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_log_error_verbosity) system variable is set to `2` or higher, the server generates a `Too many connections` warning in the error log. ## Benefits diff --git a/docs/trademark-policy.md b/docs/trademark-policy.md index d28904ac006..7a796e0f9b9 100644 --- a/docs/trademark-policy.md +++ b/docs/trademark-policy.md @@ -1,6 +1,6 @@ # Trademark policy -This [Trademark Policy](https://www.percona.com/trademark-policy) is to ensure that users of Percona-branded products or services know that what they receive has really been developed, approved, tested, and maintained by Percona. Trademarks help to prevent confusion in the marketplace, by distinguishing one company’s or person’s products and services from another’s. +This [Trademark Policy :octicons-link-external-16:](https://www.percona.com/trademark-policy) is to ensure that users of Percona-branded products or services know that what they receive has really been developed, approved, tested, and maintained by Percona. Trademarks help to prevent confusion in the marketplace, by distinguishing one company’s or person’s products and services from another’s. Percona owns a number of marks, including but not limited to Percona, XtraDB, Percona XtraDB, XtraBackup, Percona XtraBackup, *Percona Server for MySQL*, and Percona Live, plus the distinctive visual icons and logos associated with these marks. Both the unregistered and registered marks of Percona are protected. diff --git a/docs/trigger-updates.md b/docs/trigger-updates.md index 05b4a39764e..e2ceafd4984 100644 --- a/docs/trigger-updates.md +++ b/docs/trigger-updates.md @@ -2,11 +2,11 @@ Clients can issue simultaneous queries for a table. To avoid scalability problems, each thread-handling query has its own table instance. The server uses a special cache, called the Table Cache, which contains open table instanances. The use of the cache avoids paying the penalty in resources for opening and closing tables for each statement. -The [`table_open_cache`](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache) system variable sets soft limits on the cache size. This limit can be temporarily exceeded if the currently executing queries require more open tables than specified. However, when these queries complete, the server closes the unused table instances from this cache using the least recently used (LRU) algorithm. +The [`table_open_cache` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache) system variable sets soft limits on the cache size. This limit can be temporarily exceeded if the currently executing queries require more open tables than specified. However, when these queries complete, the server closes the unused table instances from this cache using the least recently used (LRU) algorithm. -The [`table_open_cache_instances`](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache_instances) system variable shows the number of open tables cache instances. +The [`table_open_cache_instances` :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_table_open_cache_instances) system variable shows the number of open tables cache instances. -For more information, see [How MySQL opens and closes tables](https://dev.mysql.com/doc/refman/8.0/en/table-cache.html). +For more information, see [How MySQL opens and closes tables :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/table-cache.html). Opening a table with triggers in Table Cache also parses the trigger definitions and associates the open table instance with its own instances of the defined trigger bodies. When a connection executes a DML statement and must run a trigger, that connection gets its own instance of the trigger body for that specific open table instance. As a result of this approach, caching open table instances and also caching an associated trigger body for each trigger can consume a surprising amount of memory. diff --git a/docs/udf-percona-toolkit.md b/docs/udf-percona-toolkit.md index 3f9ddcd6b59..5dbd8c5f645 100644 --- a/docs/udf-percona-toolkit.md +++ b/docs/udf-percona-toolkit.md @@ -42,4 +42,4 @@ Then you may need to copy the .so file to another location in your system. Try b ## Other reading -* *Percona Toolkit* [documentation](https://docs.percona.com/percona-toolkit/) +* *Percona Toolkit* [documentation :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/) diff --git a/docs/upgrade-changes-deprecated.md b/docs/upgrade-changes-deprecated.md index fa15036409d..492d00ec528 100644 --- a/docs/upgrade-changes-deprecated.md +++ b/docs/upgrade-changes-deprecated.md @@ -1,6 +1,6 @@ # Deprecated in MySQL 8.0 -The utf8mb3 character set is deprecated. Please use utf8mb4 instead. The utf8mb3 character set is valid in MySQL 8.0, however, it is recommended to use utf8mb4 for the improved Unicode support. Review [Migrating to utf8mb4: Things to consider] for more information. +The utf8mb3 character set is deprecated. Please use utf8mb4 instead. The utf8mb3 character set is valid in MySQL 8.0, however, it is recommended to use utf8mb4 for the improved Unicode support. Review [Migrating to utf8mb4: Things to consider :octicons-link-external-16:](https://www.percona.com/blog/migrating-to-utf8mb4-things-to-consider/) for more information. The `caching_sha2_password` is the default authentication plugin in MySQL 8.0 and provides a superset of the capabilities of the `sha256_password` authentication plugin. The `sha256_password` is deprecated. The new default authentication plugin 'caching_sha2_password' offers more secure password hashing and improved client connection authentication than the previously used 'mysql_native_password'. The existing users that are created with `mysql_native_password` plugin can still be used and logged in to the DB. The new users will be created with `caching_sha2_password` plugin if you don't change the default authentication plugin. @@ -14,7 +14,7 @@ In data_directory, new InnoDB files are created. After installing a new MySQL version, the server now automatically performs all necessary upgrade tasks at the next startup and is not dependent on the DBA invoking mysql_upgrade. In addition, the server updates the contents of the help tables (something `mysql_upgrade` did not do). -A new [upgrade option] provides control over how the server performs automatic data dictionary and server upgrade operations at startup. The validate_password plugin has been reimplemented to use the server component infrastructure. The plugin form of validate_password is still available but is deprecated. +A new [upgrade option :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_upgrade) provides control over how the server performs automatic data dictionary and server upgrade operations at startup. The validate_password plugin has been reimplemented to use the server component infrastructure. The plugin form of validate_password is still available but is deprecated. The ENGINE clause for the ALTER TABLESPACE and DROP TABLESPACE statements. The PAD_CHAR_TO_FULL_LENGTH SQL mode. @@ -25,8 +25,3 @@ The nonstandard C-style &&, ||, and ! operators that are synonyms for the standa The relay_log_info_file system variable and –master-info-file option are deprecated. Previously, these were used to specify the name of the relay log info log and master info log when relay_log_info_repository=FILE and master_info_repository=FILE were set, but those settings have been deprecated. The use of files for the relay log info log and master info log has been superseded by crash-safe slave tables, which are the default in MySQL 8.0. The use of the MYSQL_PWD environment variable to specify a MySQL password is deprecated. - - -[Migrating to utf8mb4: Things to consider]: https://www.percona.com/blog/migrating-to-utf8mb4-things-to-consider/ - -[upgrade option]: https://dev.mysql.com/doc/refman/8.0/en/server-options.html#option_mysqld_upgrade diff --git a/docs/upgrade-changes-removed.md b/docs/upgrade-changes-removed.md index 8a4e2b3469e..f0e8604d7ed 100644 --- a/docs/upgrade-changes-removed.md +++ b/docs/upgrade-changes-removed.md @@ -42,6 +42,4 @@ The mysql_plugin utility was removed. Alternatives include loading plugins at se The `resolveip` utility is removed. `nslookup`, host, or dig can be used instead. -Review [Features removed in MySQL 8.0] for more information - -[Features removed in MySQL 8.0]: https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html#mysql-nutshell-removals +Review [Features removed in MySQL 8.0 :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html#mysql-nutshell-removals) for more information diff --git a/docs/upgrade-percona-repos.md b/docs/upgrade-percona-repos.md index 5b507e8c876..784b698f4bf 100644 --- a/docs/upgrade-percona-repos.md +++ b/docs/upgrade-percona-repos.md @@ -143,7 +143,7 @@ If you used the TokuDB storage engine in Percona Server for MySQL 5.7, we recomm Starting with Percona Server for MySQL 8.0.16-7, `mysql_upgrade` is deprecated. After this version, no operation occurs and this utility generates a message. The mysqld binary automatically runs the upgrade process if needed. - To find more information, see [MySQL Upgrade Process Upgrades](https://dev.mysql.com/doc/refman/8.0/en/upgrading-what-is-upgraded.html) + To find more information, see [MySQL Upgrade Process Upgrades :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrading-what-is-upgraded.html) If you are upgrading to a Percona Server for MySQL version before 8.0.16-7, you can start the mysql service using `service mysql start`. Use `mysql_upgrade` to migrate to the new grant tables. The `mysql_upgrade` rebuilds the required indexes and does the required modifications: diff --git a/docs/upgrade-pt.md b/docs/upgrade-pt.md index a477084da7b..eeedc32fb99 100644 --- a/docs/upgrade-pt.md +++ b/docs/upgrade-pt.md @@ -4,9 +4,9 @@ Percona has several tools in our Percona Toolkit that can help with upgrade plan | Name | Description | | --- | --- | -| [pt-upgrade](https://docs.percona.com/percona-toolkit/pt-upgrade.html) | tool helps you run application SELECT queries and generates reports on how each query pattern performs on the servers across different versions of MySQL | -| [pt-query-digest](https://docs.percona.com/percona-toolkit/pt-query-digest.html) | As best practice dictates gathering and testing all application queries by activating the slow log for a period of time, most companies will end up with an enormous amount of slow log data. The pt-query-digest tool can assist in query digest preparation for your upgrade testing. | -| [pt-config-diff](https://docs.percona.com/percona-toolkit/pt-config-diff.html) | The pt-config-diff tool helps in determining the differences in MySQL settings between files and server variables. This allows comparison of the upgraded version to the previous version, allowing validation of configuration differences. | -| [pt-show-grants](https://docs.percona.com/percona-toolkit/pt-show-grants.html) | The pt-show-grants tool extracts, orders, and then prints grants for MySQL user accounts. This can help to export and backup your MySQL grants prior to an upgrade, or allow you to easily replicate users from one server to another by simply extracting the grants from the first server and piping the output directly into another server. | +| [pt-upgrade :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/pt-upgrade.html) | tool helps you run application SELECT queries and generates reports on how each query pattern performs on the servers across different versions of MySQL | +| [pt-query-digest :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/pt-query-digest.html) | As best practice dictates gathering and testing all application queries by activating the slow log for a period of time, most companies will end up with an enormous amount of slow log data. The pt-query-digest tool can assist in query digest preparation for your upgrade testing. | +| [pt-config-diff :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/pt-config-diff.html) | The pt-config-diff tool helps in determining the differences in MySQL settings between files and server variables. This allows comparison of the upgraded version to the previous version, allowing validation of configuration differences. | +| [pt-show-grants :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/pt-show-grants.html) | The pt-show-grants tool extracts, orders, and then prints grants for MySQL user accounts. This can help to export and backup your MySQL grants prior to an upgrade, or allow you to easily replicate users from one server to another by simply extracting the grants from the first server and piping the output directly into another server. | -For more information, see [Percona Toolkit](https://docs.percona.com/percona-toolkit/) +For more information, see [Percona Toolkit :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/) diff --git a/docs/upgrade-standalone-packages.md b/docs/upgrade-standalone-packages.md index 80f426648b9..77de4225d4c 100644 --- a/docs/upgrade-standalone-packages.md +++ b/docs/upgrade-standalone-packages.md @@ -127,7 +127,7 @@ Make a full backup (or dump if possible) of your database. Move the database con $ rpm -qa | grep '^mysql-'| xargs rpm -e --nodeps` ``` - 3. Download the packages of the desired series for your architecture from the [download page](https://www.percona.com/downloads/Percona-Server-8.0/). The easiest way is to download the bundle which contains all the packages. The following example downloads Percona Server for MySQL 8.0.29-21 release packages for CentOS 8: + 3. Download the packages of the desired series for your architecture from the [download page :octicons-link-external-16:](https://www.percona.com/downloads/Percona-Server-8.0/). The easiest way is to download the bundle which contains all the packages. The following example downloads Percona Server for MySQL 8.0.29-21 release packages for CentOS 8: ```{.bash data-prompt="$"} $ wget https://downloads.percona.com/downloads/Percona-Server-LATEST/Percona-Server-8.0.29-21/binary/redhat/8/x86_64/Percona-Server-8.0.29-21-rc59f87d2854-el8-x86_64-bundle.tar @@ -176,7 +176,7 @@ Make a full backup (or dump if possible) of your database. Move the database con Starting with Percona Server for MySQL 8.0.16-7, `mysql_upgrade` is deprecated. After this version, no operation occurs and this utility generates a message. The mysqld binary automatically runs the upgrade process if needed. - To find more information, see [MySQL Upgrade Process Upgrades](https://dev.mysql.com/doc/refman/8.0/en/upgrading-what-is-upgraded.html) + To find more information, see [MySQL Upgrade Process Upgrades :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrading-what-is-upgraded.html) If you are upgrading to a Percona Server for MySQL version before 8.0.16-7, run `mysql_upgrade` to migrate to the new grant tables and diff --git a/docs/upgrade.md b/docs/upgrade.md index d7f255a18ad..cc7196b9441 100644 --- a/docs/upgrade.md +++ b/docs/upgrade.md @@ -22,9 +22,9 @@ Not upgrading your database can have the following risks: Review [Get more help](get-help.md) for ways that we can work with you. -Create a test environment to verify the upgrade before you upgrade the production servers. The test environment is crucial to the success of the upgrade. There is no supported [downgrade procedure](./downgrade.md). You can try to [replicate from an 8.0 version to 5.7](https://www.percona.com/blog/replicating-mysql-8-0-mysql-5-7/) or restore a backup. +Create a test environment to verify the upgrade before you upgrade the production servers. The test environment is crucial to the success of the upgrade. There is no supported [downgrade procedure](./downgrade.md). You can try to [replicate from an 8.0 version to 5.7 :octicons-link-external-16:](https://www.percona.com/blog/replicating-mysql-8-0-mysql-5-7/) or restore a backup. -[Several tools](./upgrade-pt.md) in the [Percona Toolkit](https://docs.percona.com/percona-toolkit/) can help with the upgrade process. +[Several tools](./upgrade-pt.md) in the [Percona Toolkit :octicons-link-external-16:](https://docs.percona.com/percona-toolkit/) can help with the upgrade process. We recommend upgrading to the latest version. The following topics describe the major changes from 5.7 to 8.0: @@ -40,27 +40,27 @@ Review [Upgrade Strategies](./upgrade-strategies.md) for an overview of the majo The following list summarizes a number of the changes in the 8.0 series and has useful guides that can help you perform a smooth upgrade. We strongly recommend reading this information: -* [Upgrading MySQL](https://dev.mysql.com/doc/refman/8.0/en/upgrading.html) +* [Upgrading MySQL :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrading.html) -* [Before You Begin](https://dev.mysql.com/doc/refman/8.0/en/upgrade-before-you-begin.html) +* [Before You Begin :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrade-before-you-begin.html) -* [Upgrade Paths](https://dev.mysql.com/doc/refman/8.0/en/upgrade-paths.html) +* [Upgrade Paths :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrade-paths.html) -* [Changes in MySQL 8.0](https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html) +* [Changes in MySQL 8.0 :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html) -* [Preparing your Installation for Upgrade](https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html) +* [Preparing your Installation for Upgrade :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html) -* [MySQL 8 Minor Version Upgrades Are ONE-WAY Only](https://www.percona.com/blog/2020/01/10/mysql-8-minor-version-upgrades-are-one-way-only/) +* [MySQL 8 Minor Version Upgrades Are ONE-WAY Only :octicons-link-external-16:](https://www.percona.com/blog/2020/01/10/mysql-8-minor-version-upgrades-are-one-way-only/) -* [Percona Utilities That Make Major MySQL Version Upgrades Easier](https://www.percona.com/blog/percona-utilities-that-make-major-mysql-version-upgrades-easier/) +* [Percona Utilities That Make Major MySQL Version Upgrades Easier :octicons-link-external-16:](https://www.percona.com/blog/percona-utilities-that-make-major-mysql-version-upgrades-easier/) -* [Percona Server for MySQL 8.0 Release notes](https://docs.percona.com/percona-server/latest/release-notes/release-notes_index.html) +* [Percona Server for MySQL 8.0 Release notes :octicons-link-external-16:](https://docs.percona.com/percona-server/latest/release-notes/release-notes_index.html) -* [Upgrade Troubleshooting](https://dev.mysql.com/doc/refman/8.0/en/upgrade-troubleshooting.html) +* [Upgrade Troubleshooting :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/upgrade-troubleshooting.html) -* [Rebuilding or Repairing Tables or Indexes](https://dev.mysql.com/doc/refman/8.0/en/rebuilding-tables.html) +* [Rebuilding or Repairing Tables or Indexes :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/rebuilding-tables.html) -Review other [Percona blogs](https://www.percona.com/blog/) that contain upgrade information. +Review other [Percona blogs :octicons-link-external-16:](https://www.percona.com/blog/) that contain upgrade information. Implemented in Percona Server for MySQL 8.0.15-5, *Percona Server for MySQL* uses the upstream implementation of binary log file encryption and relay log file encryption. diff --git a/docs/using-amz-kms.md b/docs/using-amz-kms.md index c28ef12eebf..4163502b0e4 100644 --- a/docs/using-amz-kms.md +++ b/docs/using-amz-kms.md @@ -3,11 +3,11 @@ As of Percona Server for MySQL 8.0.30-22, the `Amazon Key Management Service (AWS KMS)` feature is [Generally Available (GA)](glossary.md#general-availability-ga). **Percona Server for MySQL** 8.0.28-20 adds support for the [Amazon Key -Management Service (AWS KMS)](https://aws.amazon.com/kms/). Percona Server +Management Service (AWS KMS) :octicons-link-external-16:](https://aws.amazon.com/kms/). Percona Server generates the keyring keys. Amazon Web Services (AWS) encrypts the keyring data. The AWS KMS lets you create and manage cryptographic keys across AWS services. For more information, see the -[AWS Key Management Service Documentation](https://docs.aws.amazon.com/kms/). +[AWS Key Management Service Documentation :octicons-link-external-16:](https://docs.aws.amazon.com/kms/). To use the AWS KMS component, do the following: @@ -21,7 +21,7 @@ either by its ID, alias (the key can have any number of aliases), or ARN. You should only load the AWS KMS component with a manifest file. The server uses this manifest file, and the component consults its configuration file during initialization. -For more information, see [Installing and Uninstalling Components](https://dev.mysql.com/doc/refman/8.0/en/component-loading.html) +For more information, see [Installing and Uninstalling Components :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/component-loading.html) You should create a global manifest file named `mysqld.my` in the installation directory and, optionally, create a local manifest file, also named `mysqld.my` in a data directory. @@ -88,7 +88,7 @@ following: * ARN -For more information, see [Finding the key ID and key ARN](https://docs.aws.amazon.com/kms/latest/developerguide/find-cmk-id-arn.html). +For more information, see [Finding the key ID and key ARN :octicons-link-external-16:](https://docs.aws.amazon.com/kms/latest/developerguide/find-cmk-id-arn.html). * region - the AWS where the KMS is stored. Any HTTP request connects to this region. @@ -113,4 +113,4 @@ The following **JSON** is an example of a configuration file: } ``` -For more information, see [Keyring Component installation](https://dev.mysql.com/doc/refman/8.0/en/keyring-component-installation.html) +For more information, see [Keyring Component installation :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/keyring-component-installation.html) diff --git a/docs/using-keyring-plugin.md b/docs/using-keyring-plugin.md index 302cd13cb78..147e81fda98 100644 --- a/docs/using-keyring-plugin.md +++ b/docs/using-keyring-plugin.md @@ -1,11 +1,11 @@ # Use the keyring component or keyring plugin -The `keyring_vault` plugin can store the encryption keys inside the [HashiCorp Vault](https://www.hashicorp.com/products/vault/data-protection). +The `keyring_vault` plugin can store the encryption keys inside the [HashiCorp Vault :octicons-link-external-16:](https://www.hashicorp.com/products/vault/data-protection). !!! admonition "See also" - [Hashicorp Documentation: Installing Vault](https://www.vaultproject.io/docs/install/index.html)
- [Hashicorp Documentation: Production Hardening](https://learn.hashicorp.com/vault/operations/production-hardening) + [Hashicorp Documentation: Installing Vault :octicons-link-external-16:](https://www.vaultproject.io/docs/install/index.html)
+ [Hashicorp Documentation: Production Hardening :octicons-link-external-16:](https://learn.hashicorp.com/vault/operations/production-hardening) *Percona Server for MySQL* may use either of the following plugins: @@ -18,7 +18,7 @@ The `keyring_vault` plugin can store the encryption keys inside the [HashiCorp V The `keyring_file` plugin should not be used for regulatory compliance. -To install the plugin, follow the [installing and uninstalling plugins](https://dev.mysql.com/doc/refman/8.0/en/plugin-loading.html) instructions. +To install the plugin, follow the [installing and uninstalling plugins :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/plugin-loading.html) instructions. ## Load the keyring plugin @@ -148,7 +148,7 @@ If you use `KV Secrets` Engine 2 (kv-v2)` you can upgrade with *Percona Server f A user-created key deletion is only possible using the keyring_udf plugin, which deletes the key from the in-memory hash map and the Vault server. You cannot delete system keys, such as the master key. -This plugin supports the SQL interface for keyring key management described in the [General-Purpose Keyring Key-Management Functions](https://dev.mysql.com/doc/refman/8.0/en/keyring-functions-general-purpose.html) +This plugin supports the SQL interface for keyring key management described in the [General-Purpose Keyring Key-Management Functions :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/keyring-functions-general-purpose.html) manual. The plugin library contains user-defined keyring functions allowing access to the internal keyring service functions. To enable the functions, you must enable the `keyring_udf` plugin: @@ -165,7 +165,7 @@ You must also create keyring encryption user-defined functions. ## Use the keyring_file component -See [keyring component installation](https://dev.mysql.com/doc/refman/8.0/en/keyring-component-installation.html) for information on installing the component. +See [keyring component installation :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/keyring-component-installation.html) for information on installing the component. !!! warning @@ -173,7 +173,7 @@ See [keyring component installation](https://dev.mysql.com/doc/refman/8.0/en/key !!! admonition "See also" - [MySQL Documentation: Using the keyring_file component](https://dev.mysql.com/doc/refman/8.0/en/keyring-file-component.html) + [MySQL Documentation: Using the keyring_file component :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/keyring-file-component.html) ## System variables diff --git a/docs/using-kmip.md b/docs/using-kmip.md index 40cbee34efc..f721c391a74 100644 --- a/docs/using-kmip.md +++ b/docs/using-kmip.md @@ -1,6 +1,6 @@ # Using the Key Management Interoperability Protocol (KMIP) -**Percona Server for MySQL** 8.0.27-18 adds support for the [OASIS Key Management Interoperability Protocol (KMIP)](https://docs.oasis-open.org/kmip/kmip-spec/v2.0/os/kmip-spec-v2.0-os.html). This implementation was tested with the [PyKMIP server](https://pykmip.readthedocs.io/en/latest/server.html) and the [HashiCorp Vault Enterprise KMIP Secrets Engine](https://www.vaultproject.io/docs/secrets/kmip). +**Percona Server for MySQL** 8.0.27-18 adds support for the [OASIS Key Management Interoperability Protocol (KMIP) :octicons-link-external-16:](https://docs.oasis-open.org/kmip/kmip-spec/v2.0/os/kmip-spec-v2.0-os.html). This implementation was tested with the [PyKMIP server :octicons-link-external-16:](https://pykmip.readthedocs.io/en/latest/server.html) and the [HashiCorp Vault Enterprise KMIP Secrets Engine :octicons-link-external-16:](https://www.vaultproject.io/docs/secrets/kmip). KMIP enables communication between key management systems and the database server. The protocol can do the following: @@ -63,4 +63,4 @@ The configuration settings are either in a global configuration file or a local } ``` -For more information, see [Keyring Component installation](https://dev.mysql.com/doc/refman/8.0/en/keyring-component-installation.html) +For more information, see [Keyring Component installation :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/keyring-component-installation.html) diff --git a/docs/using-tokudb.md b/docs/using-tokudb.md index f3523200208..eb68ee1af85 100644 --- a/docs/using-tokudb.md +++ b/docs/using-tokudb.md @@ -9,17 +9,17 @@ such as covering and clustering indexes. It’s worth investing some time to optimize index definitions to get the best performance from *MySQL* and *TokuDB*. Here are some resources to get you started: -* “Understanding Indexing” by Zardosht Kasheff ([video](https://vimeo.com/26454091)) +* “Understanding Indexing” by Zardosht Kasheff ([video :octicons-link-external-16:](https://vimeo.com/26454091)) -* [Rule of Thumb for Choosing Column Order in Indexes](https://www.percona.com/blog/a-rule-of-thumb-for-choosing-column-order-in-indexes/) +* [Rule of Thumb for Choosing Column Order in Indexes :octicons-link-external-16:](https://www.percona.com/blog/a-rule-of-thumb-for-choosing-column-order-in-indexes/) -* [Covering Indexes: Orders-of-Magnitude Improvements](https://www.percona.com/blog/covering_indexes_orders_of_magnitude_improvements/) +* [Covering Indexes: Orders-of-Magnitude Improvements :octicons-link-external-16:](https://www.percona.com/blog/covering_indexes_orders_of_magnitude_improvements/) -* [Introducing Multiple Clustering Indexes](https://www.percona.com/blog/introducing_multiple_clustering_indexes/) +* [Introducing Multiple Clustering Indexes :octicons-link-external-16:](https://www.percona.com/blog/introducing_multiple_clustering_indexes/) -* [Clustering Indexes vs. Covering Indexes](https://www.percona.com/blog/clustering_indexes_vs_covering_indexes/) +* [Clustering Indexes vs. Covering Indexes :octicons-link-external-16:](https://www.percona.com/blog/clustering_indexes_vs_covering_indexes/) -* [How Clustering Indexes Sometimes Helps UPDATE and DELETE Performance](https://www.percona.com/blog/how_clustering_indexes_sometimes_help_update_and_delete_performance/) +* [How Clustering Indexes Sometimes Helps UPDATE and DELETE Performance :octicons-link-external-16:](https://www.percona.com/blog/how_clustering_indexes_sometimes_help_update_and_delete_performance/) * *High Performance MySQL, 3rd Edition* by Baron Schwartz, Peter Zaitsev, Vadim Tkachenko, Copyright 2012, O’Reilly Media. See Chapter 5, *Indexing for High @@ -89,7 +89,7 @@ query. *TokuDB* makes clustering indexes feasible because of its excellent compression and very high indexing rates. For more information about using clustering -indexes, see [Introducing Multiple Clustering Indexes](https://www.percona.com/blog/introducing_multiple_clustering_indexes/). +indexes, see [Introducing Multiple Clustering Indexes :octicons-link-external-16:](https://www.percona.com/blog/introducing_multiple_clustering_indexes/). ## Hot Index Creation @@ -423,7 +423,7 @@ To convert an existing table to use the *TokuDB* engine, run `ALTER TABLE... ENGINE=TokuDB`. If you wish to load from a file, use `LOAD DATA INFILE` and not `mysqldump`. Using `mysqldump` will be much slower. To create a file that can be loaded with `LOAD DATA INFILE`, refer to the `INTO -OUTFILE` option of the [SELECT Syntax](https://dev.mysql.com/doc/refman/8.0/en/select.html). +OUTFILE` option of the [SELECT Syntax :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/select.html). !!! note diff --git a/docs/utility-user.md b/docs/utility-user.md index 3aae9d5be75..f506ee74182 100644 --- a/docs/utility-user.md +++ b/docs/utility-user.md @@ -6,7 +6,7 @@ This user has a mixed and special scope of abilities and protection: * Utility user does not appear in the mysql.user table and can not be modified by any other user, including root. -* Utility user does not appear in [INFORMATION_SCHEMA.USER_STATISTICS](user-stats.md#information_schemauser_statistics), [INFORMATION_SCHEMA.CLIENT_STATISTICS](user-stats.md#information_schemaclient_statistics) or THREAD_STATISTICS tables or in any [performance_schema tables](https://dev.mysql.com/doc/dev/mysql-server/latest/group__performance__schema__tables.html). +* Utility user does not appear in [INFORMATION_SCHEMA.USER_STATISTICS](user-stats.md#information_schemauser_statistics), [INFORMATION_SCHEMA.CLIENT_STATISTICS](user-stats.md#information_schemaclient_statistics) or THREAD_STATISTICS tables or in any [performance_schema tables :octicons-link-external-16:](https://dev.mysql.com/doc/dev/mysql-server/latest/group__performance__schema__tables.html). * Utility user’s queries may appear in the general and slow logs. @@ -47,7 +47,7 @@ In order to have the ability for a special type of MySQL user, which will have a Specifies a MySQL user that will be added to the internal list of users and recognized as the utility user. -Option [utility_user](#utility_user) specifies the user which the system creates and recognizes as the utility user. The host in the utility user specification follows conventions described in the [MySQL manual](https://dev.mysql.com/doc/refman/8.0/en/connection-access.html). For example, the conventions allow wildcards and IP masks. Anonymous user names are not permitted to be used for the utility user name. +Option [utility_user](#utility_user) specifies the user which the system creates and recognizes as the utility user. The host in the utility user specification follows conventions described in the [MySQL manual :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/connection-access.html). For example, the conventions allow wildcards and IP masks. Anonymous user names are not permitted to be used for the utility user name. This user must not be an exact match to any other user that exists in the mysql.user table. If the server detects that the user specified with this option exactly matches any user within the mysql.user table on start up, the server reports an error and exits gracefully. diff --git a/docs/variables.md b/docs/variables.md index ebb71274e3e..71d2f64368d 100644 --- a/docs/variables.md +++ b/docs/variables.md @@ -1568,7 +1568,7 @@ The variable was implemented in [Percona Server for MySQL 8.0.25-15](release-not #### Improving Write Throughput with Pipelined Writes -This option maps directly to RocksDB’s `DBOptions::enable_pipelined_write`. For details, see the [RocksDB documentation on Pipelined Write](https://github.com/facebook/rocksdb/wiki/Pipelined-Write). +This option maps directly to RocksDB’s `DBOptions::enable_pipelined_write`. For details, see the [RocksDB documentation on Pipelined Write :octicons-link-external-16:](https://github.com/facebook/rocksdb/wiki/Pipelined-Write). The pipelined write feature in RocksDB is specifically designed to enhance concurrent write throughput, but this feature only functions when the Write-Ahead Log (WAL) is enabled. Write operations normally pass through a shared queue. Each writer appends to the WAL and then updates the memtable in strict sequence. This pattern limits parallelism. @@ -1747,7 +1747,7 @@ This variable controls whether to write and check RocksDB file-level checksums. | Default | 1 | Specifies whether to sync on every transaction commit, -similar to [innodb_flush_log_at_trx_commit](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_flush_log_at_trx_commit). +similar to [innodb_flush_log_at_trx_commit :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_flush_log_at_trx_commit). Enabled by default, which ensures ACID compliance. Possible values: diff --git a/docs/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md b/docs/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md index 00a68464925..c8ebe09f505 100644 --- a/docs/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md +++ b/docs/xtradb-performance-improvements-io-bound-highly-concurrent-workloads.md @@ -77,7 +77,7 @@ As of *Percona Server for MySQL* 8.0.20-11, the parallel doublewrite buffer is r | Data type: | String | | Default | `xb_doublewrite` | -As of *Percona Server for MySQL* 8.0.20-11, this variable is considered **deprecated** and has no effect. You should use [innodb_doublewrite_dir](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_doublewrite_dir). +As of *Percona Server for MySQL* 8.0.20-11, this variable is considered **deprecated** and has no effect. You should use [innodb_doublewrite_dir :octicons-link-external-16:](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_doublewrite_dir). This variable is used to specify the location of the parallel doublewrite file. It accepts both absolute and relative paths. In the latter case they are @@ -100,9 +100,9 @@ This variable can be added to the configuration file. ## Other reading -* Bug [#74637](https://bugs.mysql.com/bug.php?id=74637) - make dirty page flushing more adaptive +* Bug [#74637 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=74637) - make dirty page flushing more adaptive -* Bug [#67808](https://bugs.mysql.com/bug.php?id=67808) - in innodb engine, double write and multi-buffer pool +* Bug [#67808 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=67808) - in innodb engine, double write and multi-buffer pool instance reduce concurrency -* Bug [#69232](https://bugs.mysql.com/bug.php?id=69232) - buf_dblwr->mutex can be splited into two +* Bug [#69232 :octicons-link-external-16:](https://bugs.mysql.com/bug.php?id=69232) - buf_dblwr->mutex can be splited into two diff --git a/docs/yum-download-rpm.md b/docs/yum-download-rpm.md index fc85cdd942f..8394953ea1d 100644 --- a/docs/yum-download-rpm.md +++ b/docs/yum-download-rpm.md @@ -4,7 +4,7 @@ You should be aware that when you install packages manually, you must resolve an Package managers, like `APT` or `DNF` install the dependencies for you. -Download the packages from [Percona Product Downloads](https://www.percona.com/downloads). If needed, [Instructions for the Percona Product Download](download-instructions.md) are available. +Download the packages from [Percona Product Downloads :octicons-link-external-16:](https://www.percona.com/downloads). If needed, [Instructions for the Percona Product Download](download-instructions.md) are available. ## Version changes @@ -14,9 +14,9 @@ Starting with Percona Server 8.0.33-25, the RPM builds for *RHEL* 8 and *RHEL* 9 The following example downloads *Percona Server for MySQL* {{release}} release packages for *RHEL* 8. -1. Using [`Wget`](https://www.gnu.org/software/wget/), the following command downloads a specific version of Percona Server for MySQL on Red Hat Enterprise Linux 8 from the Percona website. +1. Using [`Wget` :octicons-link-external-16:](https://www.gnu.org/software/wget/), the following command downloads a specific version of Percona Server for MySQL on Red Hat Enterprise Linux 8 from the Percona website. - The download filename includes a `` value. This value is *build-specific* and must be obtained from the [Percona Product Downloads](https://www.percona.com/downloads) page for the exact release you are installing. Select the product, version, and operating system, and find the link with the required `` under the **Download all packages** button. For more details, see the [Instructions for Percona Product Downloads](download-instructions.md). + The download filename includes a `` value. This value is *build-specific* and must be obtained from the [Percona Product Downloads :octicons-link-external-16:](https://www.percona.com/downloads) page for the exact release you are installing. Select the product, version, and operating system, and find the link with the required `` under the **Download all packages** button. For more details, see the [Instructions for Percona Product Downloads :octicons-link-external-16:](download-instructions.md). ```{.bash data-prompt="$"} $ wget https://downloads.percona.com/downloads/Percona-Server-8.0/Percona-Server-{{release}}/binary/redhat/8/x86_64/Percona-Server-{{release}}--el8-x86_64-bundle.tar diff --git a/docs/yum-repo.md b/docs/yum-repo.md index b0888e93916..033390dd1be 100644 --- a/docs/yum-repo.md +++ b/docs/yum-repo.md @@ -1,10 +1,10 @@ # Install from Percona Software repository Ready-to-use packages are available from the Percona Server for MySQL software -repositories and the [download page](https://www.percona.com/downloads). +repositories and the [download page :octicons-link-external-16:](https://www.percona.com/downloads). The Percona yum repository supports popular RPM-based -operating systems. The easiest way to install the Percona RPM repository is to install an RPM configuring yum and installing the [Percona GPG key](https://repo.percona.com/yum/PERCONA-PACKAGING-KEY). +operating systems. The easiest way to install the Percona RPM repository is to install an RPM configuring yum and installing the [Percona GPG key :octicons-link-external-16:](https://repo.percona.com/yum/PERCONA-PACKAGING-KEY). We gather [Telemetry data] in the Percona packages and Docker images. @@ -16,11 +16,11 @@ Starting with Percona Server 8.0.33-25, the RPM builds for *RHEL* 8 and *RHEL* 9 ### Supported platforms -Specific information on the supported platforms, products, and versions are described in [Percona Software and Platform Lifecycle](https://www.percona.com/services/policies/percona-software-platform-lifecycle#mysql). +Specific information on the supported platforms, products, and versions are described in [Percona Software and Platform Lifecycle :octicons-link-external-16:](https://www.percona.com/services/policies/percona-software-platform-lifecycle#mysql). ### Red Hat Certified -Percona Server for MySQL is certified for Red Hat Enterprise Linux 8. This certification is based on common and secure best practices and successful interoperability with the operating system. Percona Server is listed in the [Red Hat Ecosystem Catalog](https://catalog.redhat.com/software/applications/detail/112055). +Percona Server for MySQL is certified for Red Hat Enterprise Linux 8. This certification is based on common and secure best practices and successful interoperability with the operating system. Percona Server is listed in the [Red Hat Ecosystem Catalog :octicons-link-external-16:](https://catalog.redhat.com/software/applications/detail/112055). ### Limitations @@ -40,7 +40,7 @@ $ sudo yum module disable mysql ## Install Percona Server for MySQL from Percona `yum` repository -For more information on the Percona Software repositories and configuring Percona Repositories with `percona-release`, see the [Percona Software Repositories Documentation]. Run the following commands as a `root` user or with sudo. +For more information on the Percona Software repositories and configuring Percona Repositories with `percona-release`, see the [Percona Software Repositories Documentation :octicons-link-external-16:](https://docs.percona.com/percona-software-repositories/index.html). Run the following commands as a `root` user or with sudo. === "Install on Red Hat 7" @@ -90,7 +90,6 @@ There are three sections in this file: You must install the Percona repository first if the installation has not been done already. [Telemetry data]: telemetry.md -[Percona Software Repositories Documentation]: https://docs.percona.com/percona-software-repositories/index.html [TokuDB version changes]: tokudb-version-changes.md [TokuDB Installation guide]: tokudb-installation.md diff --git a/docs/yum-run.md b/docs/yum-run.md index 7e8247e2f8c..e448da9404a 100644 --- a/docs/yum-run.md +++ b/docs/yum-run.md @@ -7,7 +7,7 @@ default. The configuration file used to manage Percona Server for MySQL is the ` You would use `systemctl` to manage system services and daemons in a Linux environment. It provides a systematic and unified interface for controlling the state of services and checking their status. With `systemctl`, you can start a service to initiate its operations, stop it to terminate its operations, restart it to refresh its state, and check the status to monitor its performance and health. This command is essential for system administrators who need precise control over service management tasks. -The RHEL distributions and derivatives come with [systemd](https:/freedesktop.org/wiki/Software/systemd/) as the default system and service manager. +The RHEL distributions and derivatives come with [systemd :octicons-link-external-16:](https:/freedesktop.org/wiki/Software/systemd/) as the default system and service manager. `systemctl` is a command-line utility that is used to control the systemd system and service manager. It's a primary tool for managing services on Linux distributions that use systemd. @@ -35,4 +35,4 @@ For information on SELinux, see [Working with SELinux](selinux.md). The RHEL 8 distributions and derivatives have added a [system-wide cryptographic policies component]. This component lets administrators manage the cryptographic compliance of the entire system with a single command. This ability simplifies the task of meeting specific security requirements for cryptographic algorithms. -[system-wide cryptographic policies component]: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/security_hardening/using-the-system-wide-cryptographic-policies_security-hardening +[system-wide cryptographic policies component :octicons-link-external-16:]: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/security_hardening/using-the-system-wide-cryptographic-policies_security-hardening diff --git a/docs/zenfs.md b/docs/zenfs.md index 11f39a61dba..36df223decd 100644 --- a/docs/zenfs.md +++ b/docs/zenfs.md @@ -13,9 +13,9 @@ The zone storage model organizes the SSD into a set of zones that are uniform in ZenFS is a file system plugin for RocksDB which uses the RocksDB file system to place files into zones on a raw zoned block device (ZBD). The plugin adds native support for ZNS, avoids on device garbage collection, and minimizes write amplification. File data is stored in a set of extents. Within a zone, extents are a contiguous part of the address space. Garbage collection is an option, but this selection can cause write amplification. ZenFS depends on the `libzbd` user library and requires a Linux kernel implementation that supports NVMe Zoned Namespaces. The kernel -must be configured with [zone block device support enabled](https://zonedstorage.io/docs/linux/config). +must be configured with [zone block device support enabled :octicons-link-external-16:](https://zonedstorage.io/docs/linux/config). -Read the [Western Digital and Percona deliver Utrastar DC ZN540 Zoned Namespace SSD support for Percona Server for MySQL](https://documents.westerndigital.com/content/dam/doc-library/en_us/assets/public/western-digital/collateral/company/western-digital-zns-ssd-perconal-blogpost.pdf) PDF for more information. +Read the [Western Digital and Percona deliver Utrastar DC ZN540 Zoned Namespace SSD support for Percona Server for MySQL :octicons-link-external-16:](https://documents.westerndigital.com/content/dam/doc-library/en_us/assets/public/western-digital/collateral/company/western-digital-zns-ssd-perconal-blogpost.pdf) PDF for more information. The following procedure installs Percona Server for MySQL and then configures `--rocksdb-fs-uri=zenfs://dev:` for data storage. @@ -34,7 +34,7 @@ For the moment, the ZenFS plugin can be enabled in following distributions: If the ZenFS functionality is not enabled on Ubuntu 20.04, the binaries with ZenFS support can run on the standard 5.4 kernel. -[Other Linux distributions](https://zonedstorage.io/docs/distributions/overview) are adding support for ZenFS, but Percona does not provide installation packages for those distributions. +[Other Linux distributions :octicons-link-external-16:](https://zonedstorage.io/docs/distributions/overview) are adding support for ZenFS, but Percona does not provide installation packages for those distributions. ## Installation @@ -62,7 +62,7 @@ Start with the installation of *Percona Server for MySQL*. ## Configuration -1. Identify your ZBD device, , with [lsblk](https://manpages.debian.org/stretch/util-linux/lsblk.8.en.html). Add the `-o` option and specify which columns to print. +1. Identify your ZBD device, , with [lsblk :octicons-link-external-16:](https://manpages.debian.org/stretch/util-linux/lsblk.8.en.html). Add the `-o` option and specify which columns to print. In the example, the `NAME` column returns the block device name, the `SIZE` column returns the size of the device, and the `ZONED` column returns information if the device uses the zone model. The value, `host-managed`, identifies a ZBD model. @@ -318,10 +318,10 @@ $ zenfs restore --zbd=${NULLB} --path="/home/user/bkp/" --restore_path=/ After a reboot the NVME ZBD configuration (“/dev/nvme02” in our examples) can disappear. The issue is OS-dependent and can be managed by the system administrators. One or more of the following events may have occurred: -* A reboot changes the active “scheduler” from “[mq-deadline]”. The following steps [reset the disk scheduler in RedHat using udev rules](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_storage_devices/setting-the-disk-scheduler_managing-storage-devices#setting-the-disk-scheduler-using-udev-rules_setting-the-disk-scheduler). For Ubuntu, see [Input/output schedulers](https://wiki.archlinux.org/title/Improving_performance#Input/output_schedulers). +* A reboot changes the active “scheduler” from “[mq-deadline]”. The following steps [reset the disk scheduler in RedHat using udev rules :octicons-link-external-16:](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_storage_devices/setting-the-disk-scheduler_managing-storage-devices#setting-the-disk-scheduler-using-udev-rules_setting-the-disk-scheduler). For Ubuntu, see [Input/output schedulers :octicons-link-external-16:](https://wiki.archlinux.org/title/Improving_performance#Input/output_schedulers). !!! admonition "See also" - For more information, review [Change I/O scheduler](https://www.golinuxcloud.com/how-to-change-io-scheduler-permanently-linux/). + For more information, review [Change I/O scheduler :octicons-link-external-16:](https://www.golinuxcloud.com/how-to-change-io-scheduler-permanently-linux/). * A reboot resets the device permissions from “640/mysql:mysql” to “660/root:disk”. diff --git a/mkdocs-base.yml b/mkdocs-base.yml index 32e9c6ff821..05cb7767b85 100644 --- a/mkdocs-base.yml +++ b/mkdocs-base.yml @@ -114,6 +114,7 @@ markdown_extensions: plugins: search: separator: '[\s\-,:!=\[\]()"`/]+|\.(?!\d)|&[lg]t;|(?!\b)(?=[A-Z][a-z])' + open-in-new-tab: {} git-revision-date-localized: enable_creation_date: true enabled: !ENV [ENABLED_GIT_REVISION_DATE, True] diff --git a/requirements.txt b/requirements.txt index 62a21d396bc..614c2182318 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,8 +11,8 @@ mkdocs-bootstrap-tables-plugin mkdocs-section-index mkdocs-htmlproofer-plugin mkdocs-meta-descriptions-plugin -mike -mkdocs-open-in-new-tab mkdocs-print-site-plugin mkdocs-git-committers-plugin-2 -mkdocs-git-revision-date-localized-plugin \ No newline at end of file +mkdocs-git-revision-date-localized-plugin +mkdocs-open-in-new-tab +mike