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目录(如何完全清理你的Docker数据)
- shell监控docker各种状态(如何监控docker容器运行状态 shell 脚本)
- docker 容器经常启动失败(浅谈Docker run 容器处于created状态问题)
- docker查看运行容器参数(Docker容器时区调整操作)
- 更改docker容器的ip地址(docker容器通过ping直接运行获取公网IP操作)
- dockervolume迁移工具(Docker中数据卷volume管理的两种方式)
- 如何编写docker-compose(使用Docker Compose搭建 Confluence的教程)
- docker启动sqlserver(用docker运行postgreSQL的方法步骤)
- docker 重置容器的映射端口(运行中的docker容器端口映射如何修改详解)
- docker指令详解(docker create命令的用法说明)
- docker停止删除所有容器方法(Docker stop停止/remove删除所有容器)
- docker 部署netcore(关于Jenkins + Docker + ASP.NET Core自动化部署的问题避免踩坑)
- docker查看容器教程(如何使用docker对容器资源进行限制)
- docker网页实现idea项目(IDEA 配置Docker的过程)
- docker挂载的注意事项(解决docker日志挂载的问题)
- docker部署php本地开发环境(CentOS7环境下使用Docker搭建PHP运行环境的过程详解)
- 三分71 生死战爆发 篮网旧将丁威迪今天成奇兵,助队赢球(三分71生死战爆发)
- 《红 雄安》系列广播剧第一集 水上奇兵雁翎队(雄安系列广播剧第一集)
- 小说 小伙穿越成刘备,用现代知识指挥作战,众谋士都看呆了(小伙穿越成刘备)
- 解析葡萄牙6-1瑞士 进攻多点开花,贡萨洛-拉莫斯一战成名(解析葡萄牙6-1瑞士)
- 这支 奇兵队 腕大 有范儿还各怀绝技,毒贩杀人犯见了都要仓皇而逃(这支奇兵队腕大)
- 雄藩崛起 奇兵队与幕末长州藩军事改革(雄藩崛起奇兵队与幕末长州藩军事改革)
热门推荐
- docker容器的创建启动和停止操作(docker版es、milvus、minio启动命令详解)
- ASP.NET使用JavaScriptSerializer实现序列化与反序列化
- SQL中case when的用法
- WinForm窗体间如何传值
- .net面试智力题
- dedecms有哪些功能(织梦DedeCMS v5.7全文检索使用说明sphinx)
- wordpress的静态php页面在哪(如何让PHPnow支持wordpress静态化链接的方法)
- react的事件绑定(React事件绑定的方式详解)
- 怎么用css设计边框(单元素利用css实现多重边框效果示例代码)
- 详解JS中你不知道的各种循环测速(详解JS中你不知道的各种循环测速)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9