centos7上用docker部署mysql 5.7,并解决中文乱码问题

1. 安装docker

查看这篇文章的前半部分即可:
虚拟机上安装docker,并安装flink镜像

2. 安装mysql 5.7

2.1 下载mysql镜像

可以使用docker search mysql命令查看远程镜像仓库中的镜像信息,或者访问dockerhub去找需要的镜像
这里直接拉取镜像:

docker pull mysql:5.7

2.2 安装mysql镜像

docker run -d -p 3306:3306 --privileged=true \ 
-v /amos/mysql/log:/var/log/mysql \ 
-v /amos/mysql/data:/var/lib/mysql \ 
-v /amos/mysql/conf:/etc/mysql/conf.d \ 
-e MYSQL_ROOT_PASSWORD=goodme \ 
--name mysql \ 
mysql:5.7

说明:上面三个-v分别挂载了三个本地卷,分别对应容器内的日志目录,data目录,和配置目录
初始密码是MYSQL_ROOT_PASSWORD对应的值,容器名字为mysql

2.3 进入容器并查看数据库参数信息

用docker ps命令查看mysql容器是否启动

[root@localhost conf]# docker ps
CONTAINER ID   IMAGE       COMMAND                   CREATED         STATUS         PORTS                                                  NAMES
3c16d0f3a9c0   mysql:5.7   "docker-entrypoint.s…"   3 seconds ago   Up 2 seconds   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql

进入容器

docker exec -it 3c16d0f3a9c0 bash

在容器中执行命令,myql -uroot -p

bash-4.2# mysql -uroot -p

需要的密码是步骤2.2中的MYSQL_ROOT_PASSWORD对应的密码
执行如下命令show variables like ‘character%’;,查看字符集相关参数:

mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

需要将latin1相关的选项改成utf8,这些latin1的选项会导致中文乱码

需要特别注意的是不要通过sqlyog或者其他数据库连接工具来执行show variables like ‘character%’,应为这些数据库连接客户端的查询结果可能和在数据库中直接查看的结果不一样

2.4 解决中文乱码问题

在外部挂载的配置文件目录中添加配置文件,我用的外部挂载目录是

/amos/mysql/conf

在该文件下vi新建个配置文件,my.cnf, 写入如下内容

