docker连不上宿主机mysql_Docker从宿主机挂载卷到Mysql镜像之坑

在尝试将宿主机的MySQL数据目录挂载到Docker容器中进行持久化时,遇到权限错误无法读取数据目录。错误信息为ERROR 1018 (HY000): Can't read dir of '.' (errno: 13 - Permission denied)。解决方案是通过`chown -R mysql:mysql /var/lib/mysql`命令将数据目录权限改回mysql用户和组。确保知道自己的MySQL数据目录,可以使用`mysql> show variables like '%dir%'`查询。
摘要由CSDN通过智能技术生成

想实现容器内数据持久化,于是把宿主机的mysql数据挂载到了容器内,结果,后来发现mysql show databases都提示ERROR 1018 (HY000): Can't read dir of '.' (errno: 13 - Permission denied)

百度了下说是人为操作修改了mysql datadir的权限,还好之前看到过一篇帖子说,挂载了之后要手动修改回原来的root用户和组。chown -R mysql:mysql /var/lib/mysql #/your/path/to/datadir

我的/var/lib/mysql是我的mysql datadir,你的不一定和我一样,可以通过以下命令进入mysql中查询:mysql> show variables like '%dir%';

+-----------------------------------------+----------------------------+

| Variable_name                           | Value                      |

+-----------------------------------------+----------------------------+

| basedir                                 | /usr/                      |

| binlog_direct_non_transactional_updates | OFF                        |

| character_sets_dir                      | /usr/share/mysql/charsets/ |

| datadir                                 | /var/lib/mysql/            |

| ignore_db_dirs                          |                            |

| innodb_data_home_dir                    |                            |

| innodb_log_group_home_dir               | ./                         |

| innodb_max_dirty_pages_pct              | 75.000000                  |

| innodb_max_dirty_pages_pct_lwm          | 0.000000                   |

| innodb_tmpdir                           |                            |

| innodb_undo_directory                   | ./                         |

| lc_messages_dir                         | /usr/share/mysql/          |

| plugin_dir                              | /usr/lib/mysql/plugin/     |

| slave_load_tmpdir                       | /tmp                       |

| tmpdir                                  | /tmp                       |

+-----------------------------------------+----------------------------+

15 rows in set (0.00 sec)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值