如何实现阿里云MySQL服务器配置成从服务器?[阿里云数据库MySQL版]

我想实现一个主从备份,本地MySQL数据库做为主数据库,阿里云MySQL做为从数据库。我用下面这段来实现从数据库备份时,提示权限不够

change master to master_host = 'xxx', master_port = 3306, master_user = 'xxx', master_password='xxx', master_auto_position = 1;

问题如下

ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER or REPLICATION_SLAVE_ADMIN privilege(s) for this operation

跟阿里云那边沟通后说为了安全考虑不能授予最高权限,请问有其他方案解决阿里云做为从数据库吗?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
8 条回复 A 作者 M 管理员
  1. 目前阿里云rds无法直接完成你想做的这个操作,因为超级权限没有开放给用户。 你可以提工单咨询一下,看后台是否能帮你做处理,如果不能,建议用阿里云的数据传输服务DTS,配置很简单,实时性和稳定性也都很好。

  2. 是的,为了安全起见,阿里云MySQL不允许用户通过普通的账号授予REPLICATION_SLAVE_ADMIN权限。但是,您可以通过以下两种方式来实现主从备份:

    1. 使用binlog复制:在主数据库中开启binlog,并将binlog传输到从数据库中,然后在从数据库中通过读取binlog的方式来同步主数据库的数据。这种方式不需要授予REPLICATION_SLAVE_ADMIN权限,并且可以通过普通的账号实现备份。您可以参考MySQL官方文档中的相关部分来了解如何使用binlog复制。

    2. 使用阿里云RDS的数据同步服务:阿里云RDS提供了数据同步服务,可以将主数据库的数据同步到备份数据库中。该服务不需要授予REPLICATION_SLAVE_ADMIN权限,并且可以实现自动同步和实时备份。您可以在阿里云RDS控制台中开通数据同步服务,并根据需要进行配置和管理。

    综上所述,您可以选择以上两种方式来实现主从备份,以便在不授予REPLICATION_SLAVE_ADMIN权限的情况下完成数据备份。

  3. 阿里云MySQL服务器支持配置成从服务器,实现主从复制功能。具体操作如下:

    1. 登录阿里云MySQL数据库控制台,在左侧导航栏中选择“实例列表”,然后选择需要配置成从服务器的MySQL实例。

    2. 进入实例详情页,点击“主备复制”模块,然后点击“创建实例”按钮。

    3. 在创建实例页面中,选择从实例类型,然后设置相应的配置信息,包括实例名称、地域、可用区、规格等。在“付费”选项卡中选择相应的计费方式和时长,然后点击“立即购买”按钮。

    4. 在创建从实例之后,需要在主实例的控制台中配置主从复制功能。在实例详情页,点击“主备复制”模块,然后在“从实例”列表中找到新创建的从实例,并点击“添加从实例”按钮。

    5. 在“添加从实例”页面中,选择从实例类型并选择新建的从实例,在“复制对象”区域中选择需要进行主从复制的数据库和表,然后在“同步延迟检查”选项卡中设置同步延迟检查的时间,并点击“确定”按钮。

    6. 等待主从复制配置生效后,你就可以在新的从实例中进行数据库的读取和查询操作了。

    配置主从复制功能后,主实例和从实例之间会产生一定的网络流量和数据传输开销,如果数据库负载较高或访问频率较高,可能会导致主从同步延迟或数据传输失败等问题。因此,需要合理规划数据库的负载和访问模式,以保证主从复制功能的稳定和可靠性。

  4. 出现这个问题是因为在执行 “change master” 命令时需要 SUPER 或 REPLICATION_SLAVE_ADMIN 权限,而对于阿里云 MySQL 实例,你只拥有普通的用户权限。

    如果你想要实现主从备份,可以考虑使用阿里云提供的 RDS 备份服务。 RDS 提供了自动备份和手动备份两种方式,可以满足你的需求。具体操作步骤请参考阿里云 RDS 官方文档。

    另外,如果你想要自己搭建主从备份环境,你需要获取超级管理员权限或者 REPLICATION_SLAVE_ADMIN 权限才能执行 “change master” 命令。