Docker中安装MySql的遇到的问题

目录

一、mysql查询中文乱码问题

1. 进入mysql中进行查看数据库字符集

2. 修改 my.cnf 中的配置

3. 重启mysql容器,使得容器重新加载配置文件

4. 测试结果

二、主从同步中遇到的问题

2.1 Slave_IO_Running:Connecting 的解决方案

1. 确定宿主机防火墙开放mysql的映射端口

2. 检查配置文件中 server_id 是否唯一

3. 检查的同步状态

3.1 查看主服务器当前的二进制日志状态

3.2 进入从机中设置同步配置

2.2 authentication plugin 'caching_sha2_password' cannot be loaded

1. 可以查看 user 中的用户数据

2. 所以需要修改认证插件统一为 mysql_native_password

3. 查看是否修改成功​编辑


一、mysql查询中文乱码问题

由于字符集设置不正确导致。

解决方案:

1. 进入mysql中进行查看数据库字符集

show variables like 'character%';

character_set_client 

character_set_connection

连接到 MySQL 服务器的客户端使用的字符集
character_set_database当前数据库的默认字符集
character_set_results查询结果返回给客户端时使用的字符集
character_set_serverMySQL 服务器使用的默认字符集

 返回的字符集中,character_set_databasecharacter_set_server等都为latin1字符集,所以会出现乱码。

2. 修改 my.cnf 中的配置

我的mysql是挂载在下 /app/mysql-master/conf, 所以我只需要到该路径下修改。

vim /app/mysql-master/conf/my.cnf
[client]
# 设置客户端的默认字符集为 utf8
default-character-set = utf8

[mysqld]
# 设置服务器的排序规则为 utf8_general_ci
collation-server = utf8_general_ci

# 设置服务器的默认字符集为 utf8
character-set-server = utf8

3. 重启mysql容器,使得容器重新加载配置文件

docker restart mysql-master

4. 测试结果

二、主从同步中遇到的问题

在同步测试过程中发现从机并没有同步主机的数据,并且查看从机的状态

# \G 可以将横向的结果集表格转换成纵向展示。
# slave status的字段比较多,纵向展示比友好
show slave status \G;

如果 Slave_IO_Running 和 Slave_SQL_Running 不为 Yes。

2.1 Slave_IO_Running:Connecting 的解决方案

1. 确定宿主机防火墙开放mysql的映射端口

如果不是生产环境,可以直接简单粗暴先暂时关闭防火墙进行排错。

# 查看防火墙状态
systemctl status firewalld

# 暂时关闭防火墙
systemctl stop firewalld

# 永久关闭防火墙
systemctl disable firewalld

2. 检查配置文件中 server_id 是否唯一

如果修改了配置文件需要重启容器使得生效,

docker restart mysql-master

ps:主机和从机都查看一遍

3. 检查的同步状态

3.1 查看主服务器当前的二进制日志状态
show master status;
3.2 进入从机中设置同步配置

如果已经启动和同步,需要先关闭同步

stop slave;
-- 格式:
-- change master to master_host='宿主机ip',master_user='主数据库配置的主从复制用户名',master_password='主数据库配置的主从复制用户密码',master_port=宿主机主数据库端口,master_log_file='主数据库主从同步状态的文件名File',master_log_pos=主数据库主从同步状态的Position,master_connect_retry=连接失败重试时间间隔(秒);

change master to master_host='192.168.xxx.xxx',master_user='slave',master_password='123456',master_port=3307,master_log_file='mall-mysql-bin.000001',master_log_pos=769,master_connect_retry=30;
-- 配置完成后在进行启动同步
start slave;

ps:根据主机配置进行设置。

最后查看主机中的主从复制的状态

# \G 可以将横向的结果集表格转换成纵向展示。
# slave status的字段比较多,纵向展示比友好
show slave status \G;

ps:如果同步不成功,可以在这里查看日志。

2.2 authentication plugin 'caching_sha2_password' cannot be loaded

原因主要是由于MySQL 8.0版本引入了新的默认身份验证插件 caching_sha2_password,而一些旧的MySQL客户端或库可能不支持这个插件,导致连接问题。解决方案 ↓↓↓ ↓↓↓

1. 可以查看 user 中的用户数据
use mysql;
select host,user,plugin from user;
2. 所以需要修改认证插件统一为 mysql_native_password
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

ALTER USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
3. 查看是否修改成功

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式学习第十四天!(结构体、共用体、枚举、位运算)

