CentOS7使用docker跑mysql8笔记

2023-05-16

什么是docker

Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件的速度。[1]

Docker容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器。 容器更多的用于表示 软件的一个标准化单元。由于容器的标准化,因此它可以无视基础设施(Infrastructure)的差异,部署到任何一个地方。另外,Docker也为容器提供更强的业界的隔离兼容。[2]

Docker 利用Linux核心中的资源分离机制,例如cgroups,以及Linux核心名字空间(namespaces),来创建独立的容器(containers)。这可以在单一Linux实体下运作,避免引导一个虚拟机造成的额外负担[3]。Linux核心对名字空间的支持完全隔离了工作环境中应用程序的视野,包括行程树、网络、用户ID与挂载文件系统,而核心的cgroup提供资源隔离,包括CPU、存储器、block I/O与网络。从0.9版本起,Dockers在使用抽象虚拟是经由libvirt的LXC与systemd - nspawn提供界面的基础上,开始包括libcontainer库做为以自己的方式开始直接使用由Linux核心提供的虚拟化的设施

安装docker

卸载旧版本

较旧的Docker版本称为docker或docker-engine。如果已安装这些程序,请卸载它们以及相关的依赖项。

 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

如果yum报告未安装这些软件包,则可以。

的内容(/var/lib/docker/包括图像,容器,卷和网络)被保留。Docker Engine软件包现在称为docker-ce。

使用存储库安装

在新主机上首次安装Docker Engine之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。

设置存储库
安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。

 sudo yum install -y yum-utils
 sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

安装Docker引擎

安装最新版本的Docker Engine和容器,或转到下一步以安装特定版本:

 sudo yum install docker-ce docker-ce-cli containerd.io

如果提示您接受GPG密钥,请验证指纹是否匹配 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果是,则接受它。

启动Docker。

sudo systemctl start docker

通过运行hello-world 映像来验证是否正确安装了Docker Engine 。

sudo docker run hello-world

执行结果如下:

[root@localhost ~]# sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
b8dfde127a29: Pull complete
Digest: sha256:5122f6204b6a3596e048758cabba3c46b1c937a46b5be6225b835d091b90e46c
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

说明docker已经安装成功啦!

docker中安装mysql

使用docker安装mysql

https://hub.docker.com/_/mysql?tab=description

安装mysql镜像

docker pull mysql

启动mysql服务

sudo docker run --name first-mysql -p 3307:3306 -e MYSQL\_ROOT\_PASSWORD=123456 -d mysql
参数标题
run运行一个容器
–name后面是这个镜像的名称
-p 3307:3306表示在这个容器中使用3306端口(第二个)映射到本机的端口号也为3307(第一个)
-d表示使用守护进程运行,即服务挂在后台

查看运行状态

docker ps

客户端连接MySQL

使用IDEA连接

因为我服务器的ip是172.16.184.5,连接配置如下,密码是上面设置的123456
在这里插入图片描述

命令行链接:

docker run -it --rm mysql mysql --port=3307 -h172.16.184.5 -uroot -p123456
参数标题
-h172.16.184.5172.16.184.5修改成你的ip
-urootroot修改成你要登录的用户名
-p123456123456登录密码
–port=3307访问端口3307

mysql基本操作

  • 显示数据库列表。
show databases; 
  • 显示库中的数据表:
use mysql;
show tables; 
  • 显示数据表的结构:
describe 表名; 
  • 建库:
create database 库名; 
  • 建表:
use 库名; 
create table 表名 (字段设定列表)
  • 删库和删表(谨慎操作):
drop database 库名; 
drop table 表名; 
  • 将表中记录清空:
delete from 表名; 
  • 显示表中的记录:
select * from 表名

docker其他操作

显示正在运行的containers

docker ps

停止containers

docker stop first-mysql

运行已经stop的containers

docker start first-mysql

进入containers中

docker exec -it first-mysql bash

first-mysql为容器名称。

显示已经创建的containers

docker ps -a

删除containers(注意⚠️)

docker rm first-mysql

总结

使用docker配置mysql很方便,特别是可以同时配置多个mysql服务,这就很强了!

参考或引用

  • https://zh.wikipedia.org/wiki/Docker
  • https://docs.docker.com/engine/install/centos/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS7使用docker跑mysql8笔记 的相关文章

