阿里云服务器使用docker安装mysql

本文介绍了如何在阿里云服务器中通过命令行方式安装Docker并部署MySQL5.7,包括搜索并拉取镜像、配置文件创建、容器运行,以及解决Navicat连接问题的过程。
摘要由CSDN通过智能技术生成

前言


上一篇文章中,我们已经在阿里云服务器中安装了docker,这篇我们将继续使用docker在云主机中安装mysql。如果你对docker中的命令不了解,那也没有关系,文中使用到的命令我都会带上一点注释信息的。

其实docker中安装mysql主要就是做两件事儿:

①获取一个mysql的镜像;

②让这个镜像在容器中运行起来;

那下面我们就用两种方式来试一下吧!


一、命令安装方式

1.获取mysql镜像

首先要使用docker中的命令搜索一下这个镜像,操作命令如下(我指定搜索了mysql 5.7):

docker search mysql:5.7

将查询到的镜像拉到本地

 docker pull mysql:5.7

查看本地所有的镜像命令 

docker images 

2.创建文件夹 

mkdir -p /home/service/mysql/data 

mkdir -p /home/service/mysql/conf

3.创建配置文件

touch my.cnf     -- 创建文件

vi my.cnf           -- 编辑文件

-- 编辑文件 先按 'i' 输入以下 内容

        

[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
default-time_zone = '+8:00'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

-- 再按 Esc     输入  :wq 保存  

4.在容器中运行镜像

启动容器:

docker run -p 3306:3306 --name mysql

-v /home/service/mysql/logs:/logs

-v /home/service/mysql/data:/mysql_data

-v /home/service/mysql/conf:/etc/mysql/my.cnf  

-e MYSQL_ROOT_PASSWORD=123456

--restart=always

-d mysql:5.7

-docker run
docker给出的命令提示是 Run a command in a new container,字面意思,让docker把某个容器跑起来,可通过docker --help命令查询docker run 的释义


–name 容器名
Assign a name to the container 给要跑起来的容器起个名字 可通过docker run --help命令查询–name 的释义


-p 物理机映射端口:容器内部应用端口
mysql默认使用3306端口,可通过docker run --help命令查询 -p, --publish list Publish a container’s port(s) to the host

-v挂载


-e MYSQL_ROOT_PASSWORD=123456
设置mysql中Root用户的密码,-e 是设置环境变量 可通过docker run --help命令查询 -e, --env list Set environment variables


-d
运行这个容器,并且打印生成的容器ID(可以尝试不加-d,不过容器启动时打印出来的内容之多,一屏装不下)可通过docker run --help命令查询 -d, --detach Run container in background and print container ID


mysql:5.7
指定要用哪个镜像启动容器,是必须参数,不写的话命令执行不了,会提示至少写一个参数
docker ps
同docker run一样,标准Command ,可通过docker --help命令查询docker ps 的释义 ps List containers

 查看当前运行起来的全部容器:

docker ps -a   

 二、使用Navicat连接mysql

 这是我使用Navicat连接mysql5.7的报错,主要原因是:云主机没把对应的端口打开

 

再次连接navicatMysql

 以上全部不行  需要在服务器里进入mysql做一些设置

1、进入mysql

docker exec -it mysql5.7 bash            #mysql5.7 换成自己的mysql容器名称;

2、登录mysql 

mysql -u root -p

3、刷新权限

CREATE USER 'admin'@'%' IDENTIFIED BY '123456';

GRANT ALL ON *.* TO 'admin'@'%'; 

flush privileges;         -- 刷新权限

4、再次连接navicat

  • 22
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值