1130 - Host ‘xxx.x.xx.xxx‘is not allowed to connect to this MySQL server

news2025/6/8 7:38:54

以下为本次问题的解决办法:

1、暂停mysql容器: docker stop mysql

2、删除mysql容器:docker rm mysql

3、查看mysql容器是否被删除:docker ps -a #没有mysql容器就是删除成功

4、run mysql容器:

docker run -d --name mysql-server --restart always -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234  -e MYSQL_USER=rootname -e MYSQL_PASSWORD=1234  -e MYSQL_DATABASE=your_database -p 3306:3306 mysql:8.0 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

以下为解析:

  1. -d
    后台运行容器(detached mode),避免阻塞终端。

  2. --name mysql-server
    为容器指定名称,便于后续管理(如 docker start mysql-server)。

  3. --restart always
    设置容器自动重启策略:

    • 容器退出时自动重启
    • Docker 服务重启时自动启动
    • 适用于需要高可用性的服务(如数据库)。
  4. mysql:8.0
    指定镜像版本为 MySQL 8.0(建议使用具体版本号而非 latest,确保环境稳定性)。

  5. -v mysql-data:/var/lib/mysql
    创建名为 mysql-data 的命名卷(volume),将容器内 /var/lib/mysql 目录(MySQL 数据存储路径)挂载到卷中。
    作用
    • 避免容器删除时数据丢失
    • 支持多容器共享数据
    • 便于数据备份与迁移  
  6. MYSQL_ROOT_PASSWORD=1234
    设置 MySQL root 用户密码(必填)。
    注意

    • 生产环境建议使用强密码(至少 16 位,包含大小写、数字、符号)
    • 避免在命令行中明文传递敏感信息(可用 --env-file 加载环境变量文件)
  7. MYSQL_USER=rootname
    创建新用户 rootname(非 root 用户)。
    注意

    • 不要将新用户命名为 root(会与系统默认 root 用户冲突)
    • 建议使用业务相关的用户名(如 app_user
  8. MYSQL_PASSWORD=1234
    设置 rootname 用户的密码。
    注意

    • 与 MYSQL_ROOT_PASSWORD 相同密码存在安全风险
    • 生产环境需使用不同的强密码
  9. MYSQL_DATABASE=your_database
    初始化一个名为 your_database 的数据库(容器启动时自动创建)。

  10. -p 3306:3306
    将容器内的 MySQL 服务端口(3306)映射到主机的 3306 端口。
    访问方式
    • 主机本地:mysql -h 127.0.0.1 -u rootname -p
    • 外部网络:mysql -h [主机IP] -u rootname -p
      注意
    • 确保主机 3306 端口未被占用(可用 netstat -tulpn | grep 3306 检查)
    • 生产环境建议修改映射端口(如 3307:3306)减少暴露风险
  11. --character-set-server=utf8mb4
    设置服务器默认字符集为 utf8mb4(支持 emoji 等特殊字符)。

  12. --collation-server=utf8mb4_unicode_ci
    设置默认排序规则为 utf8mb4_unicode_ci(不区分大小写,支持更广泛的语言排序)。
    对比

    • utf8mb4_unicode_ci:更标准的 Unicode 排序
    • utf8mb4_general_ci:性能略高,但部分语言排序可能不准确

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2403883.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day029-Shell自动化编程-计算与while循环

文章目录 1. read 交互式初始化变量1.1 案例-安装不同的软件1.2 案例-比较大小 2. 计算2.1 bc2.2 awk2.3 expr2.4 let2.5 案例-计算内存的空闲率2.6 案例-检查域名过期时间和https整数过期时间 3. 循环3.1 循环控制语句3.2 for循环-c语言格式3.3 while循环3.3.1 案例-猜数字3.3…

Linux命令基础(2)

su和exit命令 可以通过su命令切换到root账户 语法:su [-] 用户名 -符号是可选的,表示是否在切换用户后加载环境变量,建议带上 参数:用户名,表示要切换的用户,用户名可以省略,省略表示切换到ro…

vue3 + vite实现动态路由,并进行vuex持久化设计

在后台管理系统中,如何根据后端返回的接口,来动态的设计路由呢,今天一片文章带你们解 1、在vuex中设置一个方法 拿到完整的路由数据 const state {routerList: []}; const mutations { dynameicMenu(state, payload) {// 第一步 通过glob…

学习路之php--性能优化

一、php周边优化 二、代码级优化 变量管理‌ 及时unset()释放大数组/对象,减少内存占用局部变量访问速度比全局变量快约2倍,优先使用局部变量大数组采用引用传递(&$var)避免内存 循环优化‌ 预计算循环次数: …

GC1808:高性能24位立体声音频ADC芯片解析

1. 芯片简介 GC1808 是一款24位立体声音频模数转换器(ADC),支持96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于家庭影院、蓝牙音箱等场景。 核心特性 高精度:24位分辨率,…

echarts使用graph、lines实现拓扑,可以拖动增加effect效果

options.js // import React from react // import * as echarts from echartsimport ./index.lessexport const useEchartsOptionFun ({ nodeDataList, getNodeLinksDataList, getLinesCoordsFun }) > {const option {title: {text: 拓扑关系图,top: top,left: center,}…

产品经理课程(九)

从需求到功能设计 (一)复习 产品规划:产品定位、阶段性计划 产品定位:产品画布(9个步骤;最重要的是先解决什么问题) (Roadmap)目标要素:时间、事项、里程碑…

从零开始开发纯血鸿蒙应用之网络检测

从零开始开发纯血鸿蒙应用 〇、前言一、认识 connection 模块1、获取默认网络2、获取网络能力信息3、解析网络能力信息3.1、NetCap3.2、NetBearType 二、实现网络检测功能1、申请权限2、获取默认网路的 NetCap 数组 三、总结 〇、前言 在之前的博文里,介绍了如何实…

向 AI Search 迈进,腾讯云 ES 自研 v-pack 向量增强插件揭秘

作者:来自腾讯云刘忠奇 2025 年 1 月,腾讯云 ES 团队上线了 Elasticsearch 8.16.1 AI 搜索增强版,此发布版本重点提升了向量搜索、混合搜索的能力,为 RAG 类的 AI Search 场景保驾护航。除了紧跟 ES 官方在向量搜索上的大幅优化动…

【win | docker开启远程配置】使用 SSH 隧道访问 Docker的前操作

在主机A pycharm如何连接远程主机B win docker? 需要win docker配置什么? 快捷配置-主机B win OpenSSH SSH Server https://blog.csdn.net/z164470/article/details/121683333 winR,打开命令行,输入net start sshd,启动SSH。 或者右击我的电脑&#…

股指期货波动一个点多少钱?

很多朋友在交易股指期货时,都会好奇一个问题:股指期货波动一个点,我的账户里到底是赚了还是亏了多少钱?要搞清楚这个问题,其实很简单,只需要了解两个关键信息:股指期货的“交易单位”&#xff0…

iOS、Android、鸿蒙、Web、桌面 多端开发框架Kotlin Multiplatform

Kotlin Multiplatform(简称 KMP)是 JetBrains 推出的开源跨平台开发框架 Kuikly 是腾讯开源的跨端开发框架,基于 Kotlin Multiplatform 技术构建,为开发者提供了技术栈更统一的跨端开发体验 KMP 不仅局限于移动端,它…

探索C++标准模板库(STL):String接口的底层实现(下篇)

前引:在C的面向对象编程中,对象模型是理解语言行为的核心。无论是类的成员函数如何访问数据,还是资源管理如何自动化,其底层机制均围绕两个关键概念展开:this指针与六大默认成员函数。它们如同对象的“隐形守护者”&am…

Flutter知识点汇总

Flutter架构解析 1. Flutter 是什么?它与其他移动开发框架有什么不同? Flutter 是 Google 开发的开源移动应用开发框架,可用于快速构建高性能、高保真的移动应用(iOS 和 Android),也支持 Web、桌面和嵌入式设备。。它与其他移动开发框架(如 React Native、Xamarin、原…

​线性注意力 vs. 传统注意力:效率与表达的博弈新解

​核心结论​:线性注意力用计算复杂度降维换取全局建模能力,通过核函数和结构优化补足表达缺陷 一、本质差异:两种注意力如何工作? ​特性​传统注意力(Softmax Attention)线性注意力(Linear At…

YOLO在QT中的完整训练、验证与部署方案

以下是YOLO在QT中的完整训练、验证与部署方案: 训练方案 准备数据集: 收集数据:收集与目标检测任务相关的图像数据集,可以是公开数据集如COCO、Pascal VOC,也可以是自定义数据集。标注数据:使用标注工具如…

增量式网络爬虫通用模板

之前做过一个项目,他要求是只爬取新产生的或者已经更新的页面,避免重复爬取未变化的页面,从而节省资源和时间。这里我需要设计一个增量式网络爬虫的通用模板。可以继承该类并重写部分方法以实现特定的解析和数据处理逻辑。这样可以更好的节约…

【JVM】三色标记法原理

在JVM中,三色标记法是GC过程中对象状态的判断依据,回收前给对象设置上不同的三种颜色,三色分为白色、灰色、黑色。根据颜色的不同,决定对象是否要被回收。 白色表示: 初始状态:所有对象未被 GC 访问。含义…

【uniapp开发】picker组件的使用

项目uniapp,结合fastadmin后端开发 picker组件的官方文档说明 https://en.uniapp.dcloud.io/component/picker.html#普通选择器 先看效果: 1、实现设备类型的筛选;2、实现设备状态的筛选; 前端代码(节选&#xff0…

【HarmonyOS Next之旅】DevEco Studio使用指南(三十一) -> 同步云端代码至DevEco Studio工程

目录 1 -> 同步云函数/云对象 1.1 -> 同步单个云函数/云对象 1.2 -> 批量同步云函数/云对象 2 -> 同步云数据库 2.1 -> 同步单个对象类型 2.2 -> 批量同步对象类型 3 -> 一键同步云侧代码 1 -> 同步云函数/云对象 说明 对于使用DevEco Studio…