Docker安装MySQL5.7

背景
自己的练手小项目需要部署到公网服务器,需要连接mysql数据库,这里选择docker安装mysql5.7,简单便捷。

至于为什么选择mysql5.7,是因为mysql5.7版本稳定,其次安装相较于其他高版本(mysql8)实在是简单太多了,少了很多grant等初始化操作,比如access denied for user root......password no。看到这些连接错误提示信息实在头疼。

前提
安装好docker,配置好阿里云镜像。

实践
1、拉取mysql5.7的docker镜像

docker pull mysql:5.7

创建挂载的文件夹和文件


cd /etc
touch my.cnf
vim my.cnf

在my.cnf填入以下信息

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d



配好阿里云镜像仓库地址后,拉取镜像还是挺快的。

2、启动镜像

docker run -d -p 3306:3306 --privileged=true -v /etc/my.cnf:/etc/my.cnf -v /var/lib/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD='root' --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci



表示映射宿主机3306端口到容器内部的3306端口,mysql连接密码为root,配置了容器my.cnf和mysql数据目录在宿主机的链接,设置了mysql编码为utf8.

3、查看容器运行状态

docker ps -a



容器在运行表示启动成功,不需要再做任何操作就可以通过root用户和IP密码去连接mysql了。

注意 :
如果使用的是云服务器,需要配置安全组策略后本地数据库连接工具才能成功连接数据库!
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

穗余

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值