最近慢慢熟悉了docker,打算将一些开发环境搬迁到docker容器里面便于管理和备份。
docker安装部分就不介绍了,可看官方文档
1.下载mysql镜像1docker pull mysql:8.0
下载的版本为8.0的mysql
2. 创建容器1docker run -p 3306:3306 --restart=always -name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0
创建容器,将容器的3306端口映射到本地的3306端口,设置为docker启动时容器自启动,命名为mysql,设置数据库密码为root
3.导出本地数据库
将本地mysql的数据库导出为sql文件1mysqldump -u root -p you_database > you_database.sql
4.将导出的sql文件复制到docker容器里1docker cp you_database.sql mysql:/opt/
此时sql文件就到mysql容器里的/opt/路径里面了。
然后进入容器里面操作1docker exec -it mysql bash
此时就进入到容器里面了,先在容器里面的mysql创建相应的数据库1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16▶ docker exec -it mymysql bash
[email protected]:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 13
Server version: 8.0.13 MySQL Community Server - GPL
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
create database YOU_DATABASE;
创建完相应的数据库后,就可以导入之前复制到容器里面的sql文件了。1[email protected]:/# mysql -u root -p YOUDATABASE < /opt/you_database.sql
此时就大功告成了,然后就可以卸载本地的mysql,达成删库跑路成就了。1
2▶ brew remove mysql
Uninstalling /usr/local/Cellar/mysql/8.0.12... (257 files, 233.2MB)