随机推荐

  • CentOS安装最新版本curl

    CentOS系统自带的curl版本 xff1a span class token function curl span version span class token function curl span 7 29 0 span clas
  • CentOS中使用Homebrew报错ELF: x: Error

    报错信息如下 apex localhost hello hello P k ELF x Error 1484067991 原因分析 Homebrew安装的gcc 和 glibc 与系统自带的库冲突了 解决办法 brew uninstall
  • CentOS7升级gcc-10.3.0

    因为Centos中使用yum安装软件版本一般比较旧 最近在研究在Centos使用brew安装新版软件 CentOS自带的gcc版本比较老旧了 使用brew安装的软件小部分打开会报错 所以尝试升级一下gcc看看是否能解决问题 注意 GCC是L
  • Centos6.8更新curl7.76

    我想在CentOS6 8中安装linuxbrew xff0c curl版本过低 xff0c 只好升级一下了 安装依赖项软件包 xff08 后续升级需要 xff09 yum span class token function install
  • CentOS6.8安装python3+ranger

    个人比较喜欢使用ranger做文件管理器用 xff0c 需要python3支持 CentOS6 8无法直接使用yum安装python3 xff0c 那我们就编译安装吧 xff01 准备工作 依赖 yum span class token f
  • newFixedThreadPool(1)和newSingleThreadPool()的区别

    最近在学习线程池遇到一个有意思的问题 xff0c 在这里记录一下 xff0c 若大佬们觉得不够精准欢迎留言私信 xff01 查看newSingleThreadPool 源码如下图 xff1a 注释中被圈中的大概意思是指newSingleTh
  • macOS开机iterm2 + oh my zsh会显示xcodebuild

    现象 系统 xff1a macOS Big Sur11 2 3 每次重启电脑后 xff0c 首次打开iterm2 会显示 xcodebuild要等待3到5秒才可以 下次重启前在打开iterm2就不会出现xcodebuild 如何去优化这个体
  • no such file or directory: /usr/local/share/zsh/site-functions/_brew_cask

    现象 执行命令 xff1a span class token function source span zshrc 报错如下 xff1a compinit 503 no such file or directory usr local sh
  • 黑苹果macOS Big Sur更新11.3后usb3.0无法使用解决办法

    现象 macOS Big Sur 11 2 usb都正常使用 xff0c 更新到macOS Big Sur 11 3后发现usb3 0无法使用了 xff0c usb2 0还是正常的 解决办法 修改配置文件 EFI OC config pli
  • React Native 学习笔记

    iOS模拟器切换软键盘 如果您使用的是iOS模拟器 xff0c 则可以连接硬件键盘 xff0c 并将其与 任何输入字段 这可以通过Shift 43 43 K切换到软键盘 输入法键盘遮挡问题解决 操作演示如上图 xff0c 解决问题关键代码如
  • linuxbrew安装pip3+ranger

    因为brew install ranger安装出来的ranger是基于python2的 xff0c nvim中无法使用rnvimr插件 所以需要使用pip3安装一下ranger 在centos7 中使用linuxbrew安装的python3
  • Expo使用隧道穿透远程开发记录

    expo启动项目默认是使用的端口是19000 而且expo自带一个免费的隧道穿透功能 但是这个免费的隧道穿透毕竟是国外的不稳定 既然官方都支持隧道穿透了 xff0c 自定义隧道应该也是可以的吧 xff01 如何能稳定远程开发呢 xff1f
  • vim中React JSX语法高亮插件vim-jsx-pretty

    项目地址 https github com MaxMEllon vim jsx pretty 安装方法 vim plug为例 xff0c vimrc加入 Plug span class token string 39 yuezk vim j
  • Error: ENOSPC: System limit for number of file watchers reached

    现象 RN开发使用expo创建项目遇到如下错误 Logs for your project will appear below Press Ctrl 43 C to exit node 18489 DEP0066 DeprecationWa
  • vmware中CentOS7使用NAT模式主机无法通过ip连接虚拟机(记录)

    背景 有客户遇到了个问题我帮其远程解决 xff0c 我把大概的解决思路记录一下 客户先遇到了个问题 xff1a vmware中CentOS7因为使用NAT模式无法上网 xff0c 所以一直使用桥接模式上网 使用桥接的模式虽然可以上网但是虚拟
  • Windows下oracle client安装exp导出imp导入表

    下载Windows 32位客户端 下载页面 xff1a https www oracle com cn database enterprise edition downloads oracle db11g win32 html 下载完成以后
  • kali新手入门教学(1)--安装后的配置

    第一次写博客 xff0c 可能经验不是很足 xff0c 有不到位的地方还请各位见谅 最近在自学kali 然后kali是一个更新较快的系统 xff0c 虽然网上教程也很多 xff0c 但有的可能过时了 xff0c 所以我就把我这段时间的经验分
  • CentOS7安装mysql8笔记

    全新安装MySQL的步骤 以下说明假定您尚未使用第三方分发的RPM软件包将MySQL安装在您的系统上 xff1b 实操记录 我仅在CentOS Linux release 7 9 2009 Core 下进行测试 xff0c 其他环境仅供参考
  • mysql数据库安装教程合集

    CentOS7安装mysql8笔记 https blog csdn net lxyoucan article details 116854446 archlinux使用docker运行mysql实例 https blog csdn net
  • CentOS7使用docker跑mysql8笔记

    什么是docker Docker 是一个开放源代码软件 xff0c 是一个开放平台 xff0c 用于开发应用 交付 xff08 shipping xff09 应用 运行应用 Docker允许用户将基础设施 xff08 Infrastruct