mysql允许远程访问docker(Docker部署mysql远程连接 解决2003的问题)
mysql允许远程访问docker
Docker部署mysql远程连接 解决2003的问题连接MySQL这里我使用navicat远程连接,连接MySQL前需要防火墙开放端口或者关闭防火墙。
开放端口
firewall-cmd --add-port=3306/tcp --permanent // --permanent 永久生效,没有此参数重启后失效
firewall-cmd --reload // 重新载入
关闭防火墙
systemctl stop firewalld
systemctl enable iptables // 设置开机启动
firewall-cmd --reload // 重新载入
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
补充:Docker部署mysql远程连接 解决1251
原因:mysql 8.0 默认使用 caching_sha2_password 身份验证机制,客户端不支持新的加密方式。
解决方案:修改用户(root)的加密方式
步骤:
1. 进入mysql容器内部
[root@localhost ~]# docker exec -it javakfmysql bash ## javakfmysql是容器的别名,这里也可以用容器的id代替
2. 登录mysql
root@e285125c99d6:/# mysql -u root -p
3. 设置用户配置项
查看用户信息
mysql> select host,user,plugin,authentication_string from mysql.user; +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | host | user | plugin | authentication_string | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | % | root | caching_sha2_password | $A$005$HF7;krfwhkKHp5fPenQm4J2dm/RJtbbyjtCUVdDCcboXQw3ALxsif/sS1 | | localhost | mysql.infoschema | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | | localhost | mysql.session | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | | localhost | mysql.sys | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | | localhost | root | mysql_native_password | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | +-----------+------------------+-----------------------+------------------------------------------------------------------------+
备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password
修改加密方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; ### 123456 mysql的登录密码 flush privileges;
然后再查看用户信息
mysql> select host,user,plugin,authentication_string from mysql.user; +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | host | user | plugin | authentication_string | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ | % | root | mysql_native_password | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | localhost | mysql.infoschema | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | | localhost | mysql.session | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | | localhost | mysql.sys | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | | localhost | root | mysql_native_password | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | +-----------+------------------+-----------------------+------------------------------------------------------------------------+ 5 rows in set (0.00 sec)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持开心学习网。如有错误或未考虑完全的地方,望不吝赐教。
- docker指定容器id(Docker批量容器编排的实现)
- docker管理工具选择(Docker可视化管理工具DockerUI的使用)
- docker-compose启动单个容器(docker-compose快速搭建docker私有仓库的步骤)
- docker-compose 如何启动(docker compose部署主从复制的实现)
- 将docker中的镜像打包教程(本地使用docker打包部署镜像的方法)
- 怎么用docker搭建测试环境(基于docker 搭建Prometheus+Grafana的过程详解)
- docker配置文件详解(Docker中搭建FastDFS文件系统多图教程)
- docker如何解绑容器(如何进入、退出docker的container实现)
- docker搭建编译开发环境(Shell脚本构建Docker 半自动化编译打包发布应用操作)
- dockerfile挂载目录(解决docker run中使用 ./ 相对路径挂载文件或目录失败的问题)
- docker redis安装配置(在docker中部署并启动redis的方法)
- docker 跨主机的网络通信(docker 基于golang镜像构建 ssh服务的方法)
- jenkins回滚docker容器(关于docker部署的jenkins跑git上的程序的问题)
- docker安装镜像失败(阿里云镜像安装docker报错的问题及解决方案)
- docker gitlab 配置(使用Docker构建一个Git镜像使用clone仓库)
- docker容器启动后秒退(解决docker run 或者 docker restart 启动镜像就自动退出)
- 王牌部队,你看的剧情我看的时尚(你看的剧情我看的时尚)
- 被鉴定的古董价值300万 当心,你可能遇到诈骗了(被鉴定的古董价值300万)
- 英语难学吗(初中英语难学吗)
- 如何追女孩子(如何追女孩子的技巧和方法)
- 是不是快乐全被你拿走了(而是你得到的)
- 世界上只有妈妈好(世界上只有妈妈好的歌词)
热门推荐
- 云服务器50g月流量(云服务器怎么查看流量使用情况?)
- python实现七个基本算法(python实现维吉尼亚算法)
- vue三种判断条件(Vue中插槽和过滤器的深入讲解)
- pythonpandas数据类型(Python3.5 Pandas模块之Series用法实例分析)
- phpstudy使用教程最新版(phpstudy安装使用图文教程)
- mongodb索引的优化
- nginxdjango部署(详解Django+uwsgi+Nginx上线最佳实战)
- C#中的readonly和const关键字
- table表格嵌套,边框重叠变粗的解决
- docker python如何运行(Docker容器化部署Python应用过程解析)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9