CentOS8-Docker安装MySQL8

查看官方文档
在这里插入图片描述

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

-在这里插入图片描述

  • 启动5.7(未测试,我想装8)
[root@swl123 ~]# docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root --name mysql3310 mysql:5.7
  • 启动8.0.26
    1. 学会使用–help,这里使用8.0.26版本,显示的属性都是可以在命令行后进行添加
  • -MySQL8一般要设置区分表名大小写以及密码策略
  • -通过help命令知道区分表大小写lower_case_table_names可以在启动时添加
docker run -it --rm mysql:8.0.26 --verbose --help
    1. 整理启动命令,添加–lower_case_table_names=1,–skip_name_resolve=no:关闭dns解析,这样外网访问数据库会快点
[root@swl123 ~]# docker run -p 3388:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d --name mysql8 mysql:8.0.26 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --lower_case_table_names=1 --skip_name_resolve=no
  • 3.有惊无险的启动了, 进入容器
[root@swl123 ~]# docker run -p 3388:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d --name mysql8 mysql:8.0.26 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --lower_case_table_names=1
612eaf5c2777b8ce3d54f0073d437d3e0d4a3ecba0ca57c7c49a6cc71f5b7054
[root@swl123 ~]# docker ps
CONTAINER ID   IMAGE                  COMMAND                  CREATED         STATUS         PORTS                                                                                  NAMES
612eaf5c2777   mysql:8.0.26           "docker-entrypoint.s…"   3 minutes ago   Up 3 minutes   33060/tcp, 0.0.0.0:3388->3306/tcp, :::3388->3306/tcp                                   mysql8
c6a750b3039f   portainer/portainer    "/portainer"             4 hours ago     Up 4 hours     0.0.0.0:8088->9000/tcp, :::8088->9000/tcp                                              portainer
34fb3c029026   elasticsearch:7.13.3   "/bin/tini -- /usr/l…"   5 hours ago     Up 5 hours     0.0.0.0:9200->9200/tcp, :::9200->9200/tcp, 0.0.0.0:9300->9300/tcp, :::9300->9300/tcp   elasticsearch02
[root@swl123 ~]# docker exec -it 612eaf5c2777 /bin/bash
root@612eaf5c2777:/# 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.26 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

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> use
ERROR: 
USE must be followed by a database name
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> 

不能远程访问请设置服务器的防火墙,Linux的防火墙
/开启6379端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
//检查端口是否开启
firewall-cmd --query-port=6379/tcp
//重启防火墙
firewall-cmd --reload

  • 很奇怪,不用再设置密码策略,远程也可以连接,那就测试表名大小写问题:

在这里插入图片描述

  • 没问题就可以愉快的用数据库了
  • 此博客是边写边安装,确实没有遇到想象中的一些问题,很奇怪
你可以按照以下步骤在CentOS 8上使用Docker安装MySQL: 1. 首先,确保你已经安装Docker,并且Docker服务已经启动。如果没有安装Docker,请根据操作系统的要求进行安装。 2. 打开终端,并运行以下命令来下载并运行MySQL Docker镜像: ``` docker run --name MySQL -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql ``` 这将在Docker中启动一个名为MySQL的容器,将容器的3306端口映射到主机的3306端口,并设置了MySQL的root用户的密码为123456。 3. 等待一段时间,直到容器启动完毕。你可以使用以下命令进入到容器的交互模式: ``` docker exec -it 容器id /bin/bash ``` 请将"容器id"替换为实际的容器ID。这将打开一个终端会话,你可以在容器内执行命令。 4. 在容器内部,你可以使用以下命令登录MySQL: ``` mysql -u root -p ``` 输入之前设置的密码"123456",然后你就可以访问MySQL数据库了。 5. 如果你希望每次启动容器都能自动启动MySQL服务,请使用以下命令重启容器: ``` docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.28 ``` 这将使用MySQL 8.0.28的镜像启动一个名为mysql的容器,并设置MySQL的root用户的密码为123456。 通过这些步骤,你就可以在CentOS 8上使用Docker安装MySQL了。请根据你的需求选择适合的命令,并根据实际情况进行配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [CentOS8使用Docker安装MySQL指南](https://blog.csdn.net/u011359476/article/details/127145931)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [CentOS 8中Docker安装MySQL8](https://blog.csdn.net/Alian_1223/article/details/123019951)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

手揽回忆怎么睡

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值