搜索

pdf文档 使用 Docker 建立 MySQL 集群

103.32 KB 3 页 5 下载 183 浏览 0 评论 0 收藏
所属分类: 数据库 / MySQL
语言 格式 评分
中文(简体)
.pdf
3
摘要
本文档详细介绍了在 Ubuntu 系统上使用 Docker 建立 MySQL 集群的过程。主要内容包括 Docker 的安装与配置、Mariadb 数据库的运行与容器化管理、主从数据库的配置与同步。文档提供了具体的命令示例和环境变量设置,确保读者能够通过 Docker 创建高可用性的数据库集群,并通过主从复制实现数据同步。
AI总结
# 使用 Docker 建立 MySQL 集群总结 ## 软件环境 - 操作系统:Ubuntu Server 64bit 14.04.1 - Docker 版本:1.6.2 - 数据库:Mariadb 10.10(MySQL 的分支,性能优于 MySQL 开源版本) ## 安装 Docker - **Ubuntu**:直接联网安装最新版本,使用脚本 `wget https://get.docker.com` 安装。 - **CentOS 6**:先安装 EPEL 源,再安装 Docker-io。 ## 运行 Mariadb 容器 1. 拉取 Mariadb 镜像:`docker pull mariadb:latest` 2. 启动容器时注意事项: - 配置容器名称(`--name`) - 设置 ROOT 密码环境变量(`-e MYSQL_ROOT_PASSWORD`) - 映射端口(`-p`) - 指定数据存储目录(`-v`) - 可选:设置数据库用户、密码、数据库名等环境变量(`MYSQL_USER`、`MYSQL_PASSWORD`、`MYSQL_DATABASE`) - 解决控制台问题:设置 `TERM=linux` 环境变量 3. 示例运行命令: ```bash docker run --name mdb1 \ -p 13306:3306 \ -v /home/wonders/docker_mdb1_data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=wondersgroup \ -e MYSQL_USER=medical_waste \ -e MYSQL_PASSWORD=medical_waste \ -e MYSQL_DATABASE=medical_waste \ -e TERM=linux \ -d mariadb ``` ## 配置一主一从集群 1. 启动从数据库容器: ```bash docker run --name mdb2 \ -e MYSQL_ROOT_PASSWORD=slave_password \ --link mdb1:master_db \ -d mariadb ``` 2. 修改主从数据库的配置: - 在容器内安装 `vim`(`apt-get update && apt-get install vim`) - 修改主数据库的 `my.cnf`:`server-id = 1` - 修改从数据库的 `my.cnf`:`server-id = 2` - 重启容器 3. 配置主从同步: - 在主数据库中创建同步账号并授权: ```sql GRANT REPLICATION SLAVE ON *.* TO 'sync'@'%' IDENTIFIED BY 'sync'; FLUSH PRIVILEGES; SHOW MASTER STATUS; # 记录 File 和 Position 值 ``` - 在从数据库中配置主数据库信息并启动同步: ```sql STOP SLAVE; CHANGE MASTER TO master_host='master_db', master_user='sync', master_password='sync', master_port=3306, master_log_file='mariadb-bin.000004', master_log_pos=789; START SLAVE; ``` - 查看同步状态:`SHOW SLAVE STATUS;` ## 注意事项 - 建议将运行命令写成脚本,便于多次测试和调整。 - 使用 `docker inspect` 查看容器详细信息,确保配置符合要求。 - 如需修改容器镜像,可使用 `docker commit` 保存修改后的镜像。 通过以上步骤,可以快速搭建一个基于 Docker 的 Mariadb 数据库集群,实现主从复制和数据同步。
P1
P2
P3
下载文档到本地,方便使用
文档评分
请文明评论,理性发言.