docker启动mysql并映射数据目录(含备份脚本)
下面是实现 Docker MySQL 目录映射的步骤,我们将通过一个表格展示:
步骤 | 操作 | 命令/代码 | 说明 |
---|---|---|---|
1 | 创建数据目录 | mkdir /path/to/mysql/data | 在宿主机上创建一个用于存储 MySQL 数据的目录 |
2 | 启动 MySQL 容器 | docker run --name mysql -v /path/to/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=your_password -d mysql:tag | 启动一个 MySQL 容器,并将宿主机的数据目录映射到容器内的 /var/lib/mysql 目录 |
3 | 进入 MySQL 容器 | docker exec -it mysql bash | 进入 MySQL 容器的命令行界面 |
4 | 连接 MySQL 数据库 | mysql -u root -p | 使用 root 用户连接到 MySQL 数据库 |
接下来我们将逐步介绍每一步需要做什么,以及相应的命令和代码。
一、在docker里跑mysql 5.7
docker run -p 13306:3306 --name mysql --restart=always --privileged=true \ -v /data/docker/mysql/log:/var/log/mysql \ -v /data/docker/mysql/data:/var/lib/mysql \ -v /data/docker/mysql/conf:/etc/mysql/conf.d \ -v /etc/localtime:/etc/localtime:ro \ -e MYSQL_ROOT_PASSWORD=123456 \ -d mysql:5.7
注释:
-- name mysql:指定docker容器名叫mysql,当然你可以改成其他的
--restart=always:总是跟随docker启动
--privileged=true:获取宿主机root权限
-v dir_1:dir_2:dir_1指的是宿主机的目录,可以不存在,docker会自动创建,dir_2位容器里面的目录,必须存在,否则容器无法启动
-e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456
二、登录容器后再登录容器里的mysql
[root@localhost mysql_data_backup]# docker exec -it mysql /bin/bash bash-4.2# mysql -uroot -p123456
三、在容器数据库里创建数据库和表
CREATE DATABASE IF NOT EXISTS kahnDB DEFAULT CHARSET utf8 COLLATE utf8_general_ci; use kahnDB; create table student(num int(10) not null unique primary key,name varchar(20) not null,gender varchar(20) not null,birthday datetime,address varchar(50)); insert into student (num,name,gender,birthday,address) VALUES (1,'serena','woman','2000-12-31','shanghai'); insert into student (num,name,gender,birthday,address) VALUES (2,'kahn','nan','2000-01-29','huaian');
四、备份容器中的mysql数据库
#!/usr/bin/env bash docker_name="mysql" backup_dir="/data/docker/mysql/mysql_data_backup" db_name="kahnDB" db_password="123456" xtime=`date +%Y-%m-%d_%H:%M:%S_%5N` docker exec -i ${docker_name} mysqldump -uroot -p${db_password} ${db_name} > ${backup_dir}/${db_name}_${xtime}.sql
到此这篇关于docker启动mysql并映射数据目录(含备份脚本)的文章就介绍到这了,更多相关docker mysql映射目录内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
使用Docker搭建Django,Nginx,R,Python部署环境的方法
本篇文章主要介绍了使用Docker搭建Django,Nginx,R,Python部署环境的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2018-02-02Linux系统安装docker并用ssh登录docker容器的操作方法
今天小编就为大家分享一篇Linux系统安装docker并用ssh登录docker容器的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-06-06
最新评论