[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8

重启mysql容器

docker restart 3c16d0f3a9c0

一定要注意:配置只会对新建的数据库和表生效

3. 查看字符集的配置是否成功

[root@localhost conf]# docker exec -it 3c16d0f3a9c0 bash
bash-4.2# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.44 MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

都变成了utf8,搞定,gagaga!

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

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

相关文章

ubuntu借助overlay方案实现重启自动还原

配置重启还原OS 首先:sudo apt install overlayroot 安装一下软件 然后编辑配置文件:/etc/overlayroot.conf * overlayroottmpfs or overlayroottmpfs:PARAMETERS write all changes to a temporary (ram only) backing device A tmpfs mount will …

ubuntu22.04安装wvp-gb28181-pro 2023-11-23最新版本(一键安装)

下载程序 输入下面命令,输入普通用户密码,切换到 root用户 sudo su git clone -b ubuntu_wvp_online_install_2023_0425 https://gitcode.net/zenglg/ubuntu_wvp_online_install.git 等待下载完成 安装 进入到克隆下来的路径中 cd /home/tuners/ub…

万界星空科技低代码云MES系统

所谓“云MES”,它是基于MES管理云平台储存大数据运算而来,区别于一般管理系统,云MES操作运行不需要独立的服务器去储存和运行,而是通过云端进行数据、储存、运行,最后将计算完的数据在MES系统上呈现,呈现端…

让国内AI模型解题:滑动窗口中找出最大值,文心一言,通义千问错误率100%,讯飞星火略胜一筹

最近,一些大厂陆续放出了自己的AI模型,处于日常的使用和准确度,我通过一道试题来看一下文心一言、讯飞星火和通义千万的回答结果 本道题是一道很经典的算法题,请在滑动窗口中找出最大值 文心一言 第一次给出答案 package main…

vue中v-if与v-for的优先级?

​🌈个人主页:前端青山 🔥系列专栏:Vue篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来vue篇专栏内容:vue中v-if与v-for的优先级? 目录 v-if和v-for的优先级是什么? 一、作用 二、优先级…

移动机器人,开启智能柔性制造新篇章

智能制造是当今工业发展的必然趋势,而柔性制造则是智能制造的重要组成部分。在这个快速变革的时代,如何提高生产效率、降低成本、增强灵活性成为了制造业的关键挑战。富唯智能移动机器人应运而生,为柔性制造注入了新的活力。 基于富唯智能AI-…

凸问题与非凸问题

凸函数:曲线上任意两点连线上的点对应的函数值不大于该两点对应的函数值得连线上的值,例如yx^2; 非凸函数:曲线上任意两点连线上的点对应的函数值既有大于该两点对应的函数值得连线上的值的部分也有小于的部分,例如&am…

Re51:读论文 Language Models as Knowledge Bases?

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文名称:Language Models as Knowledge Bases? ArXiv网址:https://arxiv.org/abs/1909.01066 官方GitHub项目:https://github.com/facebookresearch/LAMA 本文是2019年…

软件测试个人求职简历该怎么写,模板在这里

1、个人资料 姓名:xxx性别:x 手机号码:138888888xx邮箱:xxx 学历:本科专业:电子商务 英语:四级当前工作:测试工程师 从业时间:4年期望薪资:面议 求职意向软件…

FIB表与快速转发表实验

实验名称:FIB表与快速转发表实验 网络拓扑图: 实验步骤: 1、配置接口的IP地址 R1: R2: 2、配置OSPF路由协议 在R1宣告网段 在R2宣告网段 3、查看邻居状态,一直处于2-way状态,要等待30秒&…

SAP 权限设置维护

权限设置维护 su21 点击创建自己的 对象类(OBJECT CLASS ) Z... 在点击创建授权对象 输入对象名 z... 对象名文本 字段名:ACTVT 点击允的许活 按钮 里面增删改查等权限.... 保存 .权限对象 保存后需要 pfcg 配置权限对象 分…

a标签超链接 —— 实现点击前中后变色

浅浅记录下 <style type"text/css"> a:link {color: yellow; /*未访问链接颜色*/ }a:visited {color: red; /*已访问链接颜色*/ }a:hover {color: blue; /*鼠标移动到链接颜色*/text-decoration: underline; }a:active {color: orange; /*鼠标点击时颜色*/ }a…

二叉树:C++实现

引言&#xff1a; 二叉树是一种常见的数据结构&#xff0c;它具有良好的适用性和灵活性&#xff0c;能够应用于各种领域。在C中实现二叉树可以通过使用模板类和结构体来实现。下面我们将介绍如何在C中实现二叉树&#xff0c;并提供一些基本的操作方法。 技术实现&#xff1a; …

如何将音频添加到视频并替换视频中的音轨

随着视频流媒体网站的流行和便携式设备的发展&#xff0c;你可能越来越倾向于自己制作视频并在互联网上分享。有时&#xff0c;你可能还需要编辑视频并为其添加背景音乐&#xff0c;因为音乐总是对视频的感知起着神奇的作用。 那如何给视频添加音频呢&#xff1f;或者如何用新…

阿里云跨账号建立局域网

最近有活动&#xff0c;和好友一并薅了下阿里云的羊毛。琢磨着两台机器组一个局域网&#xff0c;于是有了这个需求&#xff0c;把步骤记录一下&#xff1a; 假设两台机器叫A和B&#xff0c;我们开始进行建立和组网 1. 建立ECS 把A机器公共环境装好&#xff0c;然后使用《实例与…

深入解析Java 8中HashMap的底层原理

引言 HashMap是Java中常用的集合类&#xff0c;用于存储键值对。其底层实现经过多次优化&#xff0c;包括哈希算法、数组扩容、链表转红黑树等。本文将深入研究HashMap的底层原理&#xff0c;并详细探讨如何解决哈希碰撞的技术。 1. 哈希算法 HashMap的核心是哈希算法&#…

Day38:518.零钱兑换II、377. 组合总和 Ⅳ

文章目录 518.零钱兑换II思路代码实现 377. 组合总和 Ⅳ思路代码实现 518.零钱兑换II 题目链接 思路 确定dp数组&#xff08;dp table&#xff09;以及下标的含义 dp[j]&#xff1a;组合元素和为j的组合方式确定递推公式 题目不是选取最优解&#xff0c;而是求路径总和&…

【运动规划】191 自适应跟踪kinodynamicrrt的路径

分层法&#xff1a; two layer approach 自适应控制&#xff0c;跟随轨迹。运动规划&#xff1a;扩展自由空间&#xff08;基于速度约束缩小自由空间&#xff09;为控制部分留余量&#xff0c;确保安全。 控制设计&#xff1a; 考虑平移和旋转&#xff0c;速度环控制&#xff…

银河麒麟安装Docker

# 配置阿里云 Centos8 镜像源&#xff0c;需要额外的一些依赖&#xff0c;而这些依赖在麒麟官方的源里面是没有的 sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo# 配置阿里云 docker 镜像源 sudo yum-config-manager --add-r…

【23真题】Top3!最高148分,数二英二!

今天分享的是23年西安交通大学815的信号与系统数字信号处理试题及解析。众所周知&#xff0c;Top3一共有10所&#xff0c;其中就包括了西安交大&#xff01; 本套试卷难度分析&#xff1a;平均分为117-128分&#xff0c;最高分为148分&#xff01;22年西安交大909/815的真题我…