docker mariadb 教程
docker maradb 安装
一、拉取镜像
docker pull mariadb:latest |
二、运行容器
2.1、创建容器
docker run --name testDb -p 10086:3306 -v e:/docker_file/mariadb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mariadb:latest mysqld --innodb-flush-method=fsync |
–name testDb ==> 设置容器别名为
MariaDB
,这样就可以使用别名启动\停止容器
-p 3307:3306 ==> 将主机的10086端口映射到容器的3306端口
-v e:/docker_file/mariadb:/var/lib/mysql ==> 将主机的e:/docker_file/mariadb
目录挂载为容器的mariadb
的数据库存储目录
-e MYSQL_ROOT_PASSWORD=123456 ==> 设置root密码为123456
d ==> 后台守护进程启动容器
mariadb:latest ==> 第一步拉取的镜像
mysqld –innodb-flush-method=fsync ==> 处理windows下初始化容器失败的问题,详情见4.2
部分
这样就可以通过主机的10086端口访问数据库了
2.2、进入容器
如果希望进入mariadb容器
docker exec -it 容器别名\容器id bash |
这样就可以进入容器查看配置了
三、启动\停止容器
docker start testDb |
四、常见错误
4.1、获取日志
docker logs -f -t --tail 10 xxx # 获取xxx容器的最后10行日志 |
4.2、InnoDB: The Auto-extending innodb_system data file
参考地址
1、删除数据库挂载目录下的所有文件,如:我这是e:/docker_file/mariadb
,则需要将该目录下的所有文件删除
2、删除容器
3、创建mariadb容器时添加以下命令
mysqld --innodb-flush-method=fsync |
最终创建容器的命令为:
docker run --name testDb -p 10086:3306 -v e:/docker_file/mariadb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mariadb:latest mysqld --innodb-flush-method=fsync |
docker mariadb 教程