mac系統下docker安裝配置mysql詳細步驟


上文介紹了MacOS安裝Docker傻瓜式教程,安裝好后第一件事就決定把本地數據庫遷移過來,那么首先就得安裝mysql,下面就開始我們的安裝之旅吧。

 

一、docker配置鏡像加速器

我們使用docker pull拉取鏡像時,因為網絡原因,有時候從Docker Hub拉取鏡像會非常緩慢耗時,甚至下載失敗,這時候需要我們自己配置國內鏡像加速器,docker官方和國內很多服務商都提供了加速服務,比如阿里雲、七牛雲等,下面就說一下怎樣配置。

 

1、打開docker配置,點擊Preferences

 

2、點擊Daemon選項卡,在Registry mirrors下方點擊+號,輸入鏡像地址,輸入好后點擊下方的Apply & Restart按鈕,耐心等待重啟。

 

 

用終端的朋友,可以在/daemon.json中配置,配置如下:

{  "debug" : true,  "registry-mirrors" : [    "http://hub-mirror.c.163.com",    "https://docker.mirrors.ustc.edu.cn",    "https://你的阿里雲自動分配前綴.mirror.aliyuncs.com"  ],  "experimental" : false}

然后重啟,重啟好之后,就可以使用國內鏡像加速拉取鏡像了。

 

常用鏡像地址

  • 阿里雲鏡像地址:https://你的阿里雲自動分配前綴.mirror.aliyuncs.com
  • Docker官方提供的中國鏡像庫:https://registry.docker-cn.com
  • 七牛雲鏡像加速器:https://reg-mirror.qiniu.com
  • 網易鏡像地址:http://hub-mirror.c.163.com

 

阿里雲鏡像加速詳情見:https://help.aliyun.com/document_detail/60750.html?spm=a2c4g.11186623.6.549.53594685cbQcAy&accounttraceid=8fd73b11a6fe4707ad1735365d98d778kysa

 

二、docker安裝mysql8

1、查看有哪些鏡像,我的是剛安裝docker,所以鏡像為空。先搜索mysql有哪些鏡像

 

2、我拉取的是最新版的mysql8.0.18,支持hash join

可以看到我的鏡像列表里有mysql8.0.18的鏡像了。

 

3、啟動mysql服務

參數說明:

  • docker run:運行docker容器命令
  • --name mysql :給容器設置別名
  • -p 3306:3306:將容器的3306端口映射到宿主機的3306端口
  • -e MYSQL_ROOT_PASSWORD=你的密碼 : 初始化root用戶登錄密碼 
  • -d : 后台運行容器,並返回容器id
  • mysql:8.0.18:也可以使用鏡像id,就是image ID

 

4、查看運行中的容器

mysql已經啟動成功了。

 

5、進入mysql容器

可以看到根目錄已經切換到容器的根目錄

 

6、登錄mysql

可以看到我們已經成功登錄了,至此,docker安裝mysql服務大功告成。

 

三、使用navacat連接mysql

開發中大多數都使用客戶端工具連接mysql,常用的就是navicat,但是我們安裝navicat以后,第一次連接mysql時通常會報下圖中2059 - Authentication plugin 'caching_sha2_password' can't be loaded ...這個錯誤。

 

登錄一下mysql看一下加密方式,可以看到mysql8的加密方式是新的caching_sha2_password

 

錯誤分析:

錯誤信息的意思是caching_sha2_password不能被加載,這是由於目前已有的客戶端連接軟件還不支持Mysql8新增加的加密方式caching_sha2_password,所以我們需要修改用戶的加密方式,將其改為老的加密驗證方式。

 

解決方案:

1、修改localhost加密方式:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密碼';

但是這里的localhost對應本地,如果是遠程訪問 mysql的話,需要將localhost改成%。

 

2、修改遠程連接加密方式,localhost改為%

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密碼';

 

再次連接,顯示連接成功,就可以使用客戶端工具來管理我們的數據庫了。

 

本文主要講了macos系統下,Docker配置鏡像加速,docker安裝mysql,以及使用navicat premium連接mysql,所有步驟都經過親測,希望能給需要的朋友以幫助,如果有問題,歡迎留言討論。

 

文章同步公眾號:碼之初,每天推送Java技術文章,期待您的關注!

原創不易,轉載請注明出處,謝謝!


免責聲明!

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



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