Skip to content

Commit 2bd4fbc

Browse files
committed
PS-10109 [DOCS] - Review and update apt-repo 8.4
modified: docs/apt-pinning.md modified: docs/apt-repo.md
1 parent 212f6eb commit 2bd4fbc

File tree

6 files changed

+357
-66
lines changed

6 files changed

+357
-66
lines changed

docs/apt-download-deb.md

Lines changed: 49 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,64 @@
1-
# Install Percona Server for MySQL {{vers}} using downloaded DEB packages
1+
# Install Percona Server for MySQL 8.4 using DEB packages
22

3-
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.
3+
Percona distributes DEB packages in tar bundles that contain multiple related packages. Two bundle types are available:
44

5-
The following example downloads Percona Server for MySQL {{release}} release packages for Ubuntu 22.04:
5+
* Full bundle: Contains all Percona Server packages including server, client, test packages, debug symbols, and source files
6+
7+
* Minimal bundle: Contains only the essential server and client packages needed for basic operation
8+
9+
Choose the bundle type based on your requirements. Download the bundle to access the components you need, then extract and install the individual DEB files using your system package manager.
10+
11+
## When to use this installation method
12+
13+
Advantages:
14+
15+
* Provides precise version control over installed packages
16+
17+
* Works in offline environments without internet access
18+
19+
* Allows installation before packages appear in standard repositories
20+
21+
* Enables administrators to validate packages before deployment
22+
23+
Disadvantages:
24+
25+
* Requires manual download and extraction steps
26+
27+
* Does not receive automatic updates through the package manager
28+
29+
* Users must manually track new releases and security updates
30+
31+
* Takes more time than repository-based installation
32+
33+
Download the bundle from Percona Product Downloads. Review the Instructions for the Percona Product Download if you need assistance.
34+
35+
This example downloads Percona Server for MySQL {{release}} release packages for Ubuntu 22.04:
636

737
```{.bash data-prompt="$"}
8-
$ wget https://downloads.percona.com/downloads/Percona-Server-8.4/Percona-Server-8.4.0-1/binary/debian/jammy/x86_64/Percona-Server-8.4.0-1-r238b3c02-jammy-x86_64-bundle.tar
38+
$ wget https://downloads.percona.com/downloads/Percona-Server-8.4/Percona-Server-{{release}}/binary/debian/jammy/x86_64/Percona-Server-{{release}}-[revision hash]-jammy-x86_64-bundle.tar
939
```
1040

11-
Unpack the download to get the packages:
41+
Extract the bundle to access the individual packages:
1242

