【軟件測試】Linux環境下Docker搭建+Docker搭建MySQL服務(詳細)


前言

Linux之docker搭建

1、docker運行環境
CentOS7(64-bit),要求系統為64位,系統內核版本為3.10以上

查看系統版本:

cat /etc/centos-release

查看系統內核版本:

uname -a

2、docker安裝
安裝依賴包

yum install -y yum-utils device-mapper-persistent-data lvm2

添加docker下載源地址

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

更新yum緩存

yum makecache fast

安裝docker

yum install docker-ce

或者指定docker的安裝版本

yum install docker-ce-17.12.1.ce

查看docker版本號

docker version

3、安裝成功后需要將docker加入開機啟動項(docker安裝在Linux系統上實際也是一個應用,需要先啟動服務)

systemctl enble docker  #該命令不能用的話使用下面的命令試一下systemctl enable docker.service

4、查看版本信息

docker version

5、啟動docker
查看docker啟動狀態:systemctl status docker
啟動docker:systemctl start docker
停用docker: systemctl stop docker

6、查看安裝過的docker

yum list installed | grep docker

刪除容器鏡像:

rm -rf /var/lib/docker

卸載docker(將安裝過的docker全部刪除)

yum remove docker  docker-client   docker-client-latest  docker-common  docker-latest  docker-latest-logro

docker搭建MySQL服務

1、建立鏡像
下載官方鏡像

docker pull mysql:5.7   # 拉取 mysql 5.7
docker pull mysql       # 拉取最新版mysql鏡像

檢查是否拉取成功

docker images

新建掛載目錄

mkdir wxl2020
mkdir -p ~/wlx2020/mysql/conf ~/wlx2020/mysql/data

啟動容器

docker run -p 3309:3306 --name mysql2020 -v  ~/wlx2020/mysql/conf:/etc/mysql/conf.d -v ~/wlx2020/mysql/logs:/logs -v  ~/wlx2020/mysql/data:/var/lib/mysql  -e
MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7  

命令說明:
–name:容器名,此處命名為mysql2020  
-p:3309:3306 此處將主機的3309端口映射到容器的3306端口
-v:主機和容器的目錄映射關系,":"前為主機目錄,之后為容器目錄(-v ~/wlx2020/mysql/conf:/etc/mysql/conf.d 將主機的~/wlx2020/mysql/conf掛載到容器的/etc/mysql/conf.d)
-e:配置信息,此處配置mysql的root用戶的登錄密碼
-d:源鏡像名,此處為mysql:5.7 掛后臺運行

如果不需要做映射的話:

sudo docker run -p 3306:3306 --name mysql2020 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

檢查容器是否正確運行

docker container ls

可以看到容器ID,容器的源鏡像,啟動命令,創建時間,狀態,端口映射信息,容器名字

2、連接mysql
進入mysql2020容器操作mysql客戶端

docker exec -it mysql2020 bash

進入mysql應用,使用root用戶操作mysql

mysql -uroot -p123456

看到mysql> 說明已經進入了mysql

進入mysql后所有指令結尾都要加;分號

show databases:查看所有的庫
show tables:查看表名稱
use:某個數據庫,如use mysql;
select:查詢語句
quit:退出mysql
exit:退出容器

使用Navicat連接mysql
打開Navicat點連接mysql,進入配置頁面

B1

連接名:隨便取個
主機名或ip地址:本級搭建就是localhost,其他機器上就是對應的host地址
端口:3309,前面容器設置的端口
用戶名:root
密碼:123456,前面容器設置的密碼

Tips:
如果容器運行正常,但是無法訪問到mysql,一般困難有一下幾個原因

防火墻阻攔

開放端口:
$ systemctl status firewalld
$ firewall-cmd  --zone=public --add-port=3309/tcp -permanent
$ firewall-cmd  --reload
# 關閉防火墻:
$ systemctl stop firewalld

需要進入docker本地客戶端設置遠程訪問賬號

$ docker exec -it mysql bash
$ mysql -uroot -p123456
mysql> grant all privileges on *.* to root@'%' identified by "password"; 

原理

