欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

新手把mysql裝進docker中碰到的各種問題

 更新時間:2019年06月02日 15:46:13   作者:何白白  
這篇文章主要給大家介紹了新手第一次把mysql裝進docker中可能碰到的各種問題,文中通過示例代碼介紹的非常詳細,對大家學習或者使用mysql具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧

前言

最近電腦經(jīng)常關(guān)機要關(guān)好長時間,老是需要長按電源鍵強行關(guān)機。也不知道是怎么回事。

后來查看關(guān)機時的日志,發(fā)現(xiàn)是mysql停不掉。這可鬧心了!怎么辦?上網(wǎng)搜了搜也沒有找到什么好的解決辦法??偛荒苊看侮P(guān)機都要長按電源鍵吧?電腦那么貴,況且還是我自己的電腦,壞了怎么辦?

把mysql刪掉?作為一個寫代碼的,電腦里也不能不裝mysql啊,天天要用的!裝在虛擬機里?這個似乎可行,管你mysql能不能關(guān)掉,我把虛擬機停了就行啊。然后看了看自己電腦上裝了1年多都沒打開過的virtualbox,尋思著裝在這里也不合適啊。我電腦硬盤就250G,就為了裝個mysql還要給它分個十幾G的硬盤,再分給它2G的內(nèi)存,不合適不合適。那咋弄呢?扣了扣我的鼠標,想起來前1年跟風研究的docker,嗯~,就你了。

開始把mysql安裝進docker

安裝docker

docker的命令我是記不住啦~,上網(wǎng)搜了搜安裝命令,還是很簡單嗎。命令一敲刷刷的就好了。(我的電腦裝的deepin系統(tǒng))

wget -qO- https://get.docker.com/ | sh

然后需要給它啟動起來,也是一條命令就好啦~

 sudo service docker start

docker運行Ubuntu

docker是安裝好了,里面怎樣跑一個系統(tǒng)呢?只有docker也沒法運行mysql呀!這時候需要下載一個系統(tǒng)鏡像,這里用Ubuntu的鏡像。首先需要搜索一下有什么鏡像可以用下面的命令在市場中搜索鏡像。

//命令 
sudo docker search ubuntu
//結(jié)果
NAME       DESCRIPTION     STARS  OFFICIAL  AUTOMATED
ubuntu       Ubuntu is a Debian-based Linux operating sys… 9583  [OK]  
dorowu/ubuntu-desktop-lxde-vnc    Docker image to provide HTML5 VNC interface … 304     [OK]
rastasheep/ubuntu-sshd     Dockerized SSH service, built on top of offi… 217     [OK]
consol/ubuntu-xfce-vnc     Ubuntu container with "headless" VNC session… 179     [OK]
ubuntu-upstart      Upstart is an event-based replacement for th… 98   [OK]  
ansible/ubuntu14.04-ansible    Ubuntu 14.04 LTS with ansible   97     [OK]

這里搜到了一堆鏡像,我們選排名第一的那個吧。

現(xiàn)在需要把這個鏡像下載下來,用下面的命令:

sudo docker pull ubuntu:18.04
//冒號后面的是版本號,不知道的話只能上網(wǎng)查了,不寫的話下載的是最新的

但是。網(wǎng)上說由于一些不可抗力,導(dǎo)致國內(nèi)下載鏡像很慢,所以需要添加一個鏡像。需要在 /etc/docker 的路徑下添加一個文件:daemon.json,里面是鏡像地址:

