更改docker里mysql的字符編碼


進入容器:
  docker exec -it 容器id/容器名稱 bash
 
cp時容器中的目錄寫法 容器名稱/容器id:容器目錄
 
退出容器使用exit
 
1 首先去mysql容器中尋找mysql.cnf文件,一般是在 /etc/mysql/conf.d/ 下。
執行命令 docker exec -it mysql bash 命令進入mysql容器,
cd /etc/mysql/conf.d/ 
ls
//這里不能用命令 ll
能看到mysql.cnf 文件
 
2 exit 退出容器,將剛才的 mysql.cnf 文件 cp 到物理機任意目錄,我是在 /usr/local/ 下專門建了一個臨時目錄 temp/
docker cp mysql:/etc/mysql/conf.d/mysql.cnf  /usr/local/temp/
 
3 cd /usr/local/temp/ 對配置文件進行編輯 vi mysql.cnf
 
# For explanations see
[client]
default-character-set=utf8
 
[mysql]
default-character-set=utf8
 
[mysqld]
init_connect='SET collation_connection = utf8_general_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake
 
保存退出
 
4 將文件 cp 到容器指定位置,覆蓋原有的配置文件
docker cp /usr/local/temp/ mysql:/etc/mysql/conf.d/mysql.cnf 
 
5 重啟mysql
docker restart mysql
 
6 確認編碼是否成功更改 
進入容器 docker exec -it mysql bash
登錄mysql mysql -uroot -p -h localhost
執行命令
mysql> show variables like'char%';
可以看到說明成功將字符編碼更改為 utf8
+--------------------------+--------------------------------+
| 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-8.0/charsets/ |
+--------------------------+--------------------------------+
8 rows in set (0.01 sec)
 
 
 
 
 
 
 
 
 


免責聲明!

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



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