如何利用 docker 快速部署 Mysql 服务

docker 基础教程不再多说,这里只着重讲如何使用 docker 部署 mysql 服务

docker 拉取

访问 dockerhub,搜索关键词 mysql,我这里选择 mysql-server,然后执行拉取命令,注意可以选择tag版本,默认是latest

docker pull mysql/mysql-server:tag

等待拉取完成即可。

docker Mysql-server 启动与配置

docker 部署的优势就在于其快速便捷,下面就进行几项步骤:

启动 docker

该容器命名为mysql8,将容器端口3306映射到本地端口3306,以便在外部网络能够访问到。

docker run --name=mysql8 -d -p 3306:3306 mysql/mysql-server:latest

查看登录密码

大概等待几秒之后,mysql-server docker 完全启动之后再输入以下命令,否则可能查看不到。

docker logs mysql8 2>&1 | grep GENERATED
# GENERATED ROOT PASSWORD: Axegh3kAJyDLaRuBemecis&EShOs

执行 mysql 命令行程序

使用默认用户root,输入刚刚查看的mysql密码,进入 mysql 交互界面。

docker exec -it mysql8 mysql -uroot -p

修改 root 用户密码

初次进入 mysql 交互界面,必须要修改默认密码,之后才能进行其他操作。

必须提及的是,mysql 8.0 以后版本修改密码方式发生变化,这里需要注意。

在 mysql 8.0 以后,修改密码语句如下:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

在 mysql 5.7 以前,修改密码语句如下:

mysql> SET PASSWORD = PASSWORD('password');

之后可以进行其他操作了

创建数据库

CREATE DATABASE thinkphp;
use thinkphp;

创建表

CREATE TABLE user(
ID int PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(255),
email VARCHAR(255),
password VARCHAR(255),
img VARCHAR(512)
);

创建用户,分配权限

创建一个低权限用户,分配新建数据库的操作权限,以实现数据库降权,确保其安全性。

# create user
CREATE USER 'thinkuser'@'%' IDENTIFIED BY 'password';
# grant privileges
GRANT ALL ON thinkphp.* TO 'thinkuser'@'%';
# flush privileges
flush privileges;

访问服务

至此,Mysql server 已搭建完成,可以通过访问主机IP:3306来访问 Mysql 服务了。

原文地址:https://www.cnblogs.com/kalbertlee/p/12368313.html

时间: 2024-10-02 18:24:41

如何利用 docker 快速部署 Mysql 服务的相关文章

如何利用docker快速构建MySQL主从复制环境

在学习MySQL的过程中,常常会测试各种参数的作用.这时候,就需要快速构建出MySQL实例,甚至主从. 考虑如下场景: 譬如我想测试mysqldump在指定--single-transaction参数的情况下,对于myisam表的影响. 本来想在现成的测试环境中进行,但测试环境中,有大量的数据,执行mysqldump进行全备,产生的SQL文件,很难基于表进行搜索. 这个时候,就特别渴望能有一套干净的实例进行测试. 此刻,快速构建能力就显得尤为必要,很多童鞋可能会问,通过脚本不就能实现么?为什么要

利用Docker快速部署Oracle环境

工作中需要频繁使用Oracle环境,但是每次搭建起来比较消耗时间,本想通过虚拟机模板的方式来快速安装oracle vm,但是每次改ip等环境也很耗时,因此想到docker中有没有已经做好的images,这样就能快速获得Oracle环境. [email protected] rac1:docker search oracle INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED docker.io docker.io/wnameless/oracle-xe

docker docker-compose部署mysql和redis

一 docker部署mysql和redis 1. docker 安装mysql docker run -p 3306:3306 --name mysql --env MYSQL_ROOT_PASSWORD=123zxc -d mysql:5.7 # 停止容器服务命令 docker stop mysql 2. docker 安装redis docker run -d --name myredis -p 6379:6379 redis --requirepass "mypassword"

1分钟利用mysqlreplicate快速搭建MySQL主从

利用mysqlreplicate快速搭建MySQL主从环境 简介 mysql-utilities工具集是一个集中了多种工具的合集,可以理解为是DBA的工具箱,本文介绍利用其中的mysqlreplicate工具来快速搭建MySQL主从环境. HE1:192.168.1.248 slave HE3:192.168.1.250 master 实战 Part1:安装mysql-utilities [[email protected] ~]# tar xvf mysql-utilities-1.5.4.t

docker 快速部署nacos注册中心

docker 快速部署nacos注册中心 拉去并启动docker-compose 服务 # git 拉去相关文件 git clone https://github.com/nacos-group/nacos-docker.git # 进入文件夹 cd nacos-docker/example # 运行docker-compose 服务 docker-compose -f standalone-mysql.yaml up # 关闭 容器服务命令 docker-compose -f standalo

在docker里部署网络服务

之前试着玩玩docker有一阵子了,今天算是头一回正式在docker里部署网络服务. 本来想和lxc差不多的东西那自然是手到擒来,没想到还是改了很多. 第一个遇到的问题是,远程连到docker宿主机干活的时候突然断网了.一下傻掉了,以前都是连内网,从来不断的.这次连了一个反向隧道,居然断了,傻眼了. 再连回去,发现docker ps里还有进程,好办,docker attach这个进程,就又进去了. 如果没有找到进程,就只要docker commit存一下,然后再docker run拉起来继续 如

docker 部署mysql服务之后,执行sql脚本

1,先将.sql文件copy到docker容器里 docker ps //找到容器的短ID或者指定的name. docker inspect  -f '{{.Id}}' id or name 得到指定容器的全ID docker cp 本地文件路径 ID全称:容器路径[docker cp mysql.sql 12345:/tmp/] 2,将文件copy进容器之后,进入docke 容器 docker exec -it mysql bash 进入容器 mysql -u root -p 进入mysql服

利用SSH桥接访问服务器的Docker运行的MySql服务

前情提要 docker的运用越来广泛,许多IT公司都已经将自己的服务跑在Docker上面.在安全性方面又做了一层防护.比如:跑在Docker上的Mysql不做外网端口映射,只能在linux服务器上或进入docker访问mysql,这样对开发者来说是有些不方便的. 那么,其实这种情况,我们也是有办法可以做到在本地连接docker里面的MySql数据库的. 环境: Linux服务器:centos 7.7 服务器IP:192.168.1.5 容器:docker 实例IP:172.17.0.2 数据库:

运维人员的解放----Docker快速部署

Docker是一个用了一种新颖方式实现的超轻量虚拟机,在实现的原理和应用上还是和VM有巨大差别,专业的叫法是应用容器(Application Container).(我个人还是喜欢称虚拟机) Docker应用容器相对于 VM 有以下几个优点: 启动速度快,容器通常在一秒内可以启动,而 VM 通常要更久 资源利用率高,一台普通PC 可以跑上千个容器,你跑上千个 VM 试试 性能开销小, VM 通常需要额外的 CPU 和内存来完成 OS 的功能,这一部分占据了额外的资源 因为VM 的 Hypervi