为何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
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
超级马里奥64

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

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

分享
微博
QQ
微信
回复
2023-03-23 14:19:48
相关问题
dockertelnet不通mongodb副本集
2762浏览 • 0回复 待解决
docker mysql容器一启动就关闭
2461浏览 • 1回复 待解决
docker容器内的MySQL、Redis无法连接
3418浏览 • 1回复 待解决
RDS MySQL8.0如何升级PolarDB MySQL?
3095浏览 • 1回复 待解决
insert中文 mysql的varchar失败
1920浏览 • 1回复 待解决
如何将docker容器中的文件复制主机?
2449浏览 • 1回复 待解决
notifyDataChanged() 无效
6544浏览 • 4回复 待解决