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 compose的常用命令(安装docker和docker-compose实例详解)
- 腾讯云docker安装elasticsearch(docker 启动elasticsearch镜像,挂载目录后报错的解决)
- docker构建本地镜像(Docker创建本地镜像实现方法解析)
- docker desktop怎么安装共识容器(安装Docker Desktop报错WSL 2 installation is incomplete的问题解决报错)
- docker python如何运行(Docker容器化部署Python应用过程解析)
- navicat连接mysql1045解决方法(Navicat 连接服务器端中的docker数据库的方法)
- elasticsearch启动报错(解决Docker启动Elasticsearch7.x报错的问题)
- docker管理工具选择(Docker可视化管理工具DockerUI的使用)
- centos上docker的部署(CentOS8下的Docker使用详解)
- docker如何解绑容器(如何进入、退出docker的container实现)
- docker可用容量查看(docker 查看jvm内存占用方式)
- docker compose使用方法(docker和docker-compose一键安装教程支持在线和离线)
- docker查看容器教程(如何使用docker对容器资源进行限制)
- dockernginx服务器教程(Docker镜像+nginx 部署 vue 项目的方法)
- docker 环境下udp双向通信怎么办(解决Docker network Create加--subnet后遇到问题)
- docker原理和使用方法(docker的一些基本指令)
- 花不语 下 如果重来一次的话,你还会这么选择吗(花不语下如果重来一次的话)
- 城市记忆之上海 最难忘的是老弄堂里的市井味道(城市记忆之上海)
- 太鸡贼了,这老小区轻松搞定了停车问题(这老小区轻松搞定了停车问题)
- 太鸡贼了,这老小区轻松搞定了停车问题(这老小区轻松搞定了停车问题)
- 节日我在岗|警景相融 平安相伴(节日我在岗警景相融)
- 战 疫 时刻 致敬每一位石化大学的 守护者(战疫时刻)
热门推荐
- 宝塔面板网站搭建没锁定文件(宝塔面板曝出严重安全漏洞!站长需赶紧升级到最新版本)
- dedecms怎么在根目录外生成文件夹(dedecms 5.6 缩略图按大小比例缩小裁剪)
- mysqlgroupby语句实现原理(Mysql中错误使用SQL语句Groupby被兼容的情况)
- nginx怎么实现反向代理(nginx反向代理时如何保持长连接)
- 游标和sql语句区别(详解SQL游标的用法)
- python中dict怎么创建(Python数据类型之Dict字典实例详解)
- php服务号openid(php获取微信openid方法总结)
- dedecms织梦阁模板(dedecms英文模板 英文网站程序的选择)
- formdata上传图片参数(data:image data url 文件转为Blob上传后端的方法)
- CentOS 7下安装配置proftpd搭建ftp服务器的详细教程(CentOS 7下安装配置proftpd搭建ftp服务器的详细教程)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9