码迷,mamicode.com
首页 > 数据库 > 详细

Docker安装Mysql

时间:2019-12-28 00:02:58      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:命名   ima   docker   run   data   director   option   etc   alter   

1、搜索镜像

docker search mysql

技术图片

2、拉取镜像

docker pull mysql

技术图片

3、查看镜像

docker images

技术图片

4、创建目录

mkdir -p /software/mysql/logs
mkdir -p /software/mysql/data
mkdir -p /software/mysql/conf
mkdir -p /sofrware/mysql/mysql-files

技术图片

 技术图片

5、docker运行命令相关参数

–name:容器名,此处命名为mysql
-e:配置信息,此处配置mysql的root用户的登陆密码
-p:端口映射,此处映射 主机3306端口 到 容器的3306端口
-d:源镜像名,此处为 mysql
-v:主机和容器的目录映射关系,":"前为主机目录,之后为容器目录
不建立目录映射
docker run -p 3306:3306 --name mysql  -e MYSQL_ROOT_PASSWORD=123456 -d mysql

建立目录映射

  docker run -p 3306:3306 --name mysql \
  -v /software/mysql/conf:/etc/mysql \
  -v /software/mysql/logs:/var/log/mysql \
  -v /software/mysql/data:/var/lib/mysql \
  -v /software/mysql/mysql-files:/var/lib/mysql-files \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -d mysql

6、使用目录映射

 技术图片

7、查看运行

docker ps

技术图片

8、进入容器控制台

docker exec -it mysql bash

docker exec :在运行的容器中执行命令
语法
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
-d :分离模式: 在后台运行
-i :即使没有附加也保持STDIN 打开
-t :分配一个伪终端

技术图片

9、进入数据库,没有密码

mysql -h 127.0.0.1 -u root -p

 技术图片

 10、查询mysql版本

select version();

技术图片

 11、修改用户名

ALTER user root@localhost IDENTIFIED BY Test1234567!

技术图片

12、查看用户名、密码

select host,user,authentication_string from mysql.user;

技术图片

13、修改访问

update mysql.user set host=% where user=root;

技术图片

 14、查看docker 信息

docker inspect mysql

技术图片

 15、创建远程访问用户

创建用户
create user test@% identified  by Test1234567!;
授权
grant all privileges on *.* to test@% with grant option;
刷新
flush privileges;

报错

技术图片

 

 

因为mysql8使用的是caching_sha2_password加密规则,最简单的方法是修改远程连接用户的加密规则:
ALTER USER test@% IDENTIFIED WITH mysql_native_password BY Test1234567!;

技术图片

 

 

 

16、成功连接

 

 技术图片

 

 

 

错误:

mysqld: Error on realpath() on ‘/var/lib/mysql-files‘ (Error 2 - No such file or director

解决方法:

      当指定了外部配置文件与外部存储路径时,也需要指定 /var/lib/mysql-files的外部目录,

  所以在主机新建/software/mysql/mysql-files目录,

  在启动容器时 需要加上

  -v /software/mysql/mysql-files:/var/lib/mysql-files \








Docker安装Mysql

标签:命名   ima   docker   run   data   director   option   etc   alter   

原文地址:https://www.cnblogs.com/xuchen0117/p/12102997.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!