mysql - DRBD 所有权问题
问题描述
我有两个集群节点 server1 和 server2 在 CENTOS7 上运行,我配置了 DRBD。我在两台服务器上都运行了 DRBD,并且正在复制数据。问题是当我执行测试故障转移时,用户和组所有权(mysql:mysql)在安装在 server2 上时不一致,这导致 MySQL 在所有权手动更改为 mysql:msyql 之前无法启动。请帮忙。以前有人遇到过这个错误吗?
/proc/drbd server1:
[root@sis1 ~]# cat /proc/drbd
version: 8.4.11-1 (api:1/proto:86-101)
GIT-hash: 66145a308421e9c124ec391a7848ac20203bb03c build by mockbuild@, 2020-04-05 02:58:18
0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
ns:21101 nr:2070 dw:23171 dr:4377 al:8 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
/proc/drbd server2:
[root@sis2 ~]# cat /proc/drbd
version: 8.4.11-1 (api:1/proto:86-101)
GIT-hash: 66145a308421e9c124ec391a7848ac20203bb03c build by mockbuild@, 2020-04-05 02:58:18
0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r-----
ns:2070 nr:21101 dw:23171 dr:2916 al:2 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
解决方案
正如从原始帖子中的评论中已经确定的那样,我怀疑两个主机上 mysql 用户的 UID 和 GID 不匹配。因此,在故障转移后,文件归 node1 上 mysql 用户的 UID 所有,但不归 node2 上 mysql 用户所有。
确保两个主机上 mysql 用户(理想情况下是所有用户)的 UID 和 GID 匹配应该避免这个问题。
推荐阅读
- d3.js - 为什么这个 geojson 不使用 D3 渲染?
- python - 如何一次处理 1 亿 + 文本行
- python - 如何从参数传递的路径导入 Python 中的模块?
- delphi - 在 Windows 7 上使用 Delphi 2010 时的 IDE 下划线错误
- python - 使用 python 多处理池访问拆分文件,搜索字节流,然后连接值
- ansible - 当wait_for不够时等待服务在ansible中启动
- c# - .NET Core 2 构建在 .NET Core 3.1 中不起作用
- javascript - 使用 beforeProcessing 或 beforeRequest 事件显示消息
- powerbuilder - 如何使用快捷栏和 xplistbar 创建用户访问权限
- javascript - Javascript / TypeScript 订阅中使用 Promise 时的潜在竞争条件