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

歡迎訪問 生活随笔!

生活随笔

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

数据库

docker安装mysql及相关配置、运行细节和常见报错解决方案

發布時間:2025/1/21 数据库 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker安装mysql及相关配置、运行细节和常见报错解决方案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

安裝、運行

需要特別注意-v掛載到本機的目錄的權限問題,否則報錯:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

sudo docker run --name=mysql -it -p 3306:3306 -v /home/zxl/workspace/docker/mysql/mysqld:/var/run/mysqld -v /home/zxl/workspace/docker/mysql/db:/var/lib/mysql -v /home/zxl/workspace/docker/mysql/conf.d:/etc/mysql/conf.d -v /home/zxl/workspace/docker/mysql/mysql-files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=123456 --privileged=true -d zhangxueliang2020/mysql:v5.7.26

常見報錯解決方案

Ubuntu使用docker安裝完mysql后登錄時會遇到如下錯誤

root1@ubuntu:~$ mysql -uroot -p Enter password: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")
  • 上面錯誤提示沒有mysqld.sock文件,然后在網上找了許多文章說要配置/etc/mysql/mysql.conf.d目錄下的mysqld.cnf文件,然而我改了半天也沒有用最后看到一篇文章才把問題解決掉的如下:
1、先創建好mysql容器 sudo docker run -p 3306:3306 --name mysql -v /opt/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest 2、進入容器 sudo docker exec -it mysql /bin/bash 3、登陸容器內數據庫 mysql -u root -p 設置的密碼

本地宿主機通過mysql命令連接mysql Docker容器中的服務器報錯 ERROR 2002 (HY000)

1、具體所錯與下所示:

[user@cluster2 ~]$ mysql -uroot -p Enter password: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

2、根據報錯提示,是本地mysql連接服務器時,沒有找到/var/lib/mysql/mysql.sock文件。那么從這入手,我們看到mysql容器中的服務器啟動后的mysql.sock文件在哪。

我們進入mysql容器中看看:

sudo docker exec -it mysql /bin/bash 查看mysql配置文件my.cnfroot@9e313681fc3e:/# cat /etc/mysql/my.cnf 我們看到下面的一些配置:[mysqld] pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql secure-file-priv= NULL

Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

這里可以看到mysqld.sock的目錄是在/var/run/mysqld目錄下,但是這個目錄,我們并沒有掛載主機目錄,下面我們重新運行mysql容器,掛載相應的容器,如下所示:

sudo docker run --name=mysql -it -p 3306:3306 -v /opt/data/mysql/mysqld:/var/run/mysqld -v /opt/data/mysql/db:/var/lib/mysql -v /opt/data/mysql/conf:/etc/mysql/conf.d -v /opt/data/mysql/files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=123456 --privileged=true -d mysql

使用以上命令運行mysql容器,這里使用/opt/data/mysql中的相關目錄掛載到mysql容器中,啟動容器之后你會發現mysql服務器無法正常啟動,報錯如下:

2018-12-29T06:25:09.480604Z 0 [ERROR] [MY-010273] [Server] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock. 2018-12-29T06:25:09.480619Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file. 2018-12-29T06:25:09.480625Z 0 [ERROR] [MY-010119] [Server] Aborting 2018-12-29T06:25:11.289786Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.13) MySQL Community Server - GPL. [user@cluster2 mysql]$ sudo docker logs mysql 2018-12-29T06:25:09.095301Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release. 2018-12-29T06:25:09.095434Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.13) starting as process 1 2018-12-29T06:25:09.478963Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed. 2018-12-29T06:25:09.480604Z 0 [ERROR] [MY-010273] [Server] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock. 2018-12-29T06:25:09.480619Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file. 2018-12-29T06:25:09.480625Z 0 [ERROR] [MY-010119] [Server] Aborting 2018-12-29T06:25:11.289786Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.13) MySQL Community Server - GPL.

說是無法創建:Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock。這說明本地的/opt/data/mysql/mysqld目錄,mysql容器中無權限防問。

注意:這里的/opt/data/mysql目錄下的所示目錄都是mysql容器啟動時自動創建的,這里只有db目錄的用戶和組是:polkitd input,其它的就是root root,因此,我們要將其它幾個目錄的用戶和組都改成polkitd input。命令如下:

cd /opt/data sudo chown -R polkitd:input mysql

這樣,刪除mysql docker 容器。重新創建:

sudo docker rm mysql sudo docker run --name=mysql -it -p 3306:3306 -v /opt/data/mysql/mysqld:/var/run/mysqld -v /opt/data/mysql/db:/var/lib/mysql -v /opt/data/mysql/conf:/etc/mysql/conf.d -v /opt/data/mysql/files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=123456 --privileged=true -d mysql

