构建MySQL(5.6.22)Docker镜像遇到的问题
2016-08-05 16:18
375 查看
遇到如下问题:
1、在构建镜像时,需要在my.cnf进行一些配置,比如bind-address=0.0.0.0,数据库大小写忽略等等
2、mysql第一次启动时,如果使用数据卷进行挂在,无法完成mysql的初始化动作,需要通过ssh链接进去手动执行初始化,然后执行容器的restart动作
3、在初始化正常启动后,需要修改用户的外部链接配置,否则外部是无法链接的Docker-mysql
# 修改root密码(因为默认密码为空)
mysql> use mysql;
mysql> UPDATE user SET Password=PASSWORD('your passwd') where USER='root';
mysql> FLUSH PRIVILEGES;
# 授权root账户远程登录,然后就可以通过navicat或者其他客户端工具连接到MySQL服务器了
mysql> grant ALL PRIVILEGES ON *.* to root@"%" identified by "root" WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
4、移植mysql数据库时,需要关注几个文件
如上图所示,红框内的文件是必须要进行移植的,绿框中的是需要移植的数据库
在docker容器间进行数据库移植,一定要确定版本的移植性
1、在构建镜像时,需要在my.cnf进行一些配置,比如bind-address=0.0.0.0,数据库大小写忽略等等
2、mysql第一次启动时,如果使用数据卷进行挂在,无法完成mysql的初始化动作,需要通过ssh链接进去手动执行初始化,然后执行容器的restart动作
3、在初始化正常启动后,需要修改用户的外部链接配置,否则外部是无法链接的Docker-mysql
# 修改root密码(因为默认密码为空)
mysql> use mysql;
mysql> UPDATE user SET Password=PASSWORD('your passwd') where USER='root';
mysql> FLUSH PRIVILEGES;
# 授权root账户远程登录,然后就可以通过navicat或者其他客户端工具连接到MySQL服务器了
mysql> grant ALL PRIVILEGES ON *.* to root@"%" identified by "root" WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
4、移植mysql数据库时,需要关注几个文件
如上图所示,红框内的文件是必须要进行移植的,绿框中的是需要移植的数据库
在docker容器间进行数据库移植,一定要确定版本的移植性
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- centos6.5上安装docker
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- docker容器的网络信息查看
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法