1343
```{.bash data-prompt="$"}
14-
$ tar xvf Percona-Server-8.4.0-1-r71449379-buster-x86_64-bundle.tar
44+
$ tar xvf Percona-Server-{{release}}-[revision hash]-jammy-x86_64-bundle.tar
1545
```
16-
??? example "Expected output"
17-
18-
```text
19-
libperconaserverclient21_{{release}}-1.buster_amd64.deb
20-
libperconaserverclient21-dev_{{release}}-1.buster_amd64.deb
21-
percona-mysql-router_{{release}}-1.buster_amd64.deb
22-
percona-server-client_{{release}}-1.buster_amd64.deb
23-
percona-server-common_{{release}}-1.buster_amd64.deb
24-
percona-server-dbg_{{release}}-1.buster_amd64.deb
25-
percona-server-rocksdb_{{release}}-1.buster_amd64.deb
26-
percona-server-server_{{release}}-1.buster_amd64.deb
27-
percona-server-source_{{release}}-1.buster_amd64.deb
28-
percona-server-test_{{release}}-1.buster_amd64.deb
46+
47+
??? example "Expected output for a full tar extraction"
48+
49+
```{.text .no-copy}
50+
percona-server-server_{{release}}-1.jammy_amd64.deb
51+
percona-server-client_{{release}}-1.jammy_amd64.deb
52+
percona-server-common_{{release}}-1.jammy_amd64.deb
53+
percona-server-dbg_{{release}}-1.jammy_amd64.deb
54+
percona-server-source_{{release}}-1.jammy_amd64.deb
55+
percona-server-test_{{release}}-1.jammy_amd64.deb
2956
```
3057

31-
Install Percona Server for MySQL using `dpkg`. Run this command as root or use the sudo command:
58+
Install Percona Server for MySQL using the system package manager. Run this command as root or use sudo:
3259

3360
```{.bash data-prompt="$"}
34-
$ sudo dpkg -i *.deb
61+
$ sudo apt install ./*.deb
3562
```
3663

37-
!!! warning
38-
39-
When installing packages manually like this, you’ll need to resolve all the dependencies and install missing packages yourself. The following packages will need to be installed before you can manually install Percona Server: `mysql-common`, `libjemalloc1`, `libaio1`, and `libmecab2`.
64+
The package manager resolves dependencies automatically and installs all required components from the extracted files.

docs/apt-pinning.md

Lines changed: 39 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,44 @@
11
# Apt pinning the Percona Server for MySQL {{vers}} packages
22

3-
Pinning allows you to stay on a release and get packages from a different version. In some cases, you can pin selected packages and avoid accidentally upgrading all the packages.
3+
Apt pinning helps you control which version of a package is installed from different repositories. This is useful when you want to stay on a specific release such as Percona Server for MySQL 8.4 and avoid automatic upgrades from other sources.
44

5-
The pinning takes place in the `preference` file. To pin a package, set the `Pin-Priority` to higher numbers.
6-
7-
Make a new file `/etc/apt/preferences.d/00percona.pref`. For example, add the following to the `preference` file:
5+
To pin the Percona Server for MySQL 8.4 packages, follow these steps:
6+
{.power-number}
87

9-
```text
10-
Package:
11-
Pin: release o=Percona Development Team
12-
Pin-Priority: 1001
13-
```
8+
1. Create a preferences file in `/etc/apt/preferences.d/` named `00percona.pref`:
149

15-
For more information about the pinning, you can check the official [debian wiki](https://wiki.debian.org/AptConfiguration?action=show&redirect=AptPreferences).
10+
```{.bash data-prompt="$"}
11+
$ sudo nano /etc/apt/preferences.d/00percona.pref
12+
```
13+
14+
2. Add the pinning configuration content to the file:
15+
16+
```ini
17+
Package: percona-server-server
18+
Pin: release o=Percona Development Team,a=stable
19+
Pin-Priority: 1001
20+
```
21+
22+
* The `Package` field specifies the exact name of the package.
23+
* The `Pin` field identifies the origin of the package, which is the Percona repository.
24+
* The `Pin-Priority` field sets the priority level. A value above 1000 ensures this version is preferred over others.
25+
26+
Save and close the file.
27+
28+
3. Update package lists to refresh your package sources:
29+
30+
```{.bash data-prompt="$"}
31+
$ sudo apt update
32+
```
33+
34+
4. Install Percona Server for MySQL 8.4 using the following command:
35+
36+
```{.bash data-prompt="$"}
37+
$ sudo apt install percona-server-server
38+
```
39+
40+
Your system prioritizes the version from the Percona repository according to your pinning settings.
41+
42+
## Learn more
43+
44+
For additional details, visit the [debian wiki](https://wiki.debian.org/AptConfiguration?action=show&redirect=AptPreferences).

docs/apt-repo.md

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,59 @@
1-
# Use an APT repository to install Percona Server for MySQL {{vers}}
1+
# Install Percona Server for MySQL {{vers}} Using APT on Debian/Ubuntu
22

3-
Ready-to-use packages are available from the Percona Server for MySQL software
4-
repositories and the [Percona downloads] page.
3+
Percona provides ready-to-use packages for Percona Server for MySQL 8.4 through its APT repositories, offering seamless updates and dependency resolution for Debian-based systems.
54

6-
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).
5+
If you need help with installation or configuration, [Percona Support](https://www.percona.com/services/support) is available to assist you.
6+
7+
Specific information on the supported platforms, products, and versions are available in [Percona Software and Platform Lifecycle](https://www.percona.com/services/policies/percona-software-platform-lifecycle#mysql).
8+
9+
Percona packages and Docker images collect anonymous telemetry data to improve product quality. For details on what is collected and how to opt out, see [Telemetry in Percona Server for MySQL].
710

8-
We gather [Telemetry data] in the Percona packages and Docker images.
911

10-
--8<--- "get-help-snip.md"
1112

1213
## ARM support
1314

14-
The DEB builds for Ubuntu 20.04, Ubuntu 22.04, Ubuntu 24.04, DEBIAN 11, and DEBIAN 12 contain ARM packages with the `aarch64.rpm` extension. This means that Percona Server for MySQL is available for users on ARM-based systems.
15+
Percona Server for MySQL 8.4 includes native support for the ARM64 (aarch64) architecture in its DEB packages. These packages are available for Ubuntu starting with version 20.04 and for Debian starting with version 11.
16+
1517

1618
## Install Percona Server for MySQL using APT
1719

1820
To install Percona Server for MySQL using APT, do the following steps:
1921
{.power-number}
2022

21-
1. Update the package repositories:
23+
1. Update the package index and install `curl`:
2224

2325
```{.bash data-prompt="$"}
24-
$ sudo apt update
26+
$ sudo apt update && sudo apt install curl
2527
```
2628

27-
2. Install the `curl` download utility if needed:
28-
29-
```{.bash data-prompt="$"}
30-
$ sudo apt install curl
31-
```
32-
33-
3. Download the `percona-release` repository package:
29+
2. Download the `percona-release` repository package:
3430

3531
```{.bash data-prompt="$"}
3632
$ curl -O https://repo.percona.com/apt/percona-release_latest.generic_all.deb
3733
```
3834

39-
4. Install the downloaded package with `apt` as root or with sudo:
35+
3. Install the package with `apt` as root or with sudo:
4036

4137
```{.bash data-prompt="$"}
4238
$ sudo apt install gnupg2 lsb-release ./percona-release_latest.generic_all.deb
4339
```
4440

45-
46-
5. Refresh the local cache to update the package information:
41+
4. Refresh the package index:
4742

4843
```{.bash data-prompt="$"}
4944
$ sudo apt update
5045
```
5146

52-
6. Use `percona-release` to set up the repository for the Percona Server for MySQL {{vers}} version:
47+
5. Enable the Percona Server for MySQL {{vers}} repository:
5348

5449
```{.bash data-prompt="$"}
5550
$ sudo percona-release enable-only {{pkg}} release
5651
$ sudo percona-release enable tools release
5752
```
5853

59-
7. You can check the repository setup for the Percona original release list in `/etc/apt/sources.list.d/percona-original-release.list`.
54+
6. [Optional] You can check the repository setup for the Percona original release list in ```cat /etc/apt/sources.list.d/percona-original-release.list```.
6055

61-
8. Install the server package with the `percona-release` command:
56+
8. Install the server:
6257

6358
```{.bash data-prompt="$"}
6459
$ sudo apt install percona-server-server
@@ -68,7 +63,7 @@ See [Configuring Percona repositories with `percona-release`](https://docs.perco
6863

6964
--8<--- "storage-engines.md"
7065

71-
Percona Server for MySQL includes user-defined functions (UDFs) from [Percona Toolkit](https://docs.percona.com/percona-toolkit/). These UDFs, `fnv_64`, `fnv1a_64`, `murmur_hash`, offer faster checksum calculations compared to standard methods. For detailed information about these user-defined functions, see [Percona Toolkit UDF functions](udf-percona-toolkit.md).
66+
Percona Server for MySQL includes user-defined functions (UDFs) from [Percona Toolkit](https://docs.percona.com/percona-toolkit/) for faster checksum calculations. Learn more in [Percona Toolkit UDF functions](udf-percona-toolkit.md).
7267

7368
Once the installation completes, execute the following command to install these functions:
7469

@@ -89,4 +84,4 @@ These builds should not be run in production. This build may not contain all of
8984

9085
[Percona downloads]: https://www.percona.com/downloads/Percona-Server-{{vers}}/
9186

92-
[Telemetry data]: telemetry.md
87+
[Telemetry in Percona Server for MySQL]: telemetry.md

docs/installation-methods.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
# Installation methods
2+
3+
This guide outlines the primary methods for installing Percona Server for MySQL, comparing their advantages and use cases to help you choose the right approach for your environment.
4+
5+
## APT/YUM or DNF (package managers)
6+
7+
* [Install with APT](apt-repo.md)
8+
9+
* [Install with YUM/DNF](yum-repo.md)
10+
11+
This is the standard and recommended method for most users on a supported Linux distribution. This method uses the Percona release tool with a package manager to handle the installation from a pre-configured repository. The package manager automatically resolves and installs all required dependencies.
12+
13+
* Common Use Cases:
14+
15+
* Production servers where stability and easy maintenance are critical.
16+
17+
* Automated deployments and provisioning.
18+
19+
* Users who want a simple, clean, and reliable installation process.
20+
21+
* Pros:
22+
23+
* Dependency Management: All dependencies are handled automatically.
24+
25+
* Easy Updates: Upgrading to new versions or applying security patches is a single command.
26+
27+
* Reliability: Packages are tested for the specific operating system and architecture.
28+
29+
* Clean Uninstallation: Removes all files without leaving orphaned data.
30+
31+
* Cons:
32+
33+
* Version Availability: You are limited to the versions available in the repository.
34+
35+
### Manual Package Installation (.deb/.rpm)
36+
37+
* [Download and install with APT packages](apt-download-deb.md)
38+
39+
* [Download and install with RPM packages](yum-download-rpm.md)
40+
41+
42+
43+
This method is a hybrid approach, offering more control than a repository but still leveraging the package manager for the final installation. It's used when you have the package file but don't want to use an online repository. You download a specific package file (for example, a .deb or .rpm) directly from the Percona website. You then install the package file using a local command-line tool like apt or dnf, which processes the file.
44+
45+
* Common Use Cases:
46+
47+
* Installing on a system with no internet access to the public repositories.
48+
49+
* Deploying a specific point release for testing or compatibility.
50+
51+
* Troubleshooting when repository access is an issue.
52+
53+
* Pros:
54+
55+
* Precise Version Control: You get exactly the version of the package you download.
56+
57+
* No Repository Required: The server doesn't need to access an online repository.
58+
59+
* Uses Package Manager: The package file can still manage dependencies and is easy to remove.
60+
61+
* Cons:
62+
63+
* Manual Dependencies: You must manually download and install any required dependency packages first.
64+
65+
* Manual Updates: You have to manually download and install new versions.
66+
67+
* No Automatic Security Patches: You are responsible for monitoring and installing security updates.
68+
69+
### Tar Files
70+
71+
* [Download and install .tar file](binary-tarball-install.md)
72+
73+
This method gives you more control than a package manager but still provides a pre-compiled binary that does not require compilation. You download a compressed tarball (.tar.gz) containing the pre-compiled binaries directly from the Percona website. You then extract the files to a directory of your choice and manually configure the environment.
74+
75+
* Common Use Cases:
76+
77+
* Installing on unsupported Linux distributions or non-standard environments.
78+
79+
* Testing a specific version that isn't yet available in a repository.
80+
81+
* Installing for Local development.
82+
83+
* Pros:
84+
85+
* Flexibility: Provides the latest versions directly from the source.
86+
87+
* Portability: The installation is often self-contained within a directory.
88+
89+
* Control: You decide exactly where to install the files.
90+
91+
* Cons:
92+
93+
* Manual Dependencies: You are responsible for manually installing any required libraries.
94+
95+
* Manual Maintenance: Updating to a new version requires you to download, extract, and re-link the new files.
96+
97+
## Compile from source
98+
99+
* [Compile from source](compile-percona-server.md)
100+
101+
This is the most hands-on method, offering the highest level of customization and control over the final installation. You download the raw source code, use a C++ compiler and other tools to build the software on your local machine, and then install the resulting binaries. This method requires a comprehensive build environment.
102+
103+
* Common Use Cases:
104+
105+
* Building for an unsupported architecture.
106+
107+
* Debugging or modifying the server's code.
108+
109+
* Optimizing the server for a specific hardware configuration.
110+
111+
* Pros:
112+
113+
* Ultimate Control: You can customize every aspect of the build, including which features to enable or disable.
114+
115+
* Platform Flexibility: Can be compiled and run on virtually any system that has the required build tools.
116+
117+
* Cons:
118+
119+
* Complex Dependencies: Requires you to manually manage all build-time dependencies, which can be extensive.
120+
121+
* Time-Consuming: The compilation process can take a significant amount of time.
122+
123+
* Difficult Maintenance: Updating or uninstalling requires manual, complex steps.

0 commit comments

Comments
 (0)