最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker安裝mysql教程以及解決mysqld: Can‘t read dir of ‘/etc/mysql/conf.d/‘問題

 更新時(shí)間:2024年10月11日 09:18:24   作者:尋求出路的程序媛  
本文詳細(xì)介紹了如何通過Docker來安裝和配置MySQL數(shù)據(jù)庫,包括拉取MySQL鏡像、啟動MySQL容器、配置MySQL、解決常見錯誤等步驟,提供了詳盡的命令和參數(shù)說明,幫助用戶順利完成MySQL的安裝和配置,文中還提到了如何處理MySQL容器啟動時(shí)遇到的“無法讀取目錄”

如果還沒在虛擬機(jī)/服務(wù)器中安裝docker,可以查閱相關(guān)文檔 先安裝docker。

一、下載MySQL的docker鏡像

拉取鏡像的命令為 docker pull 鏡像名:tagdocker pull 鏡像名,前者拉取指定版本的鏡像、后者拉取最新版本的鏡像。

此處拉取mysql 5.7

docker pull mysql:5.7
  • 如果提示權(quán)限不足的話,需要使用管理員的方式執(zhí)行:sudo docker pull mysql:5.7。
  • 可通過docker images查看拉取成功的鏡像。

二、啟動MySQL容器

2.1 命令

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456  \
-d mysql:5.7

參數(shù)說明:

  • -p 3306:3306:將容器的3306端口映射到主機(jī)的3306端口。如果本地已安裝mysql或其他應(yīng)該占用了3306端口,可使用其他端口 -p port1:3306,保證port1端口未被占用即可
  • -v /mydata/mysql/conf:/etc/mysql:將配置文件夾掛在到主機(jī)
  • -v /mydata/mysql/log:/var/log/mysql:將日志文件夾掛載到主機(jī)
  • -v /mydata/mysql/data:/var/lib/mysql/:將數(shù)據(jù)文件夾掛載到主機(jī)
  • -e MYSQL_ROOT_PASSWORD=root:初始化root用戶的密碼

或者直接在/mydata/mysql/conf/目錄下新建my.cnf文件,執(zhí)行如下命令:

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf/my.cnf:/etc/mysql/my.cnf
-e MYSQL_ROOT_PASSWORD=123456  \
-d mysql:5.7

2.2 報(bào)錯mysqld: Can’t read dir of ‘/etc/mysql/conf.d/’ (Errcode: 2 - No such file or directory)

補(bǔ)充:在啟動mysq容器、即執(zhí)行docker run -p xxx時(shí),docker ps看不到創(chuàng)建的mysql容器,使用docker logs mysql發(fā)現(xiàn)報(bào)錯

mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)

原因:這意味著 MySQL 在啟動時(shí)無法找到 /etc/mysql/conf.d/ 目錄,mysql容器的/etc/mysql目錄掛載到宿主機(jī)的 /mydata/mysql/conf目錄,這通常是因?yàn)檫@個目錄在你掛載的配置卷 /mydata/mysql/conf 中不存在或沒有正確創(chuàng)建,導(dǎo)致容器創(chuàng)建失敗。

解決方法

檢查本地配置目錄:檢查宿主機(jī)的 /mydata/mysql/conf 目錄中是否存在 conf.dmysql.conf.d 子目錄,如果不存在,創(chuàng)建這個子目錄。

# 創(chuàng)建子目錄
mkdir -p /mydata/mysql/conf/conf.d
mkdir -p /mydata/mysql/conf/mysql.conf.d

此時(shí),可以通過命令進(jìn)入conf 檢查是否已經(jīng)存在子目錄

cd /mydata/mysql/conf
ls

刪除或重命名舊容器:

# 刪除它,以釋放容器名稱(推薦)
docker rm mysql

# 重命名舊容器
docker rename mysql old_mysql

重啟容器:

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456  \
-d mysql:5.7

此時(shí),通過命令可以查看是否可以已經(jīng)啟動MySQL容器

docker ps

也可通過Navicat等工具遠(yuǎn)程連接mysql。

至此,mysql已安裝成功,接下來我們來修改配置。

三、進(jìn)入mysql容器

docker exec -it mysql /bin/bash

使用MySQL命令打開客戶端:

mysql -uroot -p        
mysql -uroot -p密碼 --default-character-set=utf8   

四、修改mysql默認(rèn)配置

4.1 查看mysql掛載的文件夾

由于在創(chuàng)建實(shí)例的時(shí)候,已經(jīng)將部分文件夾掛載到Linux宿主機(jī)目錄下,所以當(dāng)我們修改一些mysql的配置文件時(shí),不需要再進(jìn)入docker環(huán)境下,直接在Linux環(huán)境下操作即可。

掛載的目錄為:

cd /mydata/mysql

4.2 mysql配置

Linux 操作系統(tǒng)中 MySQL 的配置文件是 my.cnf,一般會放在 /etc/my.cnf 或 /etc/mysql/my.cnf 目錄下。