1. 结构体: 1. 结构体类型定义: 嵌入式学习第十三天!(const指针、函数指针和指针函数、构造数据类型)-CSDN博客 2. 结构体变量的定义: 嵌入式学习第十三天!(const指针、函数指针和…

推荐一个好用的旧版本软件安装包下载地址

最近要下载旧版本的mysql和postman,发现官网和其他博客里边提供的地址,要不都非常难找到相应的下载链接,要不就是提供的从别的地方复制过来的垃圾教程,甚至有的下载还要积分,反正是最后都没下载成功,偶然发…

安全通道堵塞识别摄像机

当建筑物的安全通道发生堵塞时,可能会给人员疏散和救援带来重大隐患。为了及时识别和解决安全通道堵塞问题,专门设计了安全通道堵塞识别摄像机,它具有监测、识别和报警功能,可在第一时间发现通道堵塞情况。这种摄像机通常安装在通…

Mysql-索引创建,索引失效案例

索引创建建议 1 什么情况下需要创建索引? 频繁出现在where 条件字段,order排序,group by分组字段select 频繁查询的列,考虑是否需要创建联合索引(覆盖索引,不回表)多表join关联查询&#xff0…

【PyRestTest】高级使用

本节主要涉及PyRestTest的高级特征的详细使用,主要指:generators(生成器), variable binding(变量绑定), data extraction(数据提取), content validators(文本验证) 它们是如何组合在一起的? 模板和上下文 测试和基准测试可以使用变量来模板化动态配置。使用基础的…

OSPF排错

目录 实验拓扑图 实验要求 实验排错 故障一 故障现象 故障分析 故障解决 故障二 故障现象 故障分析 故障解决 故障三 故障现象 故障分析 故障解决 故障四 故障现象 故障分析 故障解决 故障五 故障现象 故障分析 故障解决 故障六 故障现象 故障分析 …

区块链游戏解说:什么是 SecondLive

数据源:SecondLive Dashboard 作者:lesleyfootprint.network 什么是 SecondLive SecondLive 是元宇宙居民的中心枢纽,拥有超过100 万用户的蓬勃社区。它的主要使命是促进自我表达,释放创造力,构建梦想中的平行宇宙…

【HTML】自定义属性(data)

自定义属性 data: 的用法(如何设置,如何获取) ,有何优势? data-* 的值的获取和设置,2种方法: 传统方法 getAttribute() 获取 data- 属性值; setAttribute() 设置 data- 属性值getAttribute() 获取 data- 属性值; setAttribute()…

腾讯云SSL证书在阿里云添加域名DNS解析

场景说明 在阿里云申请并备案了域名,这个域名理论上可以在任何服务器上进行绑定。应用服务器部署到腾讯云,并在腾讯云申请了SSL证书,从而完成HTTPS转化。那么问题来了,腾讯提供的免费版SSL证书是一年有效期,到期后就需…

Cadence——布线部分相关教程

(一)PCB布线叠层与阻抗设计 PCB布线要区分有阻抗和无阻抗这个是根据频率和速率来区分,一般达100M以上就是有阻抗,单端信号一般是五十欧姆,差分信号一般一百欧姆 叠成是多层板由不同的介质压合而成,介质是&…

SD-WAN技术:网络升级的智慧选择

在移动办公、云计算技术和多元化的应用交付方式不断普及的今天,企业网络正变得越来越错综复杂,充满了不可预测性。为了跟上这一网络发展的步伐,IT部门需要深刻反思网络建设的方式,而定义软件广域网(SD-WAN)…

Ubuntu系统硬盘分区攻略(磁盘分区、RAID磁盘阵列、RAID阵列、固态硬盘分区、机械硬盘分区、swap分区、swap交换分区)

文章目录 分区需求分区方案分区顺序相关疑问swap分区不是应该放在最后吗?我安装系统分区的时候,上面有available devices,下面有create software raid(md),我该用哪个?我available devices下面有个893G的固态&#xff…

C++数据结构与算法——链表

C第二阶段——数据结构和算法,之前学过一点点数据结构,当时是基于Python来学习的,现在基于C查漏补缺,尤其是树的部分。这一部分计划一个月,主要利用代码随想录来学习,刷题使用力扣网站,不定时更…

推特账号被冻结怎么办?检查IP是否正常

Twitter 拥有庞大的用户群和日常内容流,是沟通、网络和营销的重要平台。然而,处理其限制和潜在的帐户问题可能很棘手。有许多跨境社媒小伙伴反馈,账号无故被冻结,导致内容与客户尽失!其实除了账户养号、被举报、广告信…

重磅!讯飞星火V3.5发布,携手35万生态开发者,赋能千行百业

今天的通用人工智能必将像PC和互联网的诞生一样,深刻改变人类生产生活方式。2023年,大模型的基础研究和应用风起云涌。2024年,国内大模型距国际顶尖技术追平了多少?大模型在哪些领域产生了效益? 1月30日,讯…

前端工程\模块化

前端工程\模块化🏭 本篇文章,学习记录于:尚硅谷🎢,紧接前文:邂逅Node.JS的那一夜→博客 无论是前端、后端、甚至非编程领域都有模块化的概念,只是不同的领域叫法不同,不过&#xf…

【WPF.NET开发】优化性能:图形呈现层

本文内容 图形硬件呈现层定义其他资源 呈现层为运行 WPF 应用程序的设备定义图形硬件功能和性能级别。 1、图形硬件 对呈现层级别影响最大的图形硬件功能包括: 视频 RAM - 图形硬件中的视频内存量决定了可用于合成图形的缓冲区大小和数量。 像素着色器 - 像素着…

【升级openssl1.1.1t报错libssl.so.1.1: cannot open shared object file】

升级openssl报错: openssl vesion openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory 编译安装openssl1.1.1t当执行openssl version的时候,报上述错误,将编译到的…

OCP NVME SSD规范解读-8.SMART日志要求-4

SMART-21:这段描述解释了一个与设备内部I/O操作非对齐相关的计数器功能。该计数器记录的是由NVMe SSD执行的、起始地址未按照设备内部间接寻址单元(IU,Indirection Unit)大小进行对齐的写入I/O操作数量。 “Alignment”指的是每次…

2014年苏州大学837复试机试C/C++

2014年苏州大学复试机试 要求 要求用C/C编程;对程序中必要的地方进行注释。上机规则 请在电脑桌面上新建一个文件夹文件夹名为考试姓名(中文);考试完毕后,将所编写的文件放在上述文件中。 第一题(20分&…