docker中mysql数据库

时间:2022-08-10 09:30:40

在docker中安装mysql数据库,直接上代码,pull 并run

docker中mysql数据库

补充20190809===============

如果要挂载数据库实现数据持久化到本地的时候,会出现权限问题,这个原因是:

在执行mysql_install_db过程中,提示权限不足。下面的mysql是启动的mysql容器别名

docker中mysql数据库

Centos7安全Selinux禁止了一些安全权限,导致mysql和mariadb在进行挂载/var/lib/mysql的时候会提示以上信息。解决方法如下:
1. 在docker run中加入 –privileged=true 给容器加上特定权限
2. 关闭selinux
3. 在selinux添加规则,修改挂载目录

然后我们执行docker run --name mysql  -p 3307:3360 -v /data/docker/mysqldb/:/var/lib/mysql/ --privileged=true  -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest成功

docker中mysql数据库

补充20190809===============

docker中mysql数据库

直接用sqlyog连接报错如下:

docker中mysql数据库

通过容器进入mysql中

docker中mysql数据库

docker中mysql数据库

host为 % 表示不限制ip   localhost表示本机使用    plugin非mysql_native_password 则需要修改密码

这也是为什么连接不上的原因

docker中mysql数据库

更改后

docker中mysql数据库

然后再次测试连接

docker中mysql数据库

连接上了。

当然我之前运行mysql的容器后就开放了宿主机3306端口