docker运维mysql8笔记
文档地址
部署要点
要点 | 处理方式 |
---|---|
启动指令 | plain $ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag |
登录进去 | plain $ docker run -it --network some-network --rm mysql mysql -hsome-mysql -uexample-user -p |
指定网络 | plain $ docker run -it --network some-network --rm mysql mysql -hsome-mysql -uexample-user -p |
shell日志 | plain docker logs some-mysql |
shell进入 | plain docker exec -it some-mysql bash |
配置文件 | plain docker run --name some-mysql -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag |
变量传递 | plain docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci |
变量传递 | ### MYSQL_ROOT_PASSWORD ### MYSQL_DATABASE ### MYSQL_USER, MYSQL_PASSWORD ### MYSQL_ALLOW_EMPTY_PASSWORD ### MYSQL_RANDOM_ROOT_PASSWORD ### MYSQL_ONETIME_PASSWORD ### MYSQL_INITDB_SKIP_TZINFO |
存储数据到磁盘 | 1. plain docker run --name some-mysql -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag |
dump镜像数据到磁盘 | shell docker exec some-mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /some/path/on/your/host/all-databases.sql |
磁盘数据恢复镜像中的数据库 | shell docker exec -i some-mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /some/path/on/your/host/all-databases.sql |