Docker安装配置MySQL的实现步骤

目录
  • 前言
  • 环境
  • 安装
  • 创建并启动MySQL容器
  • 提醒
    • 创建并启动MySQL容器命令
    • 参数说明:
  • 进入到MySQL容器内部进行配置
    • 进入命令
    • 连接MySQL
    • 更改MySQL密码
  • 测试连接

前言

MySQL 是世界上最受欢迎的开源数据库,So~本文将演示如何在Docker上安装并且配置MySQL。

环境

  • CentOS 7
  • Docker 20.10.10

安装

拉取镜像

docker pull mysql

如果要指定版本,在mysql后面加上:+版本号,例如:

docker pull mysql:8.0.16

这里直接拉取最新版MySQL

查看镜像

docker images

创建并启动MySQL容器

创建数据目录和配置文件

提前在宿主机创建好放置mysql的配置文件的目录和数据目录,并且进行授予权限,避免挂载外部配置和数据时启动失败:

创建放置mysql的配置文件的目录和数据目录

mkdir -p /mydata/mysql/

设置文件夹权限

chmod -R 755 /mydata/mysql

第一个数字表示文件所有者的权限 第二个数字表示与文件所有者同属一个用户组的其他用户的权限 第三个数字表示其它用户组的权限。
权限分为三种:读(r=4),写(w=2),执行(x=1) 。
综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。 所以,chmod
755 设置用户的权限为:
1.文件所有者可读可写可执行 --7
2.与文件所有者同属一个用户组的其他用户可读可执行 --5
3.其它用户组可读可执行

创建my.cnf配置文件

mkdir -p /mydata/mysql/conf
touch /mydata/mysql/conf/my.cnf

编辑my.cnf配置文件

vi /mydata/mysql/conf/my.cnf

添加以下配置内容

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
secure_file_priv=/var/lib/mysql

提醒

无论你是否使用我的配置,如果你的安装的是新版MySQL,务必要复制这一句:

secure_file_priv=/var/lib/mysql

第一次创建启动MySQL容器的时候,MySQL会访问/var/lib/mysql文件夹,如果没有权限就会导致无法启动,使用docker ps之后看不到mysql容器在运行,需要设置secure_file_priv的值指定为/var/lib/mysql,这样就有权限正常访问和读写/var/lib/mysql目录

Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Suppliedvalue : /var/lib/mysql-files
译文:无法访问–secure-file-priv的目录。请确保该目录存在并且可由MySQL服务器访问。提供的值:/var/lib/mysql文件

  • secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出
  • secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下
  • secure_file_priv的值为空,表示不对mysqld 的导入|导出做限制

创建并启动MySQL容器命令

sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:latest

参数说明:

  • -p 3306:3306:将容器的3306端口映射到主机的3306端口
  • --name mysql:定义容器名称为mysql
  • -v /mydata/mysql/log:/var/log/mysql :将MySQL的日志文件夹挂载到主机
  • -v /mydata/mysql/data:/var/lib/mysql:将MySQL的数据文件夹挂载到主机
  • -v /mydata/mysql/conf:/etc/mysql:将MySQL的配置文件夹挂载到主机
  • -e MYSQL_ROOT_PASSWORD=root:初始化root用户密码
  • -d mysql:latest:选择MySQL版本为latest的镜像构建容器

查看正在运行的容器

docker ps

进入到MySQL容器内部进行配置

进入命令

docker exec -it 容器id ./bin/bash

连接MySQL

这里因为我们自己设置的MySQL默认密码为root所以p后面为root

mysql -uroot -proot

更改MySQL密码

使用mysql库

use mysql

修改访问主机以及密码等,设置为所有主机可访问

 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

注意:mysql_native_password,mysql8.x版本必须使用这种模式,否则navicate无法正确连接

测试连接

测试前请保证关闭了防火墙,如果是云服务器记得开放3306规则

Linux关闭防火墙

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

云服务开放3306端口

使用Navicat测试连接

使用SQLyog测试连接

Docker安装和配置MySQL教程结束!

以上就是Docker安装配置MySQL的实现步骤的详细内容,更多关于Docker 安装MySQL的资料请关注我们其它相关文章!

(0)

