当前位置:   article > 正文

【Docker】 安装 mysql_trying to pull repository docker.io/library/mysql

trying to pull repository docker.io/library/mysql ... missing signature key

前言

  • CentOS 7.9
  • Docker Version: 1.13.1

准备

  • docker 已安装。

  • 选择合适的mysql镜像(mysql:5.7.31)。

拉取镜像

shell> docker pull mysql:5.7.31
Trying to pull repository docker.io/library/mysql ... 
5.7.31: Pulling from docker.io/library/mysql
bb79b6b2107f: Pull complete 
49e22f6fb9f7: Pull complete 
842b1255668c: Pull complete 
9f48d1f43000: Pull complete 
c693f0615bce: Pull complete 
8a621b9dbed2: Pull complete 
0807d32aef13: Pull complete 
6d2fc69dfa35: Pull complete 
56153548dd2c: Pull complete 
3bb6ba940303: Pull complete 
3e1888da91a7: Pull complete 
Digest: sha256:b3dc8d10307ab7b9ca1a7981b1601a67e176408be618fc4216d137be37dae10b
Status: Downloaded newer image for docker.io/mysql:5.7.31
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

查看已拉取的镜像

shell> docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
docker.io/hello-world   latest              feb5d9fea6a5        6 weeks ago         13.3 kB
docker.io/mysql         5.7.31              42cdba9f1b08        12 months ago       448 MB
  • 1
  • 2
  • 3
  • 4

创建容器

创建容器方式1:快速创建容器

shell> docker create -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw --name mysql1 mysql:5.7.31
  • 1

创建容器方式2:创建容器+配置文件+数据目录

shell> docker create \
-v /data/mysql1/data:/var/lib/mysql \
-v /data/mysql1/conf.d:/etc/mysql/conf.d  \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-p 3306:3306 \
--name mysql1 mysql:5.7.31
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • --restart=always: 自动运行
  • -v /data/mysql1/data:/var/lib/mysql: 将宿主机的/data/mysql1/data挂载成容器的/var/lib/mysql
  • -v /data/mysql1/conf.d:/etc/mysql/conf.d: 将宿主机的/data/mysql1/conf.d挂载成容器的/etc/mysql/conf.d

运行容器

shell> docker start mysql1
  • 1

命令行登录mysql

shell> docker exec -it mysql1 bash
root@a6f9e4a700a3:/# mysql -uroot -pmy-secret-pw
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31 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> exit
Bye
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

或者:

shell> docker exec -it mysql1 mysql -uroot -pmy-secret-pw
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31 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> exit
Bye
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

容器设置

容器随 docker 自动启动

设置容器的重启策略

shell> docker update --restart=always mysql1
  • 1
  • 每次docker启动时,容器也会自动启动

容器设置IP

向网络中添加容器

shell> docker network connect --ip 172.19.0.2  mynetwork mysql1
  • 1
  • docket ip : 172.19.0.2

mysql设置

修改密码

mysql> set password=password('123456');
  • 1

设置mysql数据编码格式为utf8mb4

shell> vim /data/mysql1/conf.d/my.cnf
# 打开文件(没有该文件时,创建它)后,添加下面的配置。注意对应节点
[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect = 'SET NAMES utf8mb4'

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

重启mysql并查看设置

shell> docker exec -it mysql1 mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31 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> SHOW variables WHERE variable_name like 'character\_set\_%' OR variable_name like 'collation%';
+--------------------------+--------------------+
| Variable_name            | Value              |
+--------------------------+--------------------+
| character_set_client     | utf8mb4            |
| character_set_connection | utf8mb4            |
| character_set_database   | utf8mb4            |
| character_set_filesystem | binary             |
| character_set_results    | utf8mb4            |
| character_set_server     | utf8mb4            |
| character_set_system     | utf8               |
| collation_connection     | utf8mb4_unicode_ci |
| collation_database       | utf8mb4_unicode_ci |
| collation_server         | utf8mb4_unicode_ci |
+--------------------------+--------------------+
10 rows in set (0.01 sec)

mysql> exit
Bye
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

设置mysql表名不区分大小写

shell> vim /data/mysql1/conf.d/my.cnf
-----------------------------
# 打开文件后,添加下面的配置。注意对应节点
[mysqld]
lower_case_table_names = 1
  • 1
  • 2
  • 3
  • 4
  • 5

重启mysql并查看设置

shell> docker exec -it mysql1 mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31 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> show variables like '%table_names';
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| lower_case_table_names | 1     |
+------------------------+-------+
1 row in set (0.00 sec)

mysql> exit
Bye
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

设置 mysql 时区

时区设置成东八区

shell> vim /data/mysql1/conf.d/my.cnf
-----------------------------
# 打开文件后,添加下面的配置。注意对应节点
[mysqld]
default-time_zone = '+8:00'
  • 1
  • 2
  • 3
  • 4
  • 5

重启mysql并查看设置

shell> docker exec -it mysql1 mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31 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> show variables like '%time_zone%';
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | UTC    |
| time_zone        | +08:00 |
+------------------+--------+
2 rows in set (0.00 sec)

mysql> exit
Bye
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

远程访问授权

参考这里

参考

https://hub.docker.com/_/mysql

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/229387
推荐阅读
相关标签
  

闽ICP备14008679号