溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker如何安裝MySQL

發布時間:2021-08-21 09:37:09 來源:億速云 閱讀:127 作者:小新 欄目:服務器

小編給大家分享一下Docker如何安裝MySQL,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

安裝 MySQL

拉取鏡像

使用下面的命令拉取 MySQL 數據庫的鏡像:

$ sudo docker pull mysql # 拉取最新版本的鏡像,當前為 MySQL 8 版本,tag 為 latest

$ sudo docker pull mysql:5.7 # 指定拉取 MySQL 5.7 版本

也可以使用搜索命令,查找其他的 MySQL 相關鏡像,其中有標識 Stars 數,即受歡迎程度。

$ sudo docker search mysql

運行 MySQL

$ sudo docker run -p 3306:3306 \
  --name mysql \
  -v $PWD/conf:/etc/mysql/conf.d \
  -v $PWD/logs:/logs \
  -v $PWD/data:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=your-password \
  -d mysql

命令說明:

  • -p 3306:3306 :將容器的 3306 端口映射到主機的 3306 端口。

  • -v $PWD/conf:/etc/mysql/conf.d :將主機當前目錄下的 conf/my.cnf 掛載到容器的 /etc/mysql/my.cnf。

  • -v $PWD/logs:/logs :將主機當前目錄下的 logs 目錄掛載到容器的 /logs。

  • -v $PWD/data:/var/lib/mysql :將主機當前目錄下的data目錄掛載到容器的 /var/lib/mysql 。

  • -e MYSQL_ROOT_PASSWORD=your-password :初始化 root 用戶的密碼,建議使用復雜度高的密碼。

  • -d mysql : 要部署的鏡像名,如果是5.7版本的話,這里則為mysql:5.7

配置遠程訪問

遠程訪問 MySQL 屬于基本配置,但是在配置的時候要注意安全性問題,否則將存在安全性隱患,尤其是企業用服務器更要注重安全性。

并且需要注意服務器防火墻要開啟 3306 端口,服務器提供商的安全組中也需要開啟,否則會無法訪問哦。

要配置遠程訪問,先要打開 MySQL 的控制終端,使用下面的命令開啟:

$ sudo docker exec -it mysql bash # 進入 MySQL 容器

$ mysql -uroot -p # 登錄 MySQL,執行后輸入密碼進入 MySQL

$ use mysql; # 選擇使用 mysql 數據庫

MySQL 8 配置

CREATE USER 'username'@'%' IDENTIFIED BY 'password';
# 創建一個賬號,用來進行遠程訪問;
# {usernama} 是遠程訪問登錄的用戶名,不建議用 root;
# {password} 是遠程訪問的登錄密碼;
# '%'代表的是所有IP,如果可以盡量設置指定 IP 或 IP 段

GRANT ALL ON *.* TO 'username'@'%';
# 賦予所有權限給之前創建的賬號

ALTER USER 'username'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
# 確認使用這里的密碼登錄此賬號

FLUSH PRIVILEGES;
# 刷新權限

完整命令如下所示:

CREATE USER 'james'@'%' IDENTIFIED BY '123456asd';
# 創建一個賬號-james,用來進行遠程訪問;

GRANT ALL ON *.* TO 'james'@'%';
# 賦予所有權限給之前創建的賬號:james

ALTER USER 'james'@'%' IDENTIFIED WITH mysql_native_password BY '123456asd';
# 確認使用密碼{123456asd}登錄此賬號{james}
# 密碼盡量復雜,安全性更高。

FLUSH PRIVILEGES;
# 刷新權限

配置完畢后,使用 Navicat 工具或其他工具進行連接測試即可。

MySQL 5.7 配置

GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
# {usernama} 是遠程訪問登錄的用戶名,不建議用 root;
# {password} 是遠程訪問的登錄密碼;
# '%'代表的是所有IP,如果可以盡量設置指定 IP 或 IP 段

FLUSH PRIVILEGES;
# 刷新權限

配置完畢后,使用 Navicat 工具或其他工具進行連接測試即可。

注:如果無法訪問請注意防火墻 3306 端口是否開啟,服務器提供商的安全組中的端口是否開啟。

以上是“Docker如何安裝MySQL”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女