您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
31_尚硅谷_Docker_安装mysql
发布时间:2022-11-18 23:00:14编辑:雪饮阅读()
step1
运行mysql5.6
docker run -p 12345:3306 --name mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/logs -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
这里其它参数都没有什么,但是-e参数需要说下,-e参数是为了设置一个环境变量,该环境变量会自动设置到所运行的容器中,这里就正好是因为这个mysql5.6镜像里面有用到这个环境变量。
step2
在mysql容器中创建数据
docker exec -it 133b55bb05cf /bin/bash
root@133b55bb05cf:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.51 MySQL Community Server (GPL)
Copyright (c) 2000, 2021, 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.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
mysql> create database test
-> ;
Query OK, 1 row affected (0.01 sec)
mysql> use test
Database changed
mysql> create table t1(id int not null);
Query OK, 0 rows affected (0.00 sec)
mysql> insert into t1(id) values(1);
Query OK, 1 row affected (0.00 sec)
mysql> select * from t1;
+----+
| id |
+----+
| 1 |
+----+
1 row in set (0.00 sec)
step3
导出mysql5.6所有库
docker exec 133b55bb05cf sh -c 'exec mysqldump --all-databases -u root -p"123456"' > /root/all-databases.sql
或者命令
docker exec 133b55bb05cf sh -c 'mysqldump --all-databases -u root -p"123456"' > /root/all-databases.sql
这里发现这两个命令都可以,那么首先sh –c就是可以将一正个字符串解析为命令来执行。
而sh –c后面字符串里面的exec代替shell程序,命令退出,shell 退出;比如 exec ls。
那么我可以理解为,我们每次-it后后面要跟随一个/bin/bash或/bin/sh等,那么这里的exec应也是有此效果,但是现在是为了将数据导出而已并不需要交互,那么正如exec的作用命令退出则shell退出。
但是这里又发现我即使不用exec命令也可以。具体原因不详。
另外一个注意的就是mysql那个-p参数后面要仅仅跟随密码,不能像正常命令那样中间需要有个空格,我这里第一次尝试的适合就是有空格,结果导致所有库导出不了。没有效果。
--all-databases参数其实我觉得应该就是见名知意咯。
关键字词:Docker,安装,mysql
上一篇:gitlab服务端搭建
相关文章
- 29_尚硅谷_Docker_DockerFile案例-自定义的tomcat9上
- composer在linux中最简单省事的安装方法(跳过ssl/http
- 安装并运行grafana
- 28_尚硅谷_Docker_DockerFile案例-自定义的tomcat9
- 27_尚硅谷_Docker_DockerFile案例-ONBUILD命令案例
- 26_尚硅谷_Docker_DockerFile案例-CMD-ENTRYPOINT命令
- 25_尚硅谷_Docker_DockerFile案例-自定义镜像mycentos
- 21_尚硅谷_Docker_容器数据卷volumes-from(容器数据卷
- 20_尚硅谷_Docker_容器数据卷用DockerFile添加
- 19_尚硅谷_Docker_容器数据卷用V命令添加(挂载卷及挂