Docker | Compose创建mysql容器

本篇收录至Docker专栏,持续更新,欢迎访问😊

本文通过Docker Compose来创建mysql容器

在linux服务器上创建文件,用于管理容器

  • mkdir docker-mysql
  • cd docker-mysql
  • vim docker-compose.yml #写入如下内容

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
version: "3"
services:
mysqldb:
image: mysql:5.7
restart: always
container_name: mysql57
ports:
- 3310:3306
volumes:
- /var/vol_dockers/mysqldb/conf:/etc/mysql/conf.d
- /var/vol_dockers/mysqldb/data:/var/lib/mysql
environment:
MYSQL_PSAAWORD: PSAAWORD
MYSQL_ROOT_PASSWORD: PSAAWORD
MYSQL_USER: root
MYSQL_DATABASE: database

记得防火墙要开放3306、3310端口

创建启停脚本文件

  • vim start

    1
    docker-compose up -d
  • vim restart

1
docker-compose restart
  • vim stop
1
docker-compose stop

修改脚本文件权限

1
chmod 777 st* restart

启动mysql容器

1
./start
  • 查看容器

mysql数据库基本配置

  1. 创建MySql用户
1
CREATE USER dbadmin@localhost IDENTIFIED BY 'pwd';

dbadmin@localhost,表示只允许localhost环境的dbadmin用户登录

  1. 设置可访问的主机
1
update user set host = '%' where user = 'dbadmin';

% 表示接受所有主机ip访问

  1. 最后刷新生效
1
flush privileges;

整体步骤:

1、连接服务器: mysql -u root -p

2、看当前所有数据库:show databases;

3、进入mysql数据库:use mysql;

4、查看mysql数据库中所有的表:show tables;

5、查看user表中的数据:select Host, User,Password from user;

6、修改user表中的Host: update user set Host=’%’ where User=’root’;

7、最后刷新一下:flush privileges;

客户端连接

这里我使用的是SQLyog工具连接MySQL数据库

sqlyog连接服务器的3310端口,3310端口映射MySQL容器的3306端口。


我是 甜点cc

热爱前端,也喜欢专研各种跟本职工作关系不大的技术,技术、产品兴趣广泛且浓厚,等待着一个创业机会。本号主要致力于分享个人经验总结,希望可以给一小部分人一些微小帮助。

希望能和大家一起努力营造一个良好的学习氛围,为了个人和家庭、为了我国的互联网物联网技术、数字化转型、数字经济发展做一点点贡献。数风流人物还看中国、看今朝、看你我。