標籤:... 一個 options bin 需要 rom 編碼 好的 ini
摘要:
本文將介紹如何使用docker建立mysql容器,並使用navicat串連該mysql服務,最後提供一個navicat中文亂碼問題的解決方案。
一、docker下建立mysql容器1、下載mysql最新版本鏡像:
$ docker pull mysql
2、啟動mysql容器
建立mysql設定檔my.cnf,全路徑為/data/mysql/conf/my.cnf,內容如下:
[mysqld]pid-file = /var/run/mysqld/mysqld.pidsocket = /var/run/mysqld/mysqld.sockdatadir = /var/lib/mysql#log-error = /var/log/mysql/error.log# By default we only accept connections from localhost#bind-address = 127.0.0.1# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0init_connect=‘SET collation_connection = utf8_unicode_ci‘init_connect=‘SET NAMES utf8‘character-set-server=utf8collation-server=utf8_unicode_ciskip-character-set-client-handshake[client]default-character-set=utf8[mysql]default-character-set=utf8
啟動容器,執行以下命令:
$ docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name seckill-mysql -v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /data/mysql/data:/var/lib/mysql -p 3306:3306 mysql
參數說明:
-d:以守護進程方式運行-e:指定root密碼-P:綁定3306連接埠號碼,前面是宿主機連接埠後面是docker容器的連接埠--name: 指定容器的名稱-v:掛載檔案。以上例子掛在了兩個檔案,一個是資料檔案data,一個是設定檔my.cnf
3、docker下mysql基本操作
進入容器命令:
$ docker exec -it seckill-mysql bash
停止/啟動mysql:
$ docker stop seckill-mysql$ docker start seckill-mysql
二、安裝navicat for mysql1、下載、安裝
官網:
https://www.navicat.com/en/download/navicat-for-mysql
解壓:
$ tar zxvf navicat120_mysql_en_x64.tar.gz
啟動navicat:
$ ./start_navicat
2、解決mysql中文亂碼問題
navicat啟動後,一般都會遇到中文亂碼問題,如果存在該問題,需要下載以下文泉正黑字型,並重新指定一下編碼格式。
ps:我這個方法可能不是最好的解決方案,但是經過本人親測,肯定奏效。
1、安裝文泉正黑字型
$ sudo apt-get install ttf-wqy-zenhei
2、修改start_navicat檔案中編碼格式,與系統一致
先查看系統編碼格式:
$ locale
LANG=zh_CN.UTF-8
再修改start_navicat:
$ vim start_navicat
把 export LANG="en_US.UTF-8" 改為 export LANG="zh_CN.UTF-8"
3、修改navicat顯示編碼格式
在菜單中找到 tools -》 options... 看到以下視窗:
把General、Editor、Records三個菜單下的GUI Font都改為:文泉驛正黑。
通過以上配置,中文亂碼問題才真正得以解決!
ubuntu16.04下使用navicat串連docker mysql5.7.20