Ubuntu下使用Docker搭建MySQL步骤备忘
docker 安装和 pull MySQL镜像这里就不介绍了,很多介绍,建议去docker官方网站查看。
本文主要介绍MySQL container 运行起来之后的一些配置
在往下看之前,确保
docker container ls
可以看到MySQL的容器。
[1]如果database的schema不在服务器上,SCP服务可用的情况下,只是传schema一个文件的话,最快最简介的方式就是
scp -P port /path/to/local/file user@server:/path/to/save/the/file
一般出于安全考虑大家不会用默认的23端口号开ssh服务的对吧(:P)
这里-P 就是设置自定义的ssh端口号参数
schema传到宿主服务器之后呢,容器里并不能直接使用。
需要使用docker的cp命令,传输文件
docker cp /path/to/host/file containerID:/path/to/save/file
containerID可以用
docker container ls
查看,container ID是一长串数字字母的组合表示的hash值,一般只需要输入前面5-7位足以和其他ID区分的值就可以了。
这条命令也可以看到container name,一般可读性更好一些,也可以用container name代替上面的container ID
然后就可以用sql文件导入schema了,命令类似
mysql -hhost -u user -p database < schema.sql
host是MySQL container的ip,也可以是container name,IP 可以用
docker container inspect containerID
查看,这里containerID也可以用container name替代。
第一次导入,mysql实例里可能没有要创建的数据库,那么需要先登陆mysql创建数据库。
mysql -hhost -u user -p
然后输入密码,登陆,看到这里的人应该都知道,这里输入密码是不会回显***的对吧(:P)
mysql> create database;
这样就创建数据库成功了,后续导入脚本之后
mysql>use database;
mysql>show tables;
看到schema预期要创建的表,就告一段落了。
参考:[1] 利用scp 远程上传下载文件/文件夹