为何docker里su到mysql居然无效

我docker的启动容器脚本是这样:
`docker run -itd --name my-new -v /mydir:/mydir -v /etc/localtime:/etc/localtime -v /filesys:/filesys --net=host --privileged=true docker.io/centos /sbin/init
`

通过mysql官方rpm安装的mysql8.0.22。
安装完成后,默认会给系统创建一个mysql组和一个mysql的用户。
经确认,确实是有mysql这个用户:
​mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false​

然后,我通过su mysql,想切换到这个用户,发现,切换后,依然是原来的用户。。。。

这是什么玄学问题?是不是docker里要特殊操作?

docker
mysql
Linux
2023-03-23 13:12:17
833浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
超级马里奥64

知道了,原来​​/bin/false​​​表示该用户不能登录,
用这个命令​​​usermod -s /bin/bash mysql​​更换用户权限就可以。

mysql的官方真是恶搞,通过rpm安装的,默认不允许mysql用户登录。。。。

分享
微博
QQ
微信
回复
2023-03-23 14:19:48


相关问题
docker mysql容器一启动就关闭
3329浏览 • 1回复 待解决
docker容器内的MySQL、Redis无法连接
4080浏览 • 1回复 待解决
dockertelnet不通mongodb副本集
3517浏览 • 0回复 待解决
RDS MySQL8.0如何升级PolarDB MySQL?
3900浏览 • 1回复 待解决
insert中文 mysql的varchar失败
2376浏览 • 1回复 待解决
如何将docker容器中的文件复制主机?
3286浏览 • 1回复 待解决
docker 创建 redis 容器
3155浏览 • 1回复 待解决