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.pswp.cn/news/163100.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/163100.shtml
英文地址,請注明出處:http://en.pswp.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的真題我…