CentOS7 Docker安装MySQL全过程,包括配置远程连接账户
1.拉取MySQL镜像
docker pull mysql:8.4.5 #这是一个LTS长期支持版本
等待拉取完成即可
2.启动容器
docker run -d \--name mysql8 \-v /home/disk/dockerData/mysql/data:/var/lib/mysql \-v /home/disk/dockerData/mysql/config/my.cnf:/etc/mysql/my.cnf \-v /home/disk/dockerData/mysql/mysql-files:/var/lib/mysql-files \-e MYSQL_ROOT_PASSWORD=mysql@123\-p 3306:3306 \--restart=unless-stopped \mysql:8.4.5
--restart=unless-stopped
意味着除非容器被手动停止,否则无论系统如何重启或崩溃,容器都会自动启动
容器启动后进入容器登录root账户
docker exec -it mysql8 mysql -u root -p
键入上述指令后会要求输入密码,密码是刚刚运行命令中指定的: -e MYSQL_ROOT_PASSWORD=mysql@123
,即“mysql@123”,输入即可。(注意,输入时并不会显示任何字符,但实际已经输入,输入完毕回车即可)
登录成功后会进入mysql命令行
# 创建非root账号用于远程连接使用,username和password自行替换设置
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
# 赋予所以权限并允许任何ip链接
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
# 刷新权限
FLUSH PRIVILEGES;
之后就可以使用数据库连接工具测试连接、进行使用。