內(nèi)容一般為:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

1)宿主機(jī)進(jìn)入mysql的conf目錄,新建my.conf文件,寫入內(nèi)容:

cd /mydata/mysql/conf
ls
vi my.cnf
# 在my.cnf中插入上述my.cnf內(nèi)容,保存退出

#重啟mysql
docker ps
docker restart mysql

2)進(jìn)入mysql容器內(nèi)部,查看文件是否配置成功

docker exec -it mysql /bin/bash
cd /etc/mysql
ls
cat my.cnf

五、補(bǔ)充

1)設(shè)置mysql每次開機(jī)隨docker自啟動

可以使用docker run命令時(shí)加上--restart選項(xiàng),或者在容器創(chuàng)建后更改其重啟策略

docker run -d --restart=always --name yourContainerName yourImage

這里的--restart=always選項(xiàng)確保無論退出代碼是什么,只要Docker守護(hù)程序啟動,容器都會自動重啟。

如果容器已經(jīng)運(yùn)行,您可以使用docker update命令更改重啟策略

docker update mysql-container --restart=always

2)如果想 設(shè)置docker服務(wù)開機(jī)自啟動,可使用如下命令:

systemctl enable docker

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 解決Docker警告:Your kernel does not support swap limit capabilities or the cgroup is not mounted問題

    解決Docker警告:Your kernel does not support&

    這篇文章主要介紹了解決Docker警告:Your kernel does not support swap limit capabilities or the cgroup is not mounted問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • 基于docker搭建redis-sentinel集群的方法示例

    基于docker搭建redis-sentinel集群的方法示例

    這篇文章主要介紹了基于docker搭建redis-sentinel集群的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-06-06
  • docker compose部署主從復(fù)制的實(shí)現(xiàn)

    docker compose部署主從復(fù)制的實(shí)現(xiàn)

    本文記錄了通過 docker compose 搭建一主雙從的 Redis 服務(wù)。文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • docker搭建samba服務(wù)smb網(wǎng)絡(luò)磁盤共享方式

    docker搭建samba服務(wù)smb網(wǎng)絡(luò)磁盤共享方式

    這篇文章主要介紹了docker搭建samba服務(wù)smb網(wǎng)絡(luò)磁盤共享方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2026-03-03
  • WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式

    WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式

    這篇文章主要介紹了WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 編寫Dockerfile和構(gòu)建自定義鏡像的步驟與技巧

    編寫Dockerfile和構(gòu)建自定義鏡像的步驟與技巧

    Docker已經(jīng)成為現(xiàn)代應(yīng)用程序開發(fā)和部署的重要工具之一,在Docker中,Dockerfile是定義和構(gòu)建自定義鏡像的鍵文件,本文將深入解讀Dockerfile的編寫和自定義鏡像的構(gòu)建過程,并分享一些實(shí)用的技巧和最佳實(shí)踐,需要的朋友可以參考下
    2023-07-07
  • 使用Docker部署Neko自托管虛擬瀏覽器(Firefox)的流程

    使用Docker部署Neko自托管虛擬瀏覽器(Firefox)的流程

    本文介紹了基于WebRTC的自托管虛擬瀏覽器環(huán)境Neko的部署方法,包括使用Docker和Docker Compose部署、基本配置、使用方法及注意事項(xiàng)等內(nèi)容,適合團(tuán)隊(duì)協(xié)作、遠(yuǎn)程演示等場景,需要的朋友可以參考下
    2026-04-04
  • ubuntu下卸載docker方式與具體步驟

    ubuntu下卸載docker方式與具體步驟

    這篇文章主要介紹了ubuntu下卸載docker方式與具體步驟,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2026-06-06
  • docker run之后狀態(tài)總是Exited

    docker run之后狀態(tài)總是Exited

    這篇文章主要介紹了docker run之后狀態(tài)總是Exited,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • docker從Path值看容器啟動命令方式

    docker從Path值看容器啟動命令方式

    Docker容器的config.v2.json文件中的Path字段指定了容器啟動時(shí)要執(zhí)行的主程序(可執(zhí)行文件)的路徑,決定了容器運(yùn)行時(shí)的入口點(diǎn),它通常是容器文件系統(tǒng)中某個可執(zhí)行文件的絕對路徑
    2026-02-02

最新評論

北票市| 定结县| 盐边县| 泽库县| 博罗县| 娄烦县| 义马市| 福安市| 封开县| 绥江县| 图木舒克市| 翼城县| 五大连池市| 太原市| 襄城县| 贵州省| 万州区| 广平县| 英吉沙县| 辽阳市| 沙河市| 上思县| 上虞市| 板桥市| 罗源县| 申扎县| 罗城| 龙泉市| 钦州市| 望城县| 东兴市| 天门市| 墨江| 麻江县| 康马县| 五峰| 张北县| 越西县| 山西省| 沂水县| 赤城县|