Docker安装MySQL数据库
本文翻译自:MySQL Docker Containers:Understanding the basics
1.下载MySQL镜像
docker pull mysql:5.6

如此便可以下载最新的MySQL镜像,通过查看下载的镜像列表查看验证

如果列表有显示,说明Docker已经下载了对应的MySQL镜像。
2.安装镜像
- --name:运行后Container的名称
- -e:环境变量(也写作-env)
- -d:后台运行不退出
- tag:版本号,此处为8.0(mysql),如果缺省则对应latest
docker run --name=mysqldb -p=3306:3306 --env="MYSQL_ROOT_PASSWORD=longtao" mysql:5.6
将Mysql配置文件映射到本机
docker run --name mysqldb -p : -v $PWD/conf/my.cnf:/etc/my.cnf.d/ -v $PWD/logs:/logs -v $PWD/data:/data -e MYSQL_ROOT_PASSWORD=longtao -d mysql:8.0
对于MySQL8.0以上的版本,报错:Authentication plugin 'caching_sha2_password' cannot be loaded ,解决办法:
docker run --name mysqldb -p : -v $PWD/conf/my.cnf:/etc/my.cnf.d/ -v $PWD/logs:/logs -v $PWD/data:/data -e MYSQL_ROOT_PASSWORD=longtao -d mysql:8.0 --default-authentication-plugin=mysql_native_password
MySQL默认编码方式不是UTF8,可以在安装时修改指令
docker run --name mysqldb3307 -p 3306:3306 -v $PWD/conf/my.cnf:/etc/my.cnf.d/ -v $PWD/logs:/logs -v $PWD/data:/data -e MYSQL_ROOT_PASSWORD=longtao -d mysql:8.0 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password
3.安装PostGreSQL
docker run --name=postgredb -p=: -env="POSTGRES_PASSWORD=longtao" -d postgres:11.1

4.常见错误
错误1:未设置环境变量

错误2:navicat无法连接

进入mysql容器
docker exec -it <63c9e29aelef(容器id)> bash
进入容器
mysql --user=root --password
然后根据密码提示输入mysql密码
然后输入下面的命令,注意修改密码(newpassword)
ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY 'newpassword';
错误3:容器时区问题
docker exec -it <容器名> /bin/bash
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
docker restart <容器名>
参考
Docker MySql报2059错误: Authentication plugin 'caching_sha2_password' cannot be loaded
Docker安装MySQL数据库的更多相关文章
- Docker学习实践 - Docker安装MySql数据库
Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...
- Docker安装Mysql数据库容器(zz)
zz自:http://blog.csdn.net/chengxuyuanyonghu/article/details/54380032 1.下载mysql的镜像: sudo docker pull m ...
- docker 安装mysql数据库 <二>
一.下载mysql数据库 #网易镜像中心https://c.163.com/hub#/m/home/ #采用网易加速地址,不加速时下载非常的慢 docker pull hub.c..com/libra ...
- 使用Docker安装Mysql
最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...
- Windows10系统的Linux子系统中安装MySQL数据库心得
后端开发童鞋们, 自己开发机用的是Windows系统电脑(台式机或笔记本), 而开发的程序和使用的数据库等要运行在Linux服务器上, 这种情况有木有? 提前声明: 本文并不讨论操作系统的比较, 以及 ...
- mycat 1.6.6.1安装以及配置docker 安装mysql 5.7.24 双主多从读写分离主主切换
mycat和mysql的高可用参考如下两个图 简介:应用程序仅需要连接HAproxy或者mycat,后端服务器的读写分离由mycat进行控制,后端服务器数据的同步由MySQL主从同步进行控制. 服务器 ...
- Docker 安装mysql、oracle
来源:唐山网站优化 Docker 安装mysql.oracle 使用ssh工具登录docker docker 的ip一般默认为192.168.99.100可以通过安装docker-machine之后, ...
- CentOS 中利用docker安装MySQL
1.前提条件 centos7 且内核版本高于3.10, 可通过命令: uname -r 查看内核版本 2.利用yum 安装docker 安装一些必要的系统工具: sudo yum install -y ...
- docker中mysql数据库
在docker中安装mysql数据库,直接上代码,pull 并run 补充20190809=============== 如果要挂载数据库实现数据持久化到本地的时候,会出现权限问题,这个原因是: 在执 ...
随机推荐
- 【北航软件工程】Alpha阶段前端页面编写及服务器部署
前端页面编写 虽然之前对html语法有过一些了解,但是完全没有编写前端页面的经验,和我合作的czy大概也是这么个情况.在Alpha阶段的前端页面编写过程中,我们是摸着石头过河,html是个入门很快专精 ...
- Python Revisited Day 05(模块)
目录 5.1 模块与包 5.1.1 包 5.2 Python 标准库概览 5.2.1 字符串处理 io.StringIO 类 5.2.3 命令行设计 5.2.4 数学与数字 5.2.5 时间与日期 5 ...
- java基础-不用ide如何打包
java基础-不用ide如何打包 1. 建立目录 src存放源文件 classes存放编译文件 2. 建立类文件 主类 package test.ant; import test.ant.MyTool ...
- Photoshop调出清晰的阴雨天气山水风景照
既然我们前期拍摄到了一张效果还不错的照片,那么下一步就是通过后期处理得到最终的影像. 在处理之前,我们一定要做到胸有成竹,而不是盲目调整. 也就是说在还没调整照片的时候,就要计划和预想到最终的照片应该 ...
- 使用IDEA2017在Windows下编程并测试Hadoop2.7+Spark2.2+Azkaban
1. 下载好IDEA HADOOP SPARK 首先,配置IDEA, 在插件管理中使用IDEA在线库安装scala插件, 在在线库直接搜索即可; 其次,配置Maven选项, 将Maven添加到IDEA ...
- ABP中的模块初始化过程(一)
在总结完整个ABP项目的结构之后,我们就来看一看ABP中这些主要的模块是按照怎样的顺序进行加载的,在加载的过程中我们会一步步分析源代码来进行解释,从而使自己对于整个框架有一个清晰的脉络,在整个Asp. ...
- poj 3764 The xor-longest Path (01 Trie)
链接:http://poj.org/problem?id=3764 题面: The xor-longest Path Time Limit: 2000MS Memory Limit: 65536K ...
- Magento2 Service contracts 服务合同
服务合同 Magento是一个模块化系统,它使第三方开发人员能够定制和覆盖其框架的核心部分.然而,这种灵活性是有代价的. 业务逻辑倾向于泄漏Magento系统的各个层,这表现为重复且不一致的代码. 商 ...
- Oracle jdbc 连接
所需jar包: ojdbc6.jar 下载地址:https://download.csdn.net/download/xc_oo0/10897959 示例代码: package cnblogs.com ...
- Django---ORM框架
一.get请求和post请求 GET请求: 1. 浏览器请求一个页面2. 搜索引擎检索关键字的时候 POST请求:1. 浏览器向服务端提交数据,比如登录/注册等 HTTP中GET与POST的区别 ht ...