技术文摘
不停止 MySQL 服务增加从库的两种方式
不停止MySQL服务增加从库的两种方式
在MySQL数据库管理中,不停止MySQL服务就能增加从库是一项非常实用的技能,这有助于减少对业务的影响,保证系统的持续运行。下面为大家详细介绍两种常用的方法。
基于复制(Replication)的方式
MySQL的复制功能允许将主库的数据变化复制到从库。在主库上需要进行一些配置。开启二进制日志功能,这可以在MySQL配置文件(通常是my.cnf或my.ini)中设置 log-bin=mysql-bin。然后,创建一个用于复制的用户,并授予其复制权限。例如,使用命令 GRANT REPLICATION SLAVE ON *.* TO'replication_user'@'%' IDENTIFIED BY 'password';,之后刷新权限 FLUSH PRIVILEGES;。获取主库的状态信息,执行 SHOW MASTER STATUS;,记录下文件名(File)和位置(Position)。
在从库上,同样要配置一些参数。配置 server-id,确保每个从库的 server-id 唯一。接着,使用主库的信息进行复制设置,命令格式为 CHANGE MASTER TO MASTER_HOST='master_host_ip', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='master_log_file_from_show_master_status', MASTER_LOG_POS=master_log_position_from_show_master_status;。最后,启动从库复制 START SLAVE;,并通过 SHOW SLAVE STATUS \G 检查复制状态。
使用克隆插件(Clone Plugin)
MySQL 8.0引入了克隆插件,极大简化了从库的添加过程。首先,确保主库和从库都安装并启用了克隆插件。在从库上,执行 INSTALL PLUGIN clone SONAME 'libmysqlclone.so';。
然后,在从库上使用 CLONE INSTANCE FROM 语句来克隆主库。例如,CLONE INSTANCE FROM user@host:port IDENTIFIED BY 'password';。在克隆过程中,从库会连接到主库,获取数据并应用必要的配置。克隆完成后,从库就拥有了与主库相同的数据,并且可以开始接收主库后续的变更。
不停止MySQL服务增加从库的这两种方式各有特点,复制方式灵活且兼容性广,克隆插件则更为简便高效。数据库管理员可以根据实际情况选择合适的方法,以满足业务对数据库扩展的需求,同时保障系统的稳定运行。
TAGS: 增加从库 mysql服务管理 不停止MySQL服务 MySQL从库添加方式
- 打造首个 GraalVM 应用镜像,畅享毫秒级极速启动
- 从 ELK/EFK 至 PLG,日志框架该换了
- TIOBE 10 月编程语言排行出炉:Java 占比降 3.92% 居第四,C++ 跃至第三
- Spring Boot 中订单 30 分钟自动取消的实现策略
- 深入剖析 Python 元组(二)
- Python Web 框架的三大巨头:Flask、Django 与 FastAPI
- TIOBE 十月榜单:Java 降幅居首,C# 紧逼 Java
- Java 编程中必知的五条 SOLID 原则
- 25 个 2023 年全新 IntelliJ IDEA 插件(上)
- 为何学编程应优先选择 Python ?
- Python 是否无敌?Kotlin 能否逆袭?TIOBE 9 月编程语言排行榜出炉
- Python 强制缩进的优劣及看法
- Python 中 30 个常见内置函数使用解析(二)
- Python JSON 解码:从基础至高级,领悟使用核心
- 三招助程序员成为代码调试高手