# Setup replication using mysqldump. Restore getting "Access to system schema 'mysql' is rejected."

**URL:** <https://forums.percona.com/t/setup-replication-using-mysqldump-restore-getting-access-to-system-schema-mysql-is-rejected/31229>\
**Category:** Percona Server for MySQL\
**Created:** [June 25, 2024, 11:44am UTC](https://forums.percona.com/t/setup-replication-using-mysqldump-restore-getting-access-to-system-schema-mysql-is-rejected/31229 "2024-06-25T11:44:35Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ipcmlr](https://avatars.discourse-cdn.com/v4/letter/i/df705f/32.png) [@ipcmlr](https://forums.percona.com/u/ipcmlr)\
**Post date:** [June 25, 2024, 11:44am UTC](https://forums.percona.com/t/setup-replication-using-mysqldump-restore-getting-access-to-system-schema-mysql-is-rejected/31229/1 "2024-06-25T11:44:35Z")

</div>

Hi,  
I was trying to sync a standby database using mysqldump.  
Dumped using “mysqldump --all-databases --master-data”

Running the restore I hit “ERROR 3552 (HY000) at line 48031: Access to system schema ‘mysql’ is rejected.”

Can i simply remove the “/_!40000 DROP DATABASE IF EXISTS `mysql`_/;” ?

Concerned that replication might not work if I remove the drop.

thanks

---

<div class="post-metadata">

**Author:** ![erpramodprajapat](https://avatars.discourse-cdn.com/v4/letter/e/c37758/32.png) [@erpramodprajapat](https://forums.percona.com/u/erpramodprajapat)\
**Post date:** [June 25, 2024, 1:29pm UTC](https://forums.percona.com/t/setup-replication-using-mysqldump-restore-getting-access-to-system-schema-mysql-is-rejected/31229/2 "2024-06-25T13:29:27Z")

</div>

> [@ipcmlr](#):
>
> remove the “/_!40000 DROP_

Yes , this removing this line , can be workaround

---

<div class="post-metadata">

**Author:** ![kedarpercona](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/kedarpercona/32/809_2.png) [@kedarpercona](https://forums.percona.com/u/kedarpercona)\
**Post date:** [June 26, 2024, 3:50am UTC](https://forums.percona.com/t/setup-replication-using-mysqldump-restore-getting-access-to-system-schema-mysql-is-rejected/31229/3 "2024-06-26T03:50:28Z")

</div>

Hi @ipcmlr ,

Even though this question is solved by commenting a “drop if exists” but have this consideration.

- You were trying to trying to sync a standby database using mysqldump from source.
- So you executed `mysqldump --all-databases --master-data`.
- Then you use the sql file thus generated on replica giving you error `Access to system schema ‘mysql’ is rejected`. ERROR 3552 (HY000) is a specific error code in MySQL that typically indicates an access restriction or permission issue related to system schemas.
- This hints that the SQL being executed are using user with not-enough-privileges?! Are you using user with limited privileges?  
Thanks,  
K

---

<div class="post-metadata">

**Author:** ![jinyou.ma](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/jinyou.ma/32/19714_2.png) [@jinyou.ma](https://forums.percona.com/u/jinyou.ma)\
**Post date:** [July 25, 2025, 4:29am UTC](https://forums.percona.com/t/setup-replication-using-mysqldump-restore-getting-access-to-system-schema-mysql-is-rejected/31229/4 "2025-07-25T04:29:10Z")

</div>

Hello @ipcmlr

Please check the mysqldump option `add-drop-database`

```auto
mysqldump --help | grep add-drop-database
  --add-drop-database Add a DROP DATABASE before each create.
add-drop-database FALSE

```

If the option is enabled, mysqldump will add query:

```auto
    snprintf(qbuf, sizeof(qbuf), "SHOW CREATE DATABASE IF NOT EXISTS %s",
             qdatabase);

    if (mysql_query(mysql, qbuf) || !(dbinfo = mysql_store_result(mysql))) {
      /* Old server version, dump generic CREATE DATABASE */
      if (opt_drop_database)
        fprintf(md_result_file, "\n/*!40000 DROP DATABASE IF EXISTS %s*/;\n",
                qdatabase);

```

The issue can be reproduced if the option is enabled.

```auto
shell> mysqldump --all-databases --master-data --add-drop-database=1 > all.sql
shell> mysql < all.sql
ERROR 3552 (HY000) at line 39: Access to system schema 'mysql' is rejected.

```
