簡介
隨著Kubernetes(k8s)在企業中的普及,越來越多的應用、組件需要docker化,甚至一切皆可docker。資料庫mysql,相信對於研發人員來說都不陌生,特別是後臺應用,mysql更是基石,因此本文將為大家簡單介紹mysql的容器化安裝。
環境介紹:
macOS10.14.4
docker desktop 3.1.0
mysql 8.0
步驟
docker環境的安裝這裡就不介紹了,百度一下你就知道。這裡假設你已經安裝的docker環境。下面我們就開始:
從鏡像倉庫查詢mysql鏡像
從鏡像倉庫拉取鏡像
這裡獲取的是mysql8.0版本,當然用戶也可以通過以下命令獲取最新的版本。
下載完之後我們可以通過以下命令查看mysql鏡像
創建容器,啟動mysql
docker run -p 3307:3306 --name mysql8.0 \-e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0;執行完命令之後會返回一個容器id
創建完成之後我們通過以下命令來查看容器狀態,可以看到容器已經啟動。
這個時候如果我們直接使用navicate連接數據會有如下錯誤:
由於Mysql5.6以上的版本修改了Password算法,這裡需要更新密碼算法,便於使用Navicat連接,因此我們需要進入容器修改mysql配置。
進入容器
docker exec -it mysql8.0 bash連接mysql更改mysql配置
ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456' PASSWORD EXPIRE NEVER;FLUSH PRIVILEGES;
執行完上述步驟,再次嘗試連接。
至此簡易版的mysql容器化部署就完成了。
思考
目前我們構建的mysql可以在本地環境開發使用,但是還不能用戶測試或者生產,因為對於後臺應用資料庫至關重要,存儲的數據一旦丟失,將是致命的。因此我們需要考慮以下幾個問題:
在後續的章節中我們會逐個解決上述問題,敬請期待。