{
 "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

之后重啟。然后執(zhí)行上面下載鏡像的命令,然后喝點咖啡等一會~~~。

經(jīng)過下載之后,我們看一下現(xiàn)在電腦里有那些鏡像,使用下面的命令:

sudo docker images 
//結(jié)果
REPOSITORY  TAG   IMAGE ID  CREATED  SIZE
ubuntu  18.04  7698f282e524 2 weeks ago  69.9MB

這里可以看到已經(jīng)有一個Ubuntu版本是18.04的鏡像?,F(xiàn)在我們需要啟動這個鏡像。

//命令
sudo docker run -it -d ubuntu:18.04 /bin/bash
//解釋
run  : 創(chuàng)建一個新的容器并運行一個命令
-it  : 以交互模式運行容器,并重新分配一個偽輸入終端,代表-i -t
--name ubuntu18: 為容器指定一個名稱
-d  : 后臺運行容器
ubuntu:18.04 : 鏡像名稱
/bin/bash : 運行鏡像中的程序,沒有的話鏡像會直接停掉

現(xiàn)在鏡像是啟動成功了,但是我還要登進去才行呀。這時候需要查看現(xiàn)在有那些容器在運行,執(zhí)行:

//命令
sudo docker ps -a
//解釋
ps : 列出容器
-a : 顯示所有的容器,包括未運行的

//結(jié)果
CONTAINER ID IMAGE  COMMAND   CREATED  STATUS  PORTS    NAMES
1ce6fa95862c ubuntu:18.04 "/bin/bash"  6 minutes ago Up 6 minutes      brave_mendeleev

這里我們可以看到有一個NAME是brave_mendeleev的容器在運行之中?,F(xiàn)在我們進入這個容器。執(zhí)行下面的命令

//命令
sudo docker exec -it brave_mendeleev /bin/bash
//解釋
brave_mendeleev: 容器名稱 
exec  : 在運行的容器中執(zhí)行命令

//結(jié)果
hjx@hjx-PC:/etc/docker$ sudo docker exec -it brave_mendeleev /bin/bash
root@1ce6fa95862c:/#

這樣我們就成功的登錄到這個鏡像為ubuntu18.04版本的容器里面了。現(xiàn)在我們就可以在里面安裝mysql啦~

ubuntu容器中安裝mysql

安裝mysql我自己喜歡直接用 apt安裝。我在這里直接輸入:

apt install mysql-server-5.7

后發(fā)現(xiàn)在容器中也是可以安裝成功的。安裝成功后,我們需要將容器中的mysql端口綁定到自己主機的3306端口上。這里的步驟是:

1:停掉容器(不停掉也行)

//停止容器
sudo docker stop brave_mendeleev
//解釋
stop : 容器生命周期管理命令,一共有下面命令構(gòu)成:
 start : 啟動容器
 stop : 停止容器
 restart : 重啟容器

2:將安裝好mysql的容器提交為一個新的鏡像

//命令
sudo docker commit brave_mendeleev ub/mysql
//解釋
commit : 從容器創(chuàng)建一個新的鏡像
ub/mysql : 新的鏡像名稱

3:并綁定端口并啟動新的鏡像

額。。。這里玩崩了。。。沒有弄成。/(ㄒoㄒ)/~~

我決定在啟動ubuntu鏡像的時候就綁定一下3306端口,然后在重新執(zhí)行上面的操作。

經(jīng)過漫長的操作。在刪除了原有容器,重新綁定3306端口啟動,登錄容器,安裝mysql后,完美的安裝并運行成功。

更簡單的方法

恩,直接搜索鏡像mysql,然后啟動就好了。這么簡單😂😂😂😂

//下載mysql5.7鏡像
sudo docker pull mysql:5.7

//綁定3306端口啟動
sudo docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
//解釋
-e MYSQL_ROOT_PASSWORD=123456 : 初始化 root 用戶的密碼,

之后還有其他的一堆參數(shù),這里我用不到,就不寫啦

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

相關(guān)文章

  • 詳解MySQL:數(shù)據(jù)完整性

    詳解MySQL:數(shù)據(jù)完整性

    這篇文章主要介紹了MySQL數(shù)據(jù)完整性,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Mysql的基本函數(shù)與自定義函數(shù)用法

    Mysql的基本函數(shù)與自定義函數(shù)用法

    這篇文章主要介紹了Mysql的基本函數(shù)與自定義函數(shù)用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • MySQL本地版本升級超詳細教程(從5.5.20升到8.0.21)

    MySQL本地版本升級超詳細教程(從5.5.20升到8.0.21)

    MySQL是一款廣泛使用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),但是舊版本的客戶端可能會受到一些限制,下面這篇文章主要給大家介紹了關(guān)于MySQL本地版本升級超詳細教程,本文是從5.5.20升到8.0.21的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • 一次現(xiàn)場mysql重復(fù)記錄數(shù)據(jù)的排查處理實戰(zhàn)記錄

    一次現(xiàn)場mysql重復(fù)記錄數(shù)據(jù)的排查處理實戰(zhàn)記錄

    這篇文章主要給大家介紹了一次現(xiàn)場mysql重復(fù)記錄數(shù)據(jù)的排查處理記錄,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2021-10-10
  • MySQL 各個索引的使用詳解

    MySQL 各個索引的使用詳解

    這篇文章主要介紹了MySQL 各個索引的使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • 詳解MySQL的Seconds_Behind_Master

    詳解MySQL的Seconds_Behind_Master

    對于mysql主備實例,seconds_behind_master是衡量master與slave之間延時的一個重要參數(shù)。通過在slave上執(zhí)行"show slave status;"可以獲取seconds_behind_master的值。
    2021-05-05
  • Mysql?InnoDB引擎中頁目錄和槽的查找過程

    Mysql?InnoDB引擎中頁目錄和槽的查找過程

    這篇文章主要為大家介紹了Mysql?InnoDB引擎中頁目錄和槽的查找記錄過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Mysql中的超時時間設(shè)置方式

    Mysql中的超時時間設(shè)置方式

    這篇文章主要介紹了Mysql中的超時時間設(shè)置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 詳解Mysql自動備份與恢復(fù)的幾種方法(圖文教程)

    詳解Mysql自動備份與恢復(fù)的幾種方法(圖文教程)

    本篇文章主要介紹了Mysql 自動備份與恢復(fù),主要有三種方法,有需要的可以了解一下。
    2016-11-11
  • 淺析mysql 定時備份任務(wù)

    淺析mysql 定時備份任務(wù)

    這篇文章主要介紹了mysql 定時備份任務(wù)的相關(guān)資料,文中示例代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07

最新評論