点击上方“大数据躺过的坑”,选择“置顶公众号”

资源干货第一时间送达!

人生苦短,我愿分享。

本公众号【大数据躺过的坑】将秉持活到老学到老学习无休止的

交流分享开源精神,

汇聚于互联网和个人学习工作的精华干货知识,

一切来于互联网,反馈回互联网。

目前研究领域:

语言涉及:

Java、Scala、Python、Shell、Linux等 。

同时还涉及平常所使用的手机、电脑和

互联网上的使用技巧、问题和实用软件。

只要你一直关注和呆在群里,每天必须有收获。

本人个人博客:

本人个人Github:

有我最珍惜的你

给我最珍惜的你

—《九月哥每天在路上》

在本月(2018年10月)前面的博文里,我已经介绍了

对于Docker上安装最简单的单节点MySQL数据库组件,说在前面你可以安装不同镜像下的MySQL,本篇旨在带领大家做个引子。

后续,将撰写分享高级的MySQL集群,以及PXC(Percona XtraDB Cluster)集群。

Docker镜像安装mysql的好处:方便,容器间互不干扰,可以在同一主机上安装多个版本的mysql,只需要在主机上映射不同的端口即可。

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker search mysqlNAME                                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATEDmysql                                                  MySQL is a widely used, open-source relati...   7099      [OK]       mariadb                                                MariaDB is a community-developed fork of M...   2275      [OK]       mysql/mysql-server                                     Optimized MySQL Server Docker images. Crea...   517                  [OK]zabbix/zabbix-server-mysql                             Zabbix Server with MySQL database support       133                  [OK]hypriot/rpi-mysql                                      RPi-compatible Docker Image with Mysql          97                   zabbix/zabbix-web-nginx-mysql                          Zabbix frontend based on Nginx web-server ...   72                   [OK]centurylink/mysql                                      Image containing mysql. Optimized to be li...   59                   [OK]1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5   ubuntu-16-nginx-php-phpmyadmin-mysql-5          45                   [OK]centos/mysql-57-centos7                                MySQL 5.7 SQL database server                   39                   mysql/mysql-cluster                                    Experimental MySQL Cluster Docker images. ...   33                   tutum/mysql                                            Base docker image to run a MySQL database ...   32                   schickling/mysql-backup-s3                             Backup MySQL to S3 (supports periodic back...   23                   [OK]bitnami/mysql                                          Bitnami MySQL Docker Image                      19                   [OK]linuxserver/mysql                                      A Mysql container, brought to you by Linux...   17                   zabbix/zabbix-proxy-mysql                              Zabbix proxy with MySQL database support        15                   [OK]centos/mysql-56-centos7                                MySQL 5.6 SQL database server                   10                   circleci/mysql                                         MySQL is a widely used, open-source relati...   7                    openshift/mysql-55-centos7                             DEPRECATED: A Centos7 based MySQL v5.5 ima...   6                    mysql/mysql-router                                     MySQL Router provides transparent routing ...   5                    dsteinkopf/backup-all-mysql                            backup all DBs in a mysql server                5                    [OK]openzipkin/zipkin-mysql                                Mirror of ..   1                    jelastic/mysql                                         An image of the MySQL database server main...   1                    cloudposse/mysql                                       Improved `mysql` service with support for ...   0                    [OK]cloudfoundry/cf-mysql-ci                               Image used in CI of cf-mysql-release            0                    ansibleplaybookbundle/mysql-apb                        An APB which deploys RHSCL MySQL                0                    [OK][root@docker ~]#

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker search mysqlNAME                                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATEDmysql                                                  MySQL is a widely used, open-source relati...   7099      [OK]       mariadb                                                MariaDB is a community-developed fork of M...   2275      [OK]       mysql/mysql-server                                     Optimized MySQL Server Docker images. Crea...   517                  [OK]zabbix/zabbix-server-mysql                             Zabbix Server with MySQL database support       133                  [OK]hypriot/rpi-mysql                                      RPi-compatible Docker Image with Mysql          97                   zabbix/zabbix-web-nginx-mysql                          Zabbix frontend based on Nginx web-server ...   72                   [OK]centurylink/mysql                                      Image containing mysql. Optimized to be li...   59                   [OK]1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5   ubuntu-16-nginx-php-phpmyadmin-mysql-5          45                   [OK]centos/mysql-57-centos7                                MySQL 5.7 SQL database server                   39                   mysql/mysql-cluster                                    Experimental MySQL Cluster Docker images. ...   33                   tutum/mysql                                            Base docker image to run a MySQL database ...   32                   schickling/mysql-backup-s3                             Backup MySQL to S3 (supports periodic back...   23                   [OK]bitnami/mysql                                          Bitnami MySQL Docker Image                      19                   [OK]linuxserver/mysql                                      A Mysql container, brought to you by Linux...   17                   zabbix/zabbix-proxy-mysql                              Zabbix proxy with MySQL database support        15                   [OK]centos/mysql-56-centos7                                MySQL 5.6 SQL database server                   10                   circleci/mysql                                         MySQL is a widely used, open-source relati...   7                    openshift/mysql-55-centos7                             DEPRECATED: A Centos7 based MySQL v5.5 ima...   6                    mysql/mysql-router                                     MySQL Router provides transparent routing ...   5                    dsteinkopf/backup-all-mysql                            backup all DBs in a mysql server                5                    [OK]openzipkin/zipkin-mysql                                Mirror of ..   1                    jelastic/mysql                                         An image of the MySQL database server main...   1                    cloudposse/mysql                                       Improved `mysql` service with support for ...   0                    [OK]cloudfoundry/cf-mysql-ci                               Image used in CI of cf-mysql-release            0                    ansibleplaybookbundle/mysql-apb                        An APB which deploys RHSCL MySQL                0                    [OK][root@docker ~]#

镜像的ID是563a026a1511

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# cat /etc/docker/daemon.json{"registry-mirrors": ["http://5***2*4*.m.daocloud.io"]}[root@docker ~]#

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker pull mysql:5.75.7: Pulling from library/mysql802b00ed6f79: Pull complete 30f19a05b898: Pull complete 3e43303be5e9: Pull complete 94bae2: Pull complete 51eb397095b1: Pull complete 54567da6fdf0: Pull complete bc57ddb85cce: Pull complete c7c0a9c25d8a: Pull complete cce6c47ac3fc: Pull complete 499b9c7376c8: Pull complete 6c5e08e005ea: Pull complete Digest: sha256:7df993452a3b3dd4f8bcb704f66a0452849e8a9b22924f41cf5c25684a7af3feStatus: Downloaded newer image for mysql:5.7[root@docker ~]# [root@docker ~]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEmysql                       5.7                 563a026a1511        5 weeks ago         372MB[root@docker ~]#

我这里,是安装mysql:5.7,当然你也可以自行去安装其他版本,比如

daocloud.io/library/mysql:5.7或者mysql5.7.7,如下所示:

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEmysql                       5.7                 563a026a1511        5 weeks ago         372MBdaocloud.io/library/mysql   5.7.7               cf8a22028fe7        3 years ago         322MBmysql                       5.7.7               cf8a22028fe7        3 years ago         322MB[root@docker ~]#

容器的ID是78c4f52c3957

之前,这个知识点,其实我撰写分享过了。

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker run --name mysql5.7 -p 3306:3306 -v /my/mysql/datadir:/var/lib/mysql -v /my/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -d mysql:5.79fb869c301a0230ea8bfbc4716e83c08961e334e8729be6e159c80c4a3ae161e[root@docker ~]#

命令解析:

--name:容器名

--p:映射宿主主机的端口。   格式是主机的端口:容器的端口

-v:挂载宿主目录到容器目录

-e:设置环境变量,此处指定root密码,

-e MYSQL_ROOT_PASSWORD=就代表mysql的root的密码是root

-d:后台运行容器,使用镜像包名称,可以通过docker images查看。

restart=always, 告诉docker,这个容器要自动启动。

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker ps -aCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES9fb869c301a0        mysql:5.7           "docker-entrypoint..."   9 minutes ago       Up 9 minutes        0.0.0.0:3306->3306/tcp, 33060/tcp   mysql5.7[root@docker ~]# docker imagesREPOSITORY                  TAG                 IMAGE ID            CREATED             SIZEmysql                       5.7                 563a026a1511        5 weeks ago         372MB[root@docker ~]#             即,刚构建的MySQL镜像,启动的容器,镜像的名字是mysql:5.7,容器的名字为mysql5.7。同时,镜像的端口设置为3306,该对应的容器也为3306。容器的ID为9fb869c301a0 。                                                                                            同时,还可以看出,该容器已经Up  9 minutes ago 。

1、CONTAINER_ID:  表示容器ID

2、IMAGE:  表示镜像名称

3、COMMAND:   表示启动容器时运行的命令

4、CREATED:    表示容器的创建时间

5、STATUS:    表示容器运行的状态。UP表示运行中,EXITED表示已停止

6、PORTS:      表示容器对外的端口号

7、NAMES:    表示容器名称,该名称默认由Docker自动生成,也可使用docker run 命令的 -name 选项自行指定

容器的ID是78c4f52c3957

/**   @大数据躺过的坑【九月哥】所撰写*/[root@docker ~]# docker exec -it mysql5.7 /bin/bashroot@78c4f52c3957:/# mysql -uroot -proot -hlocalhostmysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.7.23 MySQL Community Server (GPL)Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

root用户:

/**   @大数据躺过的坑【九月哥】所撰写*/mysql> GRANT ALL PRIVILEGES ON *.* to 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> GRANT ALL PRIVILEGES ON *.* to 'root'@'docker' IDENTIFIED BY 'root' WITH GRANT OPTION;Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> GRANT ALL PRIVILEGES ON *.* to 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION;Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql> exit;Bye

/**   @大数据躺过的坑【九月哥】所撰写*/root@78c4f52c3957:/# mysql -uroot -proot -P3306 -hlocalhostmysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 4Server version: 5.7.23 MySQL Community Server (GPL)Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

docker用户:

/**   @大数据躺过的坑【九月哥】所撰写*/  mysql> create user 'docker' identified by 'docker';     //创建一个账号:用户名为docker,密码为dockerQuery OK, 0 rows affected (0.00 sec)mysql> GRANT ALL PRIVILEGES ON *.* to 'docker'@'%' IDENTIFIED BY 'docker' WITH GRANT OPTION;    //将权限授予host为%即所有主机的docker用户Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> GRANT ALL PRIVILEGES ON *.* to 'docker'@'docker' IDENTIFIED BY 'docker' WITH GRANT OPTION;     //将权限授予host为master的docker用户Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> GRANT ALL PRIVILEGES ON *.* to 'docker'@'localhost' IDENTIFIED BY 'docker' WITH GRANT OPTION;    //将权限授予host为localhost的docker用户Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql> exit;Bye

/**   @大数据躺过的坑【九月哥】所撰写*/root@78c4f52c3957:/# mysql -udocker -pdocker -P3306         mysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 9Server version: 5.7.23 MySQL Community Server (GPL)Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>   [1]+  Stopped                 mysql -udocker -pdocker -P3306root@78c4f52c3957:/#

对于Docker上安装最简单的单节点MySQL数据库组件,说在前面你可以安装不同镜像下的MySQL,本篇旨在带领大家做个引子。

后续,将撰写分享高级的MySQL集群,以及PXC(Percona XtraDB Cluster)集群。

大家都在看

生活不易,唯有努力。欠下的账,迟早是要还的。

觉得有用就转发分享一下吧

大家10月份的第二个周六愉快,与你前行

hadoop开发   :       2

大数据零基础入门 :  0

hadoop零基础入门:  0

大数据开发 :  9

本人个人博客:

本人个人Github:

【大数据和人工智能躺过的坑(总群)】

QQ技术交流群

一码不扫,何扫天下

如何加入大数据

大数据躺过的坑

一码不扫,何扫天下

如何加入Java架构师

Java从入门到架构师

一码不扫,何扫天下

如何加入人工智能

人工智能躺过的坑

一码不扫,何扫天下

本文版权归(大数据躺过的坑)作者和微信公众平台共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。 如果您认为这篇文章还不错或者有所收获,您可以通过下边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【点赞】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!

看完本文有收获?请转发分享给更多人

关注「大数据躺过的坑」,提升大神技能

超过10万+人正在关注

目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。语言涉及:Java、Scala、Python、Shell、Linux等。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件,热衷于分享开源技术,热爱开源、拥抱开源,我是90后九月哥,微信公众号:大数据躺过的坑,我为自己带盐,谁说90后不能活出精彩人生!!!

注意:此群是免费

如需入【Java从入门到架构师基础系列之从Java SE基础到项目实战(目前仅限在校大学生)】,关注公众号后台回复“Java从入门到架构师基础系列之Java SE微信付费交流群”

注意:此群是69元(2018年8月份入群)

~等你来撩我哦~

添加九月哥小助手个人微信号

解锁更多资源干货

记得替九月哥小助手把这波干货分享给小伙伴哦

不要忘记点赞,么么哒~

觉得不错,请点赞和留言