首先创建复制账号并授予权限,使用CREATE USER和GRANT REPLICATION SLAVE命令;然后在主库配置文件中设置server-id、开启log-bin并指定binlog-format为ROW;重启MySQL服务后执行SHOW MASTER STATUS记录File和Position值,供从库CHANGE MASTER TO时使用,确保网络通畅且无server-id冲突即可建立复制。

在 MySQL 中配置复制(Replication)时,需要为从库(Slave)创建一个专用的复制账号,并赋予相应的权限。这个账号用于主库和从库之间的数据同步。以下是具体配置步骤和权限设置说明。
创建复制账号
登录到主库的 MySQL 实例,使用具有管理员权限的账户(如 root)执行以下命令:
CREATE USER 'repl'@'%' IDENTIFIED BY 'your_password';
其中 repl 是复制账号的用户名,% 表示允许从任意 IP 连接,生产环境中建议限制为从库的实际 IP,例如 ‘repl’@’192.168.1.10’,以提高安全性。
授予复制权限
复制账号需要具备 REPLICATION SLAVE 权限,这是 MySQL 中专门用于复制的权限类型:
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
该权限允许从库连接主库并读取二进制日志(binary log)进行数据同步。不需要赋予其他额外权限如 SELECT 或 ALL PRIVILEGES,除非有特殊需求。
执行完后刷新权限:
FLUSH PRIVILEGES;
主库开启二进制日志和 server-id
确保主库已启用二进制日志(Binary Logging)并设置了唯一的 server-id。在主库的配置文件 my.cnf 或 my.ini 中添加或确认以下内容:
腾讯交互翻译
腾讯AI Lab发布的一款AI辅助翻译产品
183 查看详情
[mysqld]server-id = 1log-bin = mysql-binbinlog-format = ROW
重启 MySQL 服务使配置生效。其中 binlog-format = ROW 推荐用于基于行的复制,更安全且兼容性好。
查看主库二进制日志状态
配置完成后,运行以下命令查看主库当前的二进制日志位置,后续从库配置时会用到:
SHOW MASTER STATUS;
输出示例如下:
+------------------+----------+--------------+------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+------------------+| mysql-bin.000003 | 123456 | | |+------------------+----------+--------------+------------------+
记录下 File 和 Position 值,用于从库的 CHANGE MASTER TO 命令。
基本上就这些。只要账号权限正确、网络通、主库日志开启,复制就能顺利建立。不复杂但容易忽略细节,比如防火墙或 server-id 冲突。配置完成后,在从库使用 CHANGE MASTER TO 指定主库地址、账号、密码及日志位置即可启动复制。
以上就是mysql如何配置复制账号权限的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/939138.html
微信扫一扫
支付宝扫一扫