這樣容器中的mysql就能正常運行了。

3、本地主機連接容器的mysql時,需要查到 /var/lib/mysql/mysql.sock。我們啟動mysql容器后,在/opt/data/mysql/mysqld目錄下有一個mysqld.sock。我們要把這個文件鏈接到本地主機的var/lib/myql目錄中。

sudo ln -s /opt/data/mysql/mysqld/mysqld.sock /var/lib/mysql/mysql.sock
這樣在運行mysql -uroot -p輸入密碼就能正常連接,docker容器中的mysql服務了。

4、本地主機只需要安裝mysql-community-client包就可以了。

docker --privileged=true 參數作用

大約在0.6版,privileged被引入docker。
使用該參數,container內的root擁有真正的root權限。
否則,container內的root只是外部的一個普通用戶權限。
privileged啟動的容器,可以看到很多host上的設備,并且可以執行mount。
甚至允許你在docker容器中啟動docker容器。

$ docker help run ... --privileged=false Give extended privileges to this container ...

這里以一個Mysql 例子

我們啟動命令還沒加 --privileged=true 參數 ,可以明確看到docker 嘗試去運行容器,但是馬上就關閉了。

命令

docker run --name mysql-test -e MYSQL_ROOT_PASSWORD=123456 -p 9092:3306 -d daocloud.io/library/mysql:5.7.6

嘗試使用一些命令,提示permission denied,權限禁止

加入參數命令后

docker run --name mysql-test --privileged=true -e MYSQL_ROOT_PASSWORD=123456 -p 9092:3306 -d daocloud.io/library/mysql:5.7.6

成功運行命令

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的docker安装mysql及相关配置、运行细节和常见报错解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 亚洲伦理天堂 | 无码国产色欲xxxxx视频 | juliaann精品艳妇hd | 久久精品牌麻豆国产大山 | 久久国产精品亚洲 | 国产无 | 中文字幕在线观看视频网站 | 黑人玩弄人妻一区二区三区影院 | 日韩欧美视频二区 | 成人动漫在线免费观看 | 国产一级片网站 | 人人射| 国产一区美女 | 国产精品高潮呻吟久久av野狼 | 亚洲午夜不卡 | 熟妇人妻中文av无码 | 国产又粗又黄又爽的视频 | 久色网| 国产视频在线看 | 日韩操比 | 99成人在线| 天堂中文在线看 | 色吊丝一区二区 | 91猎奇在线观看 | 91久久免费| 台湾一级视频 | 亚洲成人自拍网 | 欧美色图激情小说 | 久久理论电影 | 日韩国产欧美一区 | 久久精品男人 | 毛片在线网址 | 久久精品影视 | 成人av资源网 | 中文字幕色片 | 色就操| 亚洲欧洲国产日韩 | 51成人网| 无码人妻丰满熟妇区bbbbxxxx | 精品人妻伦九区久久aaa片 | 精品国产乱码久久久久久108 | 神秘马戏团在线观看免费高清中文 | 午夜三级在线观看 | 亚洲激情婷婷 | 色一涩| 欧美一卡二卡在线观看 | 久一视频在线观看 | 超碰福利在线观看 | 亚洲伦理在线视频 | 99这里都是精品 | www.五月婷| 毛片一卡二卡 | 熟女少妇内射日韩亚洲 | 亚洲高清无码久久久 | 亚洲精品aaa | 97色婷婷| 男人天堂最新网址 | 韩国一级一片高清免费观看 | 亚洲图片一区 | 色射色| 中国一及毛片 | 免费一级毛片麻豆精品 | 亚洲免费看片 | 狂野欧美性猛交免费视频 | 欧美高清hd19 | 91干干干 | jizz网站 | av黄色在线免费观看 | 久久精品国产免费看久久精品 | 日韩欧美第一区 | 国产午夜精品久久久 | 香蕉视频在线免费播放 | 久久无码视频一区 | 亚洲国产成人一区二区 | 91精品欧美一区二区三区 | 日韩不卡一二三 | 叶爱在线 | 69影院少妇在线观看 | 姑娘第5集在线观看免费 | 9999热视频| 免费瑟瑟网站 | 色婷婷精品视频 | 久久久夜 | 天天天操操操 | 日韩不卡一区二区 | 精品国产影院 | 深爱婷婷网 | 色桃网 | 日韩在线视频免费观看 | 香蕉视频在线免费播放 | 日本免费一区二区三区视频 | 我和我的太阳泰剧在线观看泰剧 | 欧美日韩一卡 | 欧美久久久久久久久久 | 精品乱子伦一区二区三区 | 久久久久久久久影院 | 伊人久久国产 | 国产超碰91| 亚瑟av在线 |