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

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

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

如果還沒在虛擬機/服務(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端口映射到主機的3306端口。如果本地已安裝mysql或其他應(yīng)該占用了3306端口,可使用其他端口 -p port1:3306,保證port1端口未被占用即可
  • -v /mydata/mysql/conf:/etc/mysql:將配置文件夾掛在到主機
  • -v /mydata/mysql/log:/var/log/mysql:將日志文件夾掛載到主機
  • -v /mydata/mysql/data:/var/lib/mysql/:將數(shù)據(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 報錯mysqld: Can’t read dir of ‘/etc/mysql/conf.d/’ (Errcode: 2 - No such file or directory)

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

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

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

解決方法

檢查本地配置目錄:檢查宿主機的 /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

此時,可以通過命令進入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

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

docker ps

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

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

三、進入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)建實例的時候,已經(jīng)將部分文件夾掛載到Linux宿主機目錄下,所以當(dāng)我們修改一些mysql的配置文件時,不需要再進入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)宿主機進入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)進入mysql容器內(nèi)部,查看文件是否配置成功

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

五、補充

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

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

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

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

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

docker update mysql-container --restart=always

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

systemctl enable docker

總結(jié)

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

相關(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問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • 基于docker搭建redis-sentinel集群的方法示例

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

最新評論

白朗县| 泰兴市| 邛崃市| 来宾市| 辽源市| 金川县| 天水市| 莲花县| 来凤县| 耿马| 沾化县| 福泉市| 德昌县| 孝感市| 延津县| 都江堰市| 泸州市| 林州市| 灵宝市| 福安市| 石家庄市| 商水县| 从化市| 绥化市| 昌江| 理塘县| 永康市| 宾川县| 田阳县| 杭锦后旗| 东乡族自治县| 来安县| 巴林右旗| 新龙县| 盘山县| 财经| 都匀市| 阜平县| 黄山市| 大邑县| 盐源县|