在docker中安装mysql数据库,直接上代码,pull 并run
补充20190809===============
如果要挂载数据库实现数据持久化到本地的时候,会出现权限问题,这个原因是:
在执行mysql_install_db过程中,提示权限不足。下面的mysql是启动的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成功
补充20190809===============
直接用sqlyog连接报错如下:
通过容器进入mysql中
host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码
这也是为什么连接不上的原因
更改后
然后再次测试连接
连接上了。
当然我之前运行mysql的容器后就开放了宿主机3306端口