MySQL 8.0 for docker安装

前言

工作中经常使用MySQL for Docker进行测试,在此记录下简单步骤。文件内容根据个人实际情况进行修改。

1.Dockerfile

1.1.文件介绍

MySQL 8.0 for docker安装

 文件介绍:

  • Dockerfile:创建docker所使用的剧本。
  • init.sql:创建MySQL后运行的SQL。
  • my.cnf:MySQL的参数文件。
  • pantao_demon.sql:测试数据。
  • run.sh:创建docker镜像、docker容器的脚本。
  • steup.sh:运行*.sql文件的脚本。

1.2.文件内容

MySQL 8.0 for docker安装
1 FROM mysql:8
2 RUN mkdir -p /mysql
3 COPY my.cnf /etc/mysql
4 COPY init.sql /mysql
5 COPY pantao_demo.sql /mysql
6 COPY steup.sh /docker-entrypoint-initdb.d
7 RUN chmod a+x /docker-entrypoint-initdb.d/steup.sh
Dockerfile
MySQL 8.0 for docker安装
1 CREATE DATABASE IF NOT EXISTS `db_pantao`;
2 CREATE USER userm@localhost IDENTIFIED with "mysql_native_password" BY 123456;
3 GRANT ALL PRIVILEGES ON *.* TO root@%WITH GRANT OPTION;
4 FLUSH PRIVILEGES;
5 GRANT all ON db_pantao.* TO userm@localhost;
6 GRANT all ON db_pantao.* TO root@%;
7 
8 use db_pantao;
9 drop table if exists `user`;
init.sql
MySQL 8.0 for docker安装
1 [mysqld]
2 pid-file        = /var/run/mysqld/mysqld.pid
3 socket          = /var/run/mysqld/mysqld.sock
4 datadir         = /var/lib/mysql
5 secure-file-priv= NULL
6 default_authentication_plugin = mysql_native_password
my.cnf
MySQL 8.0 for docker安装
1 #!/bin/bash
2 echo "start build image ..."
3 docker build -t mysql:v1.0 .
4 echo "build success .."
5 sleep 3
6 echo "start run image ..."
7 docker run --name test -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:v1.0
8 echo " success .."
run.sh
MySQL 8.0 for docker安装
1 #!/bin/bash
2 mysql -uroot -p$MYSQL_ROOT_PASSWORD <<EOF
3 source /mysql/init.sql;
4 source /mysql/pantao_demo.sql;
steup.sh

1.3.创建Docker

[root]# sh run.sh

 

MySQL 8.0 for docker安装

上一篇:MySQL_01


下一篇:初识Mysql触发器