日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Docker最全教程之MySQL容器化 (二十五)

發布時間:2023/12/4 数据库 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Docker最全教程之MySQL容器化 (二十五) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言? ? ? ? ? ? ? ??

MySQL是目前最流行的開源的關系型數據庫,MySQL的容器化之前有朋友投稿并且寫過此塊,本篇僅從筆者角度進行總結和編寫。



目錄??


  • 鏡像說明?

  • 運行MySQL容器鏡像?

1.運行MySQL容器?

2.修改“root”賬戶的認證模式和密碼?


  • 管理MySQL?

1. MySQL命令行工具?

2. Visual Studio Code的MySQL插件?

3. phpmyadmin?


MySQL是目前最流行的開源的關系型數據庫,因其高性能、可靠性和易用性而廣受開發者的歡迎,尤其是開放源碼這一特點,一般中小型網站的開發都會優先選擇MySQL作為網站數據庫。

與其他的大型數據庫例如Oracle、DB2、SQL Server等相比,MySQL雖然有它的不足之處,但是這絲毫也沒有減少它受歡迎的程度。對于一般的個人使用者和中小型企業來說,MySQL提供的功能已經綽綽有余,而且由于 MySQL是開放源碼軟件,因此可以大大降低總體擁有成本。



鏡像說明


MySQL的官方鏡像地址為:

https://hub.docker.com/_/mysql



?運行MySQL容器鏡像



1.運行MySQL容器

接下來,我們使用PowerShell來運行MySQL鏡像。腳本如下所示:

docker run --name mysql ` -e MYSQL_ROOT_PASSWORD=123456 ` -p 3306:3306 ` -d mysql

相關參數說明如下所示:

參數

描述

-e MYSQL_ROOT_PASSWORD=123456

此變量是必須的,用于指定MySQL超級管理員帳戶(root)的密碼。

-p 3306:3306

建立容器端口和主機端口的映射。MySQL默認端口為3306。

-d

在后臺運行容器并打印容器ID。

--name mysql

為容器指定一個自定義名稱,而不是使用隨機生成的名稱。?如果運行多個容器,則無法重復使用相同的名稱。

mysql

MySQL容器鏡像。

執行界面如圖所示:

同樣的,我們可以參考前面的章節使用數據卷或者主機目錄來完成MySQL的數據持久化,參考命令參數如下:

  • 使用數據卷“-v my-volume:/var/lib/mysql”

  • 使用主機目錄“-v d:\temp\data:/var/lib/mysql”



2.修改“root”賬戶的認證模式和密碼

MySQL容器已經運行了,如果我們滿懷欣喜地使用Visual Studio Code的MySQL擴展插件去連接時,就會碰到這么一個錯誤:

究其原因,其實就是MySQL新版本的“caching_sha2_password”授權認證模式的問題,我們將其改回“mysql_native_password”授權模式即可。

主要有以下幾步操作:

1)進入MySQL容器

docker exec -it mysql /bin/bash

2)使用MySQL命令行工具連接MySQL

mysql -h localhost -u root -p

需要輸入密碼:

3)修改“root”賬戶的認證模式

連接成功后,接下來我們就可以使用SQL語句來修改“root”賬戶的認證模式了:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

注意,最后的字符串“123456”為“root”賬戶的密碼。

4)驗證外部連接

同樣的,我們使用Visual Studio Code的MySQL擴展插件進行驗證,正常情況如下所示:



管理MySQL


這里我們主要簡單的介紹以下MySQL命令行工具和Visual Studio Code的MySQL擴展插件。



1. MySQL命令行工具

進入方式在前面的章節我們已經多次講述了,這里就不贅述了。使用MySQL命令行工具,我們可以非常方便的進行管理數據庫。比如:

  • 查看數據庫

  • 創建數據庫

  • 執行其他查詢



2. Visual Studio Code的MySQL插件

由于大部分MySQL UI管理工具都要錢,這里就首要推薦使用萬能的Visual Studio Code的MySQL的插件來進行管理。

  • MySQL插件

使用起來非常簡單:

  • SQLTools

支持多種數據庫(MySQL、MSSQL、PostgreSQL、Oracle、SQLite、SAP HANA),支持書簽、查詢語句智能提示和自動完成以及將數據導出CSV或JSON:



3. phpmyadmin

phpMyAdmin 是一個B/S架構的MySQL的數據庫管理工具,讓管理者可用Web接口管理MySQL數據庫。我們可以使用容器來運行phpmyadmin,官方鏡像地址:

https://hub.docker.com/r/phpmyadmin/phpmyadmin

執行命令如下:

docker run --name myadmin ` --link mysql:db ` -e MYSQL_ROOT_PASSWORD=123456 ` -p 8080:80 ` -d phpmyadmin/phpmyadmin

如上述命令所示,我們運行了一個phpmyadmin容器實例,其中MySQL的“root”賬戶密碼為“123456”。運行成功后,就可以訪問“http://localhost:8080/”以進入以下管理界面(登錄賬戶和密碼分別為“root”、“123456”):


往期內容

Docker最全教程——從理論到實戰(一)

Docker最全教程——從理論到實戰(二)

Docker最全教程——從理論到實戰(三)

Docker最全教程——從理論到實戰(四)

Docker最全教程——從理論到實戰(五)

Docker最全教程——從理論到實戰(六)

Docker最全教程——從理論到實戰(七)

Docker最全教程——從理論到實戰(八)? ??

Docker最全教程——從理論到實戰(九)

Docker最全教程之使用Tencent Hub來完成CI(十)
Docker最全教程——數據庫容器化(十一)
Docker最全教程——數據庫容器化之持久保存數據(十二)
Docker最全教程——MongoDB容器化(十三)
Docker最全教程——Redis容器化以及排行榜實戰(十四)

Docker最全教程之Ubuntu下安裝Docker(十五)

Docker最全教程之樹莓派和Docker(十六)

Docker最全教程之使用TeamCity來完成內部CI、CD流程(十七)

Docker最全教程之使用Docker搭建Java開發環境(十八)

Docker最全教程之Go實戰,墻裂推薦(十九)

Docker最全教程之使用.NET Core推送釘釘消息(二十)

Docker最全教程之使用 Visual Studio Code玩轉Docker(二十一)

Docker最全教程之Python爬網實戰(二十二)

使用PHP搭建個人博客站點

Docker最全教程之使用Node.js搭建團隊技術文檔站(二十四)




總結

以上是生活随笔為你收集整理的Docker最全教程之MySQL容器化 (二十五)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。