赞
踩
因为一些原因,要用到旧版本的mysql,但是debian11系统中,尝试了多种方法,都不能很好的实现,所以,采用了docker 来安装。这里做一下记录。
1. 参考链接: url: https://hub.docker.com/_/mysql/
2. 编辑 Abc_docker.yml 文档 . (根据需要,修改容器名和密码,也就是root用户的密码;默认mysql的root用户可远程登录)
- version: '3.1'
-
- services:
-
- db:
- image: mysql:5.6
- command: --default-authentication-plugin=mysql_native_password
- restart: always
- container_name: Abc_mysql
-
- volumes:
- - ./Mysql/mysql:/var/lib/mysql
- - ./Mysql/conf:/etc/mysql
- - /etc/localtime:/etc/localtime
-
- environment:
- - TZ=Asia/Shanghai
- - MYSQL_ROOT_PASSWORD=123456789
- ports:
- - 23456:3306
- adminer:
- image: adminer
- restart: always
- container_name: Abc_adminer
- ports:
- - 8079:8080
提示: 官方是代有adminer的,也可以删去这一部分,使用phpMyAdmin 远程登录。默认root是可以远程登录数据库的
3.在与 MySQL-docker.yml相同的文件夹下,新建文件夹
- mkdir Mysql/mysql /Mysql/conf
- # 这两个文件夹分别存放mysql的数据和配置文档
4. 启动容器,使用浏览器登录 adminer,管理数据库
- docker-compose -f Abc_mysql.yml up -d
- # 在配置文件中,定义了两个容器,名称分别是Abc_mysql 和Abc_adminer
- # 可以用http://host-ip:8079 使用root账户和你所设定的密码来进入管理工具
5. 命令行下导出和导入数据库
- # 首先是导出
- docker exec Abc_mysql sh -c 'exec mysqldump --all-databases -uroot -p"123456789"' > /home/data_back/all-databases.sql
-
- # 导入备份过的数据库
- docker exec -i Abc_mysql sh -c 'exec mysql -uroot -p"123456789"' < /home/data_back/all-databases.sql
-
- # 以上是在普通命令行下进行。 可以选择进入容器,用命令行进行其他操作
- docker exec -it Abc_mysql bash
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。