# mysql使用mysql數據庫中的user表來管理權限,修改user表就可以修改權限(只有root賬號可以修改)mysql> use mysql;
Database changedmysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host                    | user      | password                                                                 |
+--------------+------+-------------------------------------------+
| localhost              | root     | *A731AEBFB621E354CD41BAF207D884A609E81F5E      |
| 192.168.1.1            | root     | *A731AEBFB621E354CD41BAF207D884A609E81F5E      |
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)mysql> grant all privileges  on *.* to root@'%' identified by "password";
Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host                    | user      | password                                                                 |
+--------------+------+-------------------------------------------+
| localhost              | root      | *A731AEBFB621E354CD41BAF207D884A609E81F5E     |
| 192.168.1.1            | root      | *A731AEBFB621E354CD41BAF207D884A609E81F5E     |
| %                       | root      | *A731AEBFB621E354CD41BAF207D884A609E81F5E     |
+--------------+------+-------------------------------------------+
3 rows in set (0.00 sec)  
下面是我整理的2023年最全的軟件測試工程師學習知識架構體系圖

一、Python編程入門到精通

請添加圖片描述

二、接口自動化項目實戰

請添加圖片描述

三、Web自動化項目實戰

請添加圖片描述

四、App自動化項目實戰

請添加圖片描述

五、一線大廠簡歷

請添加圖片描述

六、測試開發DevOps體系

請添加圖片描述

七、常用自動化測試工具

請添加圖片描述

八、JMeter性能測試

請添加圖片描述

九、總結(尾部小驚喜)

每一次的努力都為未來的自己奠定基石,只要堅持追求夢想,即便路途遙遠,也能跨越重重困難,終將揚帆起航,迎接屬于自己的輝煌。

不論你此刻身在何處,只要心懷夢想,堅定前行,努力奮斗,便能超越平凡,成就非凡。相信自己的力量,放飛理想,在征途中燃燒激情,綻放人生的精彩。

生命太短暫,時間太寶貴,不要因畏懼而停滯不前,抓住機遇,勇往直前。無論面對何種困難,永遠保持堅韌和激情,努力奮斗,只有這樣,才能創造屬于自己的輝煌人生。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/36202.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/36202.shtml
英文地址,請注明出處:http://en.pswp.cn/news/36202.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CDN(內容分發網絡)

CDN的全稱是 Content Delivery Network, 即內容分發網絡。CDN是構建在現有網絡基礎之上的智能虛擬網絡,依靠部署在各地的邊緣服務器,通過中心平臺的負載均衡、內容分發、調度等功能模塊,使用戶就近獲取所需內容,降低網絡擁塞&a…

詳談MongoDB的那些事

概念區分 什么是關系型數據庫 關系型數據庫(Relational Database)是一種基于關系模型的數據庫管理系統(DBMS)。在關系型數據庫中,數據以表格的形式存儲,表格由行和列組成,行表示數據記錄&…

神秘的ip地址8.8.8.8,到底是什么類型的DNS服務器?

