Spring Boot 技术探索

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".

1、Docker中MySQL的安装

平台环境:

名称

版本号

Windows10

10.15.1

JDK

1.8.0_241

Apache Maven

3.6.3

IntelliJ IDEA

2019.3 (Ultimate Edition)

Docker

19.03.5, build 633a0ea

 

  什么是MySQL?

  官方解释,MySQL是世界最受欢迎的开源数据库。

 

安装步骤

1、拉取官方镜像

命令:

docker pull mysql

 

过程:

C:\Users\wang>docker pull mysql
Using default tag: latest
latest: Pulling from library/mysql
68ced04f60ab: Pull complete
f9748e016a5c: Pull complete
da54b038fed1: Pull complete
6895ec5eb2c0: Pull complete
111ba0647b87: Pull complete
c1dce60f2f1a: Pull complete
702ec598d0af: Pull complete
4aba2fcbe869: Pull complete
b26bbbd533e6: Pull complete
7bd100a66c55: Pull complete
74149336419a: Pull complete
145ea1f01648: Pull complete
Digest: sha256:4a30434ce03d2fa396d0414f075ad9ca9b0b578f14ea5685e24dcbf789450a2c
Status: Downloaded newer image for mysql:latest
docker.io/library/mysql:latest

 

2、检查是否拉取成功

命令:

docker images

 

过程:

C:\Users\wang>docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
mysql                 latest              9b51d9275906        11 days ago         547MB

 

3、安装

命令:

docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=12345678 -d mysql

 

过程:

C:\Users\wang>docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=12345678 -d mysql
7eb1121d33c4da7a40f6f00a5a9b8316d18bff82600931f62dc20b618b8ca19e

 

命令解释:

  • –name:容器名,此处命名为mysql
  • -e:配置信息,此处配置MySQL的root用户的登录密码
  • -p:端口映射,此处映射主机3306端口到容器的3306端口
  • -d:源镜像名,此处为 mysql

 

4、检查MySQL是否正在运行

命令:

docker ps

 

过程:

C:\Users\wang>docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
7eb1121d33c4        mysql               "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:3306->3306/tcp, 33060/tcp   mysql

 

各个列解释:

  • CONTAINER ID 容器ID
  • IMAGE 容器的源镜像
  • COMMAND 启动命令
  • CREATED 创建时间
  • STATUS 状态
  • PORTS 端口映射信息
  • NAMES 容器名字

 

管理MySQL

1、进入MySQL容器

命令:

docker exec -it mysql bash

 

过程:

C:\Users\wang>docker exec -it mysql bash
root@7eb1121d33c4:/#

 

2、进入MySQL命令行

命令:

mysql -uroot -p

出现“Enter password:”之后输入12345678,回车。

 

过程:

root@7eb1121d33c4:/# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.19 MySQL Community Server - GPL


Copyright (c) 2000, 2020, 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>

到此,安装完成。

 

补充:

MySQL常用命令

显示数据库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

 

切换数据库

mysql> use mysql;

Database changed

 

查询当前数据库用户

mysql> select user,host from user;

+------------------+-----------+

| user             | host      |

+------------------+-----------+

| root             | %         |

| mysql.infoschema | localhost |

| mysql.session    | localhost |

| mysql.sys        | localhost |

+------------------+-----------+

4 rows in set (0.00 sec)

 

如果root用户的访问权限是localhost,则说明root用户只被允许在数据库本机范围内使用。如果需要使用root用户远程连接数据库,则需要修改host值。

命令:

update user set host='%' where user='root';

flush privileges;

第二句flush privileges;是刷新权限缓存的意思。

 

需要注意的问题:

1、如果使用第三方工具连接数据库,可能会遇到提示“Communications link failure”,这个意思是与数据库的通讯连接失败。

解决方法见:《连接MySQL报“Communications link failure”错误的解决办法》

 

Bootstrap Thumbnail Second
MySQL

MySQL is the world's most popular open source database.

GO

Bootstrap Thumbnail Third
算法基础

本书介绍了什么是计算机算法,如何描述它们,以及如何来评估它们。

GO