# Upgrading Percona Server from 8.0.44 to 8.4.7 on GTID based replication environments?

**URL:** <https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196>\
**Category:** Percona Server for MySQL 8.0\
**Created:** [February 11, 2026, 7:17pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196 "2026-02-11T19:17:23Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 11, 2026, 7:17pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/1 "2026-02-11T19:17:24Z")

</div>

We are planning to upgrade our Percona Server 8.0.44 to 8.4.7. Our environment is setup GTID based replication (replica is read only).

During the upgrade (after 8.4.7), we need to uninstall and install some plugins like uninstall deprecated audit log and validate\_password and install component audit filter, component validate Password plugins.

Since uninstalling and installing plugins, the replica host needs to be in WRITE mode and Source/Primary only be upgraded after upgrading replica, is there any implications of uninstalling and installing plugins by temporarily enabling write operations on the replica during this task? After upgrading the source/primary, any impact on the GTID executions (as these plugins already installed in replica)?

What are the correct method of upgrading from 8.0.44 to 8.4.7 with GTID based replications which also includes uninstalling deprecated plugins and installing new component based plugins?

An early reply is highly appreciated.

Thank you

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 11, 2026, 8:38pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/2 "2026-02-11T20:38:31Z")

</div>

Please review the documentation for upgrading from 8.0 to 8.4.

> **[Percona Server for MySQL - Upgrade from 8.0 to 8.4 overview](https://docs.percona.com/percona-server/8.4/upgrade.html)**
>
> Review Get help from Percona for ways that we can work with you.

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 11, 2026, 9:40pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/3 "2026-02-11T21:40:46Z")

</div>

Hi Wayne,

Yes we already reviewed the document. But we have a question on upgrading our readly replica (before upgrading its SOURCE).

Since uninstalling and installing plugins, the REPLICA needs to be in WRITE mode and Source/Primary only be upgraded after upgrading REPLICA, is there any implications of uninstalling and installing plugins by temporarily enabling write operations on the REPLICA during this task? After upgrading the source/primary, any impact on the GTID transactions as REPLICA already upgraded with new plugins?

Please advice

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 11, 2026, 10:58pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/4 "2026-02-11T22:58:26Z")

</div>

Running `INSTALL COMPONENT` on a replica is usually safe because it is a **local, non-replicated administrative action**. It won’t generate GTIDs, won’t hit the binlog, and won’t disturb replication by itself.

If you are concerned about potential errant GTID’s you can disable writes to the bin logs on the replica with this command:

```sql
SET session sql_log_bin=0;

```

Once you are done making your changes you can re-enable bin logs:

```sql
SET session sql_log_bin=1;

```

I **HIGHLY** recommend that you test these changes in your lower environments before touching your production. Better yet if you have a sandbox environment I would recommend testing there.

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 11, 2026, 11:21pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/5 "2026-02-11T23:21:42Z")

</div>

Thank you so much Wayne.

What about installing the audit\_filter\_log using the script “/usr/share/mysql/audit\_log\_filter\_linux\_install.sql”? Does this generate GTIDs?

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 11, 2026, 11:38pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/6 "2026-02-11T23:38:22Z")

</div>

Yes it will, since it creates two tables. I would suggest that you not run that script on your replica. Run that on your primary, then replication will take care of the 2 tables that will be created. Then go back to the replica and run:

```sql
INSTALL COMPONENT 'file://component_audit_log_filter';

```

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 12, 2026, 12:01am UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/7 "2026-02-12T00:01:20Z")

</div>

Ok. I can exclude running the file “/usr/share/mysql/audit\_log\_filter\_linux\_install.sql” from REPLICA. But can I run INSTALL COMPONENT ‘file://component\_audit\_log\_filter’; on REPLICA before upgrading the SOURCE/Primary (running the file “/usr/share/mysql/audit\_log\_filter\_linux\_install.sql” in SOURCE)?

We are trying automate the whole upgrade process using ansible.

Please advise.

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 12, 2026, 12:16am UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/8 "2026-02-12T00:16:23Z")

</div>

Yes you should be able to run:

```sql
INSTALL COMPONENT ‘file://component_audit_log_filter’;

```

On your replica before you upgrade the Primary.

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 12, 2026, 12:22am UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/9 "2026-02-12T00:22:06Z")

</div>

Thank you so much for your quick response. My other question is after running the statement on the REPLICA, can I set the following parameters in the REPLICA configuration file (my.cnf) and restart the server? Or these parameters needs the required audit\_log\_filter tables?

```auto
audit_log_filter.format=JSON
audit_log_filter.file=/var/log/mysql-audit/mysql.audit.log
audit_log_filter.rotate_on_size=0
audit_log_filter.max_size=0
audit_log_filter.prune_seconds=0

```

Please advise.

Thank you for your help.

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 12, 2026, 12:23am UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/10 "2026-02-12T00:23:23Z")

</div>

That should not be an issue.

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 12, 2026, 12:54am UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/11 "2026-02-12T00:54:35Z")

</div>

Thank you so much. Appreciate your great help. I will test it and let you know. After that I will close this topic.

Once again thank you much.

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 12, 2026, 4:28am UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/12 "2026-02-12T04:28:39Z")

</div>

Hi Wayne,

Following steps will be used during the upgrade on the REPLICA side.

1. Enable WRITE MODE with SET session sql\_log\_bin=0;

2. Uninstall all deprecated PLUGINS using UNISTALL and INSTALL statements

3. INSSTALL the PLUGINS using INSTALL PLUGIN (and NOT running any scripts)

4. Update the following parameters

5. Restart the instance

Please let me know the above steps are correct or needs any changes.

Thanks a lot for your help as always.

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 12, 2026, 12:29pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/13 "2026-02-12T12:29:13Z")

</div>

Those steps covered what we have been discussing, you should be good to go.

---

<div class="post-metadata">

**Author:** ![Ramasamy](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/ramasamy/32/16466_2.png) [@Ramasamy](https://forums.percona.com/u/Ramasamy)\
**Post date:** [February 12, 2026, 2:02pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/14 "2026-02-12T14:02:45Z")

</div>

Good morning Wayne. Forgot to include one more question. Since the audit filter tables available only after PRIMARY/SOURCE upgrade, I cannot run the following statements in REPLICA (before upgrading SOURCE)

SELECT audit\_log\_filter\_set\_filter

SELECT audit\_log\_filter\_remove\_user

SELECT audit\_log\_filter\_set\_user

SELECT audit\_log\_filter\_flush();

Am I correct?

---

<div class="post-metadata">

**Author:** ![Wayne\_Leutwyler](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/wayne_leutwyler/32/20829_2.png) [@Wayne\_Leutwyler](https://forums.percona.com/u/Wayne_Leutwyler)\
**Post date:** [February 12, 2026, 2:10pm UTC](https://forums.percona.com/t/upgrading-percona-server-from-8-0-44-to-8-4-7-on-gtid-based-replication-environments/40196/15 "2026-02-12T14:10:49Z")

</div>

You are correct. Let replication handle the audit\_log once you have the Source complete.