相关推荐

  • docker如何安装mysql

    最近在部署django,不想在手动安装一遍mysql,便尝试使用docker,总结了安装的心得,这些前提都是在安装了docker后: 1. 查看mysql镜像: docker search mysql 2.有镜像,直接拉取最新镜像 docker pull mysqlv:latest 3.启动mysql镜像 ```shell docker run –name w-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:latest –na

  • Docker 安装 MySQL 并实现远程连接教程

    拉取镜像 docker pull mysql 查看拉取完成的镜像 docker images 通过镜像创建并启动一个MySQL容器 docker run --name mysql_dev -e MYSQL_ROOT_PASSWORD=123456 -p 3333:3306 -d mysql –name:给新创建的容器命名,此处命名为 mysql_dev -e:配置信息,此处配置mysql的root用户的登陆密码 -p:端口映射,此处映射主机3333端口到容器mysql_dev的3306端口 -d

  • Docker安装MySQL和Redis的方法步骤

    本文是基于CentOS 7.3系统环境,进行MySQL和Redis的安装和使用 CentOS 7.3 Docker-ce 一.安装MySQL镜像 (1) 拉取MySQL镜像 docker pull mysql:5.6 (2) 运行并配置MySQL docker run -p 3306:3306 --name xz_mysql -v /data/mysql/conf:/etc/mysql/conf.g -v /data/mysql/logs:/logs -v /data/mysql/data:/v

  • Docker同时安装MySQL和MariaDB的方法步骤

    MySQL和MariaDB的关系 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品. 看完MySQL和MariaDB的关系,我们一定会想:既然两者有这么紧密的关系,那么同时安装.启动的时候,是否会有冲突呢? 答案是肯定的,比如:`本文主要讲解的端口号`.我们先看两者的安装,然后在配置阶段,将MariaDB的端口号与MySQL区分开. Docker安装MyS

  • Docker安装MySQL8的方法步骤

    一.下载镜像 docker Hub官网URL:https://hub.docker.com/_/mysql/ 下载最新版本:docker pull mysql 下载指定版本:docker pull mysql:verison(8.0.11,8.0,8) 二.启动镜像 复制代码 代码如下: docker run  -d --name mysql -v /data/datadir:/var/lib/mysql -v /etc/mysql/my.cnf:/etc/mysql/my.cnf -p 330

  • Docker安装MySQL8.0的实现方法

    环境:MacOS_Cetalina_10.15.1.Mysql8.0.18.Docker_2.0.0.3 1.docker仓库搜索mysql docker search mysql 2.docker仓库拉取mysql8.0 docker pull mysql:8.0 备注: docker pull mysql //默认拉取最新版本 3.查看本地仓库镜像是否下载成功 docker images mysql:8.0 4.安装运行mysql8.0容器 docker run -p 3307:3306 -

  • Docker安装Tomcat、MySQL和Redis的步骤详解

    总体步骤 Docker安装Tomcat docker hub上查找tomcat镜像 docker search tomcat 从docker hub上拉取tomcat镜像到本地 docker pull tomcat docker images查看是否有拉取到的tomcat 使用tomcat镜像创建容器(运行镜像) docker run -it -p 8080:8080 tomcat -p 主机端口:docker容器端口 -P 随机分配端口 i:交互 t:终端 Docker安装MySQL dock

  • Docker 安装 MySQL(8和5.7)

    本篇将介绍如何使用 Docker 部署 MySQL 数据库及远程访问配置 安装 MySQL 拉取镜像 使用下面的命令拉取 MySQL 数据库的镜像: $ sudo docker pull mysql # 拉取最新版本的镜像,当前为 MySQL 8 版本,tag 为 latest $ sudo docker pull mysql:5.7 # 指定拉取 MySQL 5.7 版本 也可以使用搜索命令,查找其他的 MySQL 相关镜像,其中有标识 Stars 数,即受欢迎程度. $ sudo docke

  • Docker安装常用组件(mysql,redis)的方法

    docker安装mysql docker search mysql 搜索 docker pull mysql:5.6 下载 docker images |grep mysql 查看 docker run -p 3306:3306 --name mysql_docker -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysq

  • Docker安装配置MySQL的实现步骤

    目录 前言 环境 安装 创建并启动MySQL容器 提醒 创建并启动MySQL容器命令 参数说明: 进入到MySQL容器内部进行配置 进入命令 连接MySQL 更改MySQL密码 测试连接 前言 MySQL 是世界上最受欢迎的开源数据库,So~本文将演示如何在Docker上安装并且配置MySQL. 环境 CentOS 7 Docker 20.10.10 安装 拉取镜像 docker pull mysql 如果要指定版本,在mysql后面加上:+版本号,例如: docker pull mysql:8

  • Django安装配置mysql的方法步骤

    近期做那个python的开发,今天就来简单的写一下Django安装配置mysql的方法步骤 安装mysql 首先安装pymysql pip install pymysql 然后安装mysqlclient pip install mysqlclient 在安装过程中可能会报类似以下错误(因为我的已经安装成功了,找了类似的图): 在window下安装python的包会出现各种问题,https://www.lfd.uci.edu/~gohlke/pythonlibs/这个网站就是专门用于解决windo

  • Docker安装配置RabbitMQ的实现步骤

    目录 单机部署 在线拉取 查看镜像 创建并运行RabbitMQ 创建并运行MQ容器成功 添加防火墙规则 进入RabbitMQ管理平台的端口 Overview总览 Connections连接 Channels通道 Exchanges交换机 Queues队列 Users用户管理 单机部署 本文将在Centos7系统下演示使用Docker来安装RabbitMQ. 在线拉取 rabbitmq镜像 docker pull rabbitmq:3-management 注:rabbitmq:3-managem

  • 图文详解Ubuntu下安装配置Mysql教程

    Ubuntu安装Mysq有l三种安装方式,下面就为大家一一讲解,具体内容如下 1. 从网上安装 sudo apt-get install mysql-server.装完已经自动配置好环境变量,可以直接使用mysql的命令. 注:建议将/etc/apt/source.list中的cn改成us,美国的服务器比中国的快很多. 2. 安装离线包,以mysql-5.0.45-linux-i686-icc-glibc23.tar.gz为例. 3. 二进制包安装:安装完成已经自动配置好环境变量,可以直接使用m

  • Docker安装配置Redis镜像的实现步骤

    目录 前言 环境 安装 创建并启动MySQL容器 提醒避免采坑 创建并启动MySQL容器命令 参数说明 查看正在运行的容器 连接到Docker的Redis 设置Redis持久化储存 前言 本教程演示如何安装Redis镜像,创建Redis容器并且映射端口挂载数据卷和配置数据. 环境 CentOS 7 Docker 20.10.10 安装 拉取镜像 docker pull redis 查看镜像 docker images 创建并启动MySQL容器 创建数据目录和配置文件 创建配置文件夹 mkdir

  • docker安装java环境的实现步骤

    本文是基于Linux centos8安装docker后再拉取镜像安装各个环境(tomcat,mysql,redis等等) docker安装tomcat 下载tomcat(可以指定版本号,这里默认安装最新的版本哈,指定版本号示例 docker pull tomcat:9.0.37 ) [root@localhost ~]# docker pull tomcat:9.0.37 启动 [root@localhost ~]# docker run -d -p 8080:8080 --name tomca

  • Docker安装Redis容器的实现步骤

    目录 Docker 安装Redis 1.寻找Redis镜像 2.下载Redis镜像 3.创建Redis配置文件 4.创建Redis容器并启动 5.查看Redis是否运行 6.进入Redis容器 7.退出容器 8.Redis 配置文件修改 9.进入有密码的Redis控制台 Docker如果想安装软件 , 必须先到 Docker 镜像仓库下载镜像. Docker 镜像仓库 Docker 安装Redis 1.寻找Redis镜像 在Docker镜像仓库寻找Redis镜像 Docker 下载Redis镜像

  • CentOS安装配置MySQL8.0的步骤详解

    前言 这里记录下在CentOS 上,安装配置MySQL的步骤: 正文 下载yum源的安装包 yum localinstall https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm 安装 yum install mysql-community-server 启动服务 service mysqld start 查看状态 service mysqld status 查看初始密码 grep 'temporary passwo

  • Ubuntu20.04安装配置GitLab的方法步骤

    介绍 GitLab CE或Community Edition是一个开源应用程序,主要用于托管Git存储库,以及其他与开发相关的功能,如问题跟踪.它旨在使用您自己的基础架构进行托管,并为您的开发团队提供部署内部存储库的灵活性,与用户交互的公共方式,或者为贡献者提供托管自己项目的方法. GitLab项目使用简单的安装机制在您自己的硬件上设置GitLab实例变得相对简单.在本指南中,我们将介绍如何在阿里云Ubuntu 20.04服务器上安装和配置GitLab. 前提条件 部署GitLab的实例要求至少

  • CentOS7安装调试Mysql数据库的步骤详解【实例】

    本实例要求下载并安装调试Mysql数据库. 第一步:下载Mysql数据库安装所需的全部软件. 我已提前下载好数据库软件,直接在服务器下载即可,如下: 通过scp直接下载: [root@agt20 ~]# scp root@192.168.122.10:/root/mysql* /root/ 软件如下图: [root@agt20 ~]# ls mysql-* mysql-5.7.17.tar mysql-community-client-5.7.17-1.el7.x86_64.rpm mysql-

随机推荐