一、镜像准备
# 镜像搜索
docker search mariadb
# 拉取指定版本mariadb镜像
docker pull mariadb:10.5.6
# 查看本地镜像
docker images
二、创建数据卷文件夹目录
mkdir -p /data/mariadb/data/
三、启动容器并挂载宿主机目录
--name:给了一个 mariadb 的别名
MYSQL_ROOT_PASSWORD:设置 root 密码
--lower_case_table_names=1:设置忽略大小写
docker run -d -p 3306:3306 --name mariadb -v /data/mariadb/data/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root mariadb:10.5.6 --lower_case_table_names=1
四、查看mariadb容器状态
# 查看运行中容器
docker ps
# 查看所有容器
docker ps -a
五、打开mysql命令行,测试安装是否成功
# 进入容器
docker exec -it mariadb /bin/bash
# 进入mysql命令行,密码为创建容器设置的root
mysql -uroot -p
六、修改root用户密码(可选)
# 修改本地密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
#修改远程登录密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'abc123!' WITH GRANT OPTION;
# 立即生效
flush privileges;
七、修改数据库配置(可选)
# 查询最大可执行文件大小:
show VARIABLES like '%max_allowed_packet%';
# 修改最大可执行文件大小(2000M)
set global max_allowed_packet = 2000*1024*1024;
八、时区同步(容器默认UTC时区)
# 1.复制主机localtime
docker cp /usr/share/zoneinfo/Asia/Shanghai mariadb:/etc/localtime
# 2.重启容器
docker restart mariadb
九、容器启动与关闭
# 启动
docker start mariadb
# 关闭
docker stop mariadb
# 重启
docker restart mariadb
十、设置开机自启(可选)
# docker开机自启
systemctl enable docker.service
# mariadb容器开机自启
docker update --restart=always mariadb