docker启动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

点个赞吧老弟

相关推荐

  1. docker启动mysql映射数据目录备份脚本

    2023-12-30 07:34:03       60 阅读
  2. xbackup 备份MySQL数据库脚本

    2023-12-30 07:34:03       38 阅读
  3. 使用脚本定时备份MySql数据库文件

    2023-12-30 07:34:03       175 阅读
  4. shell脚本实现mysql 数据库备份

    2023-12-30 07:34:03       27 阅读
  5. MySQL自动备份脚本

    2023-12-30 07:34:03       64 阅读
  6. Shell脚本实现MySQL线上数据备份

    2023-12-30 07:34:03       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-30 07:34:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-30 07:34:03       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-30 07:34:03       87 阅读
  4. Python语言-面向对象

    2023-12-30 07:34:03       96 阅读

热门阅读

  1. DjangoRestFramework概括

    2023-12-30 07:34:03       62 阅读
  2. dCardAlarmController required a single bean, but 2 were found:

    2023-12-30 07:34:03       58 阅读
  3. Kotlin基础语法

    2023-12-30 07:34:03       51 阅读
  4. 在Python中使用列表推导式List Comprehension的8个层次

    2023-12-30 07:34:03       61 阅读
  5. LeetCode 88. 合并两个有序数组

    2023-12-30 07:34:03       59 阅读
  6. Vuex介绍2

    2023-12-30 07:34:03       61 阅读
  7. 用轻量级ORM--Dapper调用MySQL存储过程

    2023-12-30 07:34:03       73 阅读