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

Mac上使用Docker如何快速啟動MySQL測試

 更新時間:2016年10月10日 09:37:42   作者:Jay Janssen  
本文主要討論如何使用Docker快速啟動 MySQL 測試,包括Mac環(huán)境。非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧

本文主要討論使用Docker快速啟動 MySQL 測試的方法,包括Mac環(huán)境。一起看看吧!

近來業(yè)界有很多對Docker的討論,其生態(tài)系統(tǒng)發(fā)展得很快,然而,從簡單的“入門”或“引導”類的文章中能容易地找到成熟的技術,但Docker不然。我在Mac上試玩過Docker,但Mac絕對是Docker界的二等公民。當我在Giuseppe的博客上看到關于在Mac上使用新Docker beta《Docker for Mac beta and MySQL》一文時,決定自己來嘗試下。這些步驟適用于Mac(Windows也可能),亦能適配Linux環(huán)境(GA版本,Docker 1.11.1)。

首先,在Mac上注冊新的Docker測試版程序,接著從Docker中獲得下載代碼。此過程我耗時一天,但應該不久就會發(fā)布完整版。安裝完成后,我需要為常見的MySQL版本設置一些Docker容器,沙箱也就有了。方法如下:

jayj@~ [510]$ docker network create test
90005b3ffa9fef1f817ee4965e794a567404c9a8d5bf07320514e7d848d59ff9
jayj@~ [511]$ docker run --name=mysql57 --net=test -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -d mysql/mysql-server:5.7
6c80fa89610dbd5418ba474ad7d5451cd061f80a8a72ff2e718341827a08144b
jayj@~ [512]$ docker run -it --rm --net=test -e MYSQL_HOST=mysql57 mysql/shell init
Creating a Classic Session to root@mysql57:3306
Enter password:
No default schema selected.
enableXProtocol: Installing plugin mysqlx...
enableXProtocol: done

一些經(jīng)驗總結:

我為我的容器創(chuàng)建了一個名為“測試”的網(wǎng)絡以共享,本質(zhì)是容器之間一個專用的私有網(wǎng)絡。我喜歡這個是因為在相關的端口是監(jiān)聽多個容器,也不必設置主機操作系統(tǒng)的端口。
我將Oracle的官方MySQL Docker容器啟動一個MySQL 5.7的鏡像,在綁定到該測試網(wǎng)絡。

我使用了MySQL /shell鏡像(來自Oracle)來初始化MySQL 5.7服務器上的mysqlx插件。需要注意的是,我并沒有輸入密碼,因為我沒有創(chuàng)建一個服務器(不安全,但它是一個沙箱)。
這個里面的Shell使用了運行后刪除的臨時容器,所以并不會破壞Docker ps-a輸出。

所以,現(xiàn)在我希望能夠使用標準的MySQL命令行或新的MySQL shell來訪問這個容器。讓它看起來很干凈,因此我添加了一些bash別名:

alias mysqlsh='docker run -it --rm --net=test mysql/shell'
alias mysql='docker run -it --rm -e MYSQL_ALLOW_EMPTY_PASSWORD=yes --net=test --entrypoint="mysql" mysql/mysql-server:5.7'

這些以后,我可以直接調(diào)用他們并通過正常的命令行選項來連接我的MySQL 5.7鏡像,就像使用的是一個原生的MySQL CLI binary。從MySQL 5.7鏡像中使用MySQL CLI:

jayj@~ [524]$ mysql -h mysql57
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 4
Server version: 5.7.12 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)

使用MySQL shell:

jayj@~ [527]$ mysqlsh -h mysql57 -u root --session-type=node
Creating a Node Session to root@mysql57:33060
Enter password:
No default schema selected.
Welcome to MySQL Shell 1.0.3 Development Preview
Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help', 'h' or '?' for help.
Currently in JavaScript mode. Use sql to switch to SQL mode and execute queries.
mysql-js> sql
Switching to SQL mode... Commands end with ;
mysql-sql> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
mysql-sql>

現(xiàn)在,如果為了一些事情想要運行檢查MySQL 5.5,可以這樣做:

