docker mysql 容器中文顯示"?"[問號]問題處理


修改 Docker 中 MySQL 容器的編碼

找到問題點:

登錄mysql,執行下面這個命令查看你數據庫的編碼格式

show variables like 'char%';


這個latin1,是導致中文顯示"?"[問號]的原因

處理方法:

1. 進入MySQL容器


注:my-space-mysql:容器的名稱

[docker命令進入]  docker exec -it my-space-mysql /bin/bash
[docker-compose命令進入]  docker-compose exec my-space-mysql bash

2. 備份當前 my.cnf 文件


mv /etc/mysql/my.cnf /etc/mysql/my.cnf.bak

3. 退出容器


exit

4. 創建配置文件(my.cnf)


vim my.cnf
[client]
 
default-character-set=utf8
 
[mysqld]
 
character-set-server=utf8
 
collation-server=utf8_general_ci

5. 查看容器長ID


docker inspect -f '{{.ID}}' my-space-mysql

注:my-space-mysql是容器名稱

6. 上傳文件到容器


docker cp my.cnf <容器長ID>:/etc/mysql

7. 自行登錄容器查看並提出容器


8. 重啟docker​​​​​​​


[docker命令重啟]  
docker stop my-space-mysql
docker start my-space-mysql

[docker-compose命令重啟容器]  
docker-compose restart my-space-mysql

9. 查看數據庫編碼



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM