Docker上运行MySQL服务
1.搜索MySQL镜像
$ docker search mysql
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/mysql MySQL is a widely used, open-source relati... [OK]
docker.io docker.io/mariadb MariaDB is a community-developed fork of M... [OK]
docker.io docker.io/mysql/mysql-server Optimized MySQL Server Docker images. Crea... [OK]
docker.io docker.io/percona Percona Server is a fork of the MySQL rela... [OK]
备注:STARS数最多,OFFICIAL是[OK]的这个就是官方的centos镜像。
2.下载MySQL镜像
$ docker pull docker.io/mysql
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/mysql latest 5195076672a7 weeks ago 371.4 MB
3.运行容器
$ docker run -d --name liying-mysql -e MYSQL_ROOT_PASSWORD=attack docker.io/mysql
$ docker exec -it liying-mysql /bin/bash ##进入容器
4.进入mysql
root@3d21d8918d31:/# mysql -u root -pattack
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
Server version: 5.7. MySQL Community Server (GPL) Copyright (c) , , Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
rows in set (0.00 sec)
以上就创建了一个mysql的docker容器,可以看到版本为5.7.21。但是这样创建的容器有两个问题,一是容器删除后,数据就丢失了,二是要访问数据库,必须进入到容器里面才可以。
5.持久化数据,映射开放mysql端口
a、创建宿主机数据存放目录
$ mkdir -p /opt/data/mysql
b、启动容器
$ docker run -d -v /opt/data/mysql/:/var/lib/mysql -p 3306:3306 --name liying-mysql -e MYSQL_ROOT_PASSWORD=attack docker.io/mysql
$ docker logs liying-mysql ##查看日志
$ docker ps #查看容器
c、查看端口
$ lsof -i:3306
d、查看宿主机上的mysql数据
$ cd /opt/data/mysql
$ ll
总用量
-rw-r-----. systemd-bus-proxy input 4月 : auto.cnf
-rw-------. systemd-bus-proxy input 4月 : ca-key.pem
-rw-r--r--. systemd-bus-proxy input 4月 : ca.pem
-rw-r--r--. systemd-bus-proxy input 4月 : client-cert.pem
-rw-------. systemd-bus-proxy input 4月 : client-key.pem
-rw-r-----. systemd-bus-proxy input 4月 : ib_buffer_pool
-rw-r-----. systemd-bus-proxy input 4月 : ibdata1
-rw-r-----. systemd-bus-proxy input 4月 : ib_logfile0
-rw-r-----. systemd-bus-proxy input 4月 : ib_logfile1
-rw-r-----. systemd-bus-proxy input 4月 : ibtmp1
drwxr-x---. systemd-bus-proxy input 4月 : mysql
drwxr-x---. systemd-bus-proxy input 4月 : performance_schema
-rw-------. systemd-bus-proxy input 4月 : private_key.pem
-rw-r--r--. systemd-bus-proxy input 4月 : public_key.pem
-rw-r--r--. systemd-bus-proxy input 4月 : server-cert.pem
-rw-------. systemd-bus-proxy input 4月 : server-key.pem
drwxr-x---. systemd-bus-proxy input 4月 : sys
-p 3306:3306->把容器的mysql端口3306映射到宿主机的3306端口,这样想访问mysql就可以直接访问宿主机的3306端口。
-v /opt/data/mysql:/var/lib/mysql->把宿主机/opt/data/mysql/目录映射到容器的/var/lib/mysql目录
注意事项:
在使用-v选项映射目录时,宿主机需关闭SElinux:
$ setenforce 0
6、Navicat for MySQL客户端访问mysql
Docker上运行MySQL服务的更多相关文章
- docker上运行mysql服务器
1.搜索MySQL镜像 $ docker search mysql INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED docker.io docker.i ...
- MySQL 安装和启动服务,“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”
MySQL 安装和启动服务,以及遇到的问题 MySQL版本: mysql-5.7.13-winx64.zip (免安装,解压放到程序文件夹即可,比如 C:\Program Files\mysql-5. ...
- 在Docker上构建mysql容器
1.查看docker上的镜像是否有 mysql,如果没有下载则列表中没有 [root@holly holly]# docker images; 如果没有只会看到如下结构 REPOSITORY TA ...
- .NET Core 3.0 部署在docker上运行
自从.NET Core3.0发布之后,写了几篇关于.NET Core 3.0的文章,有助于你快速入门.NET Core3.0. 本篇文章主要讲解如何一步步创建一个mvc项目,然后发布并部署在Docke ...
- 在OSX和Windows版本Docker上运行GUI程序
看到很多人在Docker问题区讨论:如何在OS X和Windows的Docker上运行GUI程序, 随手记录几个参考资料: https://github.com/docker/docker/issue ...
- 不能够连接到主机(名称为localhost)上的MySQL服务”
不能够连接到主机(名称为localhost)上的MySQL服务” -如果是服务未启动.那么就右键‘计算机’---->管理--->服务和应用程序---->服务,在右侧的栏目中找到名称为 ...
- ELK 性能(3) — 在 Docker 上运行高性能容错的 Elasticsearch 集群
ELK 性能(3) - 在 Docker 上运行高性能容错的 Elasticsearch 集群 介绍 在 Docker 上运行高性能容错的 Elasticsearch 集群 内容 通常熟悉的开发流程是 ...
- android设备上运行i-jetty服务
android设备上运行i-jetty服务: 1) i-jetty安装 本人小菜一个,i-jetty源码有好几个文件,不知道怎么运行起来,于是找了一个现成可运行的i-jetty工程(感谢这位同学的分享 ...
- linux安装docker,并在docker上运行springboot项目
docker架构示例图 仓库---> 镜像 ---> 容器 一.安装docker 1.通过 uname -r 命令查看你当前的内核版本 uname -r 2使用 root 权限登录 Ce ...
随机推荐
- JavaSE基础知识(3)—流程控制结构
一.顺序结构 1.说明 程序从上往下依次执行,中间没有任何跳转或选择2.特点 变量必须遵循 “前向引用” (局部变量必须先声明.赋值,然后再使用!) 二.分支结构(条件) 1.说明 程序从两条或多条路 ...
- java ssh执行shell脚本
1.添加依赖 com.jcraft:jsch ch.ethz.ganymed:ganymed-ssh2:262 2.获取连接 conn = new Connection(ip, port); conn ...
- js控制style样式
1.行内样式获取打印出来 2.内嵌和外链的获取不了 <div style="width:200px;height:200px; background: red;">&l ...
- [字符串][NOIP2012]Vigenère密码
Vigenère密码 题目描述 16世纪法国外交家Blaise de Vigenère设计了一种多表密码加密算法——Vigenère密码.Vigenère密码的加密解密算法简单易用,且破译难度比较高, ...
- SSM三大框架整合
三大框架整合的思路 1.Dao层: Mybatis的配置文件:SqlMapConfig.xml 不需要配置任何内容,需要有文件头.文件必须存在. applicationContext-dao.xml: ...
- Could not transfer artifact org.springframework
无法从中心仓库获取该版本的信息, 从新下载: 1.配置eclipse中的maven user setting路径为本地maven安装路径 配置阿里云镜像路径 <mirror> <i ...
- 数据库-mysql语句-查-WEB服务器
(1)MySQL中的查询 (2)WEB服务器 Order: 订单.排序 Set:设置.集合 Table:表.桌子 1.MySQL中的简单查询 —— 查询结果的排序 示例:查询出所有员工信息,要求按工 ...
- GitHub上好的Java项目
1. java-design-patterns(Star:36k)Github地址:https://github.com/iluwatar/java-design-patterns 介绍:设计模式是形 ...
- UML标准建模语言与应用实例
一.基本信息 标题:UML标准建模语言与应用实例 时间:2012 出版源:科技创新导报 领域分类:UML标准建模语言 面向对象 系统分析与设计 二.研究背景 问题定义:UML建模语言用图形来表现典型的 ...
- 读书笔记之Linux系统编程与深入理解Linux内核
前言 本人再看深入理解Linux内核的时候发现比较难懂,看了Linux系统编程一说后,觉得Linux系统编程还是简单易懂些,并且两本书都是讲Linux比较底层的东西,只不过侧重点不同,本文就以Linu ...