jayj@~ [530]$ docker run --name=mysql55 --net=test -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -d mysql/mysql-server:5.5
Unable to find image 'mysql/mysql-server:5.5' locally
5.5: Pulling from mysql/mysql-server
a3ed95caeb02: Already exists
ffe36b360c6d: Already exists
646f220a8b5d: Pull complete
ed65e4fea7ed: Pull complete
d34b408b18dd: Pull complete
Digest: sha256:12f0b7025d1dc0e7b40fc6c2172106cdf73b8832f2f910ad36d65228d9e4c433
Status: Downloaded newer image for mysql/mysql-server:5.5
6691dd9d42c73f53baf2968bcca92b7f4d26f54bb01d967be475193305affd4f
jayj@~ [531]$ mysql -h mysql55
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1
Server version: 5.5.49 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
或者,Percona Server:
jayj@~ [534]$ docker run --name=ps57 --net=test -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -d percona/percona-server:5.7
Unable to find image 'percona/percona-server:5.7' locally
5.7: Pulling from percona/percona-server
a3ed95caeb02: Pull complete
a07226856d92: Pull complete
eee62d87a612: Pull complete
4c6755120a98: Pull complete
10eab0da5972: Pull complete
d5159a6502a4: Pull complete
e595a1a01d00: Pull complete
Digest: sha256:d57f0ce736f5403b1714ff8d1d6b91d5a7ee7271f30222c2bc2c5cad4b4e6950
Status: Downloaded newer image for percona/percona-server:5.7
9db503852747bc1603ab59455124663e8cedf708ac6d992cff9b43e2fbebd167
jayj@~ [537]$ mysql -h ps57
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2
Server version: 5.7.10-3 Percona Server (GPL), Release 3, Revision 63dafaf
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql>

所以,這一切都很好,一旦鏡像被本地緩存,上下調(diào)整新的容器可以實現(xiàn)無痛和快速。所有這一切的工作都是與我的操作系統(tǒng)工作站分離的??赡苓€有其他事情可以使用這種設置,但還沒找到方法(如加載數(shù)據(jù)文件、運行代碼來連接這些容器等),但將來我會解決。

以上所述是小編給大家介紹的Mac上使用Docker快速啟動MySQL測試的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • Mac上使用Docker如何快速啟動MySQL測試

    Mac上使用Docker如何快速啟動MySQL測試

    本文主要討論如何使用Docker快速啟動 MySQL 測試,包括Mac環(huán)境。非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-10-10
  • Docker配置HTTP/HTTPS代理的方法

    Docker配置HTTP/HTTPS代理的方法

    本篇文章主要介紹了Docker配置HTTP/HTTPS代理的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • 啟動docker的時候如何把參數(shù)傳遞給docker里面的項目(推薦)

    啟動docker的時候如何把參數(shù)傳遞給docker里面的項目(推薦)

    這篇文章主要介紹了啟動docker的時候如何把參數(shù)傳遞給docker里面的項目,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-01-01
  • Linux上使用docker啟動redis并遠程訪問的實現(xiàn)

    Linux上使用docker啟動redis并遠程訪問的實現(xiàn)

    這篇文章主要介紹了Linux上使用docker啟動redis并遠程訪問的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Docker一行命令完成FTP服務搭建的實現(xiàn)

    Docker一行命令完成FTP服務搭建的實現(xiàn)

    這篇文章主要介紹了Docker一行命令完成FTP服務搭建的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • Docker本地鏡像發(fā)布到阿里云的實現(xiàn)

    Docker本地鏡像發(fā)布到阿里云的實現(xiàn)

    本文主要介紹了Docker本地鏡像發(fā)布到阿里云的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • docker安裝Redis高可用實現(xiàn)一主二從三哨兵

    docker安裝Redis高可用實現(xiàn)一主二從三哨兵

    redis提供了哨兵模式保證redis實現(xiàn)高可用,本文主要介紹了docker安裝Redis高可用實現(xiàn)一主二從三哨兵,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2024-02-02
  • docker安裝ElasticSearch:7.8.0集群的詳細教程

    docker安裝ElasticSearch:7.8.0集群的詳細教程

    這篇文章主要介紹了docker安裝ElasticSearch:7.8.0集群的相關知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Docker Compose部署Nginx的方法步驟

    Docker Compose部署Nginx的方法步驟

    本文主要介紹了Docker Compose部署Nginx的方法步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Docker容器無法被stop or kill問題的解決方法

    Docker容器無法被stop or kill問題的解決方法

    這篇文章主要介紹了Docker容器無法被stop or kill問題的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09

最新評論