下午好,我的網工朋友。 DNS,咱們網工配置網絡連接或者路由器時,高低得和這玩意兒打交道吧。 它是互聯網中用于將人類可讀的域名(例如http://www.example.com)轉換為計算機可理解的IP地址(例如192.0.2.1&a…

元宇宙核能發電VR模擬仿真實訓教學為建設新型電力系統提供重要支撐

隨著“碳達峰、碳中和”目標與建設新型能源體系的提出,在元宇宙環境下建設電力系統是未來發展的趨勢。以物聯網、區塊鏈、數字孿生、混合現實等技術為主要代表的元宇宙技術體系及其在電力和能源系統中的應用,將會促進智能電網的發展,為建設新…

Oracle 知識篇+分區表上的索引由global改為local注意事項

★ 知識點 二、知識點 ?Local型索引有如下優點 1.Only one index partition must be rebuilt when a maintenance operation other than SPLIT PARTITION or ADD PARTITION is performed on an underlying table partition. 2.The duration of a partition maintenance opera…

【uniapp】使用Vs Code開發uniapp:

文章目錄 一、使用命令行創建uniapp項目:二、安裝插件與配置:三、編譯和運行:四、修改pinia: 一、使用命令行創建uniapp項目: 二、安裝插件與配置: 三、編譯和運行: 該項目下的dist》dev》mp-weixin文件導入微信開發者…

unity vscode 代碼關聯 跳轉 BUG

一早打開電腦發現代碼關聯失效了,目測可能跟昨天一些插件更新有關 結論 就這貨,開了就沒法提示代碼關聯,估計預覽版全是BUG。 另一個坑 同期有個unity插件也是預覽版,“非常好使”,當場去世。評論點開有好幾個人說用…

替代阿托斯DLKZOR-T/DLHZO-TES直動式伺服閥比例閥

DLKZOR-T/DLKZOR-TES直動式伺服閥比例閥結構: 1,LVDT傳感器 2,比例電磁鐵 3,閥體 4,閥套 5,閥芯 6,復位彈簧 7,集成數字放大器 8,七芯插頭 9,RS232通…

[保研/考研機試] 楊輝三角形 西北工業大學復試上機題 C++實現

題目描述 Time Limit: 1000 ms Memory Limit: 256 mb 輸入n值,使用遞歸函數,求楊輝三角形中各個位置上的值。 輸入描述: 一個大于等于2的整型數n 輸出描述: 題目可能有多組不同的測試數據,對于每組輸入數據, 按題目的要求輸…

15.3.2 【Linux】系統的配置文件:/etc/crontab,/etc/cron.d/*

這個“ crontab -e ”是針對使用者的 cron 來設計的,如果是“系統的例行性任務”時, 該怎么辦呢?是否還是需要以 crontab -e 來管理你的例行性工作調度呢?當然不需要,你只要編輯/etc/crontab 這個文件就可以。有一點需…

arcpy創建基本要素:點和多點

目錄 創建Point點要素步驟一:創建空間參考步驟二:創建要素類步驟三:創建字段步驟四:創建記錄并插入位置信息 創建Multipoint多點要素步驟一:創建空間參考(同上)步驟二:創建要素類步驟…

機器學習終極指南:特征工程(01/2) — 第 -2 部分

西姆蘭吉特辛格 一、介紹 歡迎來到“機器學習終極指南”的第二部分。在第一部分中,我們討論了探索性數據分析 (EDA),這是機器學習管道中的關鍵步驟。在這一部分中,我們將深入研究特征工程,這是機器學習過程…

使用shift關鍵字,寫一個帶二級命令的腳本(如:docker run -a -b -c中的run)

省流:shift關鍵字 探索思路 最近有一個小小的需求,寫一個類似于docker run -a -b -c這樣的腳本,這個腳本名為doline,它本身可以執行(doline -a -b -c),同時又帶有幾個如run、init、start這樣的…

Qt 之 QWidget QLabel

文章目錄 前言一、Qt 工程介紹二、窗口組件1. QWidget 組件2. QLabel組件 總結 前言 一、Qt 工程介紹 Qt Creator 以工程項目的方式對源碼進行管理一個Qt Creator工程包含不同類型的文件 。 .pro 項目描述文件.pro.user用戶配置描述文件- .h頭文件.cpp源文件.ui界面描述文件資…

verilog 實現異步fifo

理論知識參考 異步FIFO_Verilog實現_verilog實現異步fifo_Crazzy_M的博客-CSDN博客 代碼 /* 位寬8bit, 位深8 */ module async_fifo#(parameter FIFO_DEPTH 8,parameter FIFO_WIDTH 8 ) (input rst_n,input wr_clk,input wr_en,input [FIFO_WIDTH - 1:0…

Chrome小技巧---多用戶登錄同一網站不串信息

測試中經常需要用到瀏覽器需要登錄多個賬號 但是有一個問題就是會串號 通過添加不同的用戶再用這用戶登錄,就不串號了: 還可以在瀏覽器的偏好設置中添加啟動地址 這樣每次打開,就進到設置的地址中了

el-table自適應縮放大小

安裝依賴 npm install --save vue-draggable-resizable //或 cnpm install --save vue-draggable-resizablemain.js引入依賴 import VueDraggableResizable from vue-draggable-resizable import "vue-draggable-resizable/dist/VueDraggableResizable.css"; Vue.c…

基于Redis實現全局唯一Id

微信公眾號訪問地址:基于Redis實現全局唯一Id 推薦文章: 1、使用原生Redis命令實現分布式鎖 ? 2、為什么引入Redisson分布式鎖? 3、SpringBoot整合多數據源,并支持動態新增與切換(詳細教程) 4、Sprin…

JVM 查看配置 jinfo 及使用 jstat,查看堆棧jstack及GC

1. Jinfo 查看正在運行的Java應用程序的擴展參數: 包含 JVM 參數與 java 系統參數 命令: jinfo pid 2 jstat 查看堆內存使用情況及 GC 回收頻率等: jstat [-命令選項] [vmid] [間隔時間(毫秒)] [查詢次數] 2.1 jstat -gc pid 最常用,可…

C語言必會題目(2)

W...Y的主頁 😊 代碼倉庫分享💕 今天繼續分享C語言必會的題目,上一篇文章主要是一些選擇題,而今天我們主要內容為編程題的推薦與講解 準備好迎接下面的題了嗎?開始發車了!!! 輸入…