docker安裝mysql8.0.23

拉取鏡像

docker pull mysql:8.0.23

創建掛載文件

mkdir -p /home/docker/mysql/conf
mkdir -p /home/docker/mysql/data
mkdir -p /home/docker/mysql/logcd /home/docker/mysql/conf
touch my.cnf#授權
chmod 777 -R /home/docker/mysql/conf
chmod 777 -R /home/docker/mysql/data
chmod 777 -R /home/docker/mysql/log

編輯my.cnf

vi my.cnf

內容如下:

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[mysqld]# 不區分大小寫
lower_case_table_names = 1#開啟慢查詢
slow_query_log = ON
#修改慢sql的閾值,sql執行超過閾值的時候就會記錄到慢日志的log文件中
long_query_time = 1#由于在MySQL5.7版本以上,默認設置SQL_Mode模式,在模式里有NO_ZERO_DATE,NO_ZERO_IN_DATE,存在表示系統里DATE類型字段不能有0值
sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'#Mysql報錯Packet for query is too large問題解決
max_allowed_packet=4M

啟動容器

docker run -d \
--name mysql \
-p 3306:3306 \
--privileged=true \
--restart=always \
-v /home/docker/mysql/log:/var/log/mysql \
-v /home/docker/mysql/data:/var/lib/mysql \
-v /home/docker/mysql/conf/my.cnf:/etc/my.cnf \
-e MYSQL_ROOT_PASSWORD=密碼 \
mysql:8.0.23

創建用戶和授權

#進入容器內部
docker exec -it 容器id /bin/bashmysql -u root -p
密碼#創建用戶和密碼,以及授權
create user 'gxj'@'localhost' identified by '密碼';
grant all on *.* to 'gxj'@'localhost';
flush privileges;#找到mysql數據庫
use mysql;
#查看結果是不是root用戶僅允許本地 localhost 登錄,是的話,就要修改它的host為%,表示任意IP地址都可以登錄
select host ,user from user;#手動修改,把root 的locahost改為%(原作者那是單引號,應該用雙引號)
update user set host ="%" where user="gxj";
flush privileges;

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

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

相關文章

C++類的成員:靜態成員變量、靜態成員函數、非靜態成員變量、非靜態成員函數

(1) 類的成員 A.What(什么是類的成員) 是組成類的基本構建,包含數據成員、靜態成員和 成員函數 B.Which(類的成員有哪些) 數據成員: 用于存儲與類的對象相關的數據,例如整數、浮點數、字符串、…

2通道音頻ADC解碼芯片ES7243L、ES7243E、ES7243,用于低成本實現模擬麥克風轉換為IIS數字話筒

前言: 音頻解碼芯片某創參考價格: ES7243L 500:¥1.36 / 個 ES7243E 500:¥1.66 / 個 ES7243 500: ¥1.91 / 個 其中ES7243L工作電壓為1.8V,與其他兩款的3.3V工作電壓不同&…

ESP32-C3模組上跑通AES-GCM(2)

接前一篇文章:ESP32-C3模組上跑通AES-GCM(1) 本文內容參考: mbedtls學習筆記 AES GCM_aes128 gcm的aad是什么-CSDN博客 https://www.cnblogs.com/testlearn/p/16547583.html 對稱加密和非對稱加密,一文講解明白!-CSDN博客 深入理解高級加密標準(Advanced Encryption…

日本IT-SIER/SES的區別詳情、契約形態等

一、SLER 主要的服務內容就是“幫客人開發系統或是各種APP,并在指定期間內交貨,交貨后也會持續進行運維等售后服務”。 客人很廣泛,小到普通的服務業商家(餐飲店/服飾店/美容業/電商)大到各種公共/政府機關&#xff…

【面試題】串聯探針和旁掛探針有什么區別?

在網絡安全領域中,串聯探針和旁掛探針(通常也被稱為旁路探針)是兩種不同部署方式的監控設備,它們各自具有獨特的特性和應用場景。以下是它們之間的主要區別: 部署方式 串聯探針:串聯探針一般通過網關或者…

`padding`、`border`、`width`、`height` 和 `display` 這些 CSS 屬性的作用

盒模型中的屬性 padding(內邊距) padding 用于控制元素內容與邊框之間的空間,可以為元素的每個邊(上、右、下、左)分別設置內邊距。內邊距的單位可以是像素(px)、百分比(%&#xf…

Lambda架構與Kappa架構的特性對比

一個大數據系統架構的設計思想很大程度上受到當時技術條件和思維模式的限制。Lambda架構將批處理層和速度層分為兩層,分別進行離線數據處理和實時數據處理,這樣設計的根本原因在于,Lambda提出的初期是在公司中進行小范圍的業務運用&#xff0…

從Java開發者到.NET Core初級工程師學習路線:C#語言基礎

1. C#語言基礎 1.1 C#語法概覽 歡迎來到C#的世界!對于剛從Java轉過來的開發者來說,你會發現C#和Java有很多相似之處,但C#也有其獨特的魅力和強大之處。讓我們一起來探索C#的基本語法,并比較一下與Java的異同。 程序結構 C#程序…

MySQL-數據庫管理:優化、安全、合規與遷移的全面解析

1. 數據庫設計 1.1 需求分析 數據庫設計的第一步是深入理解應用的需求。這通常涉及到與項目團隊(包括產品經理、開發者、業務分析師等)的緊密合作,以確保數據庫設計能夠準確地反映業務需求。需求分析階段的關鍵活動包括: 收集信…

第一百四十九節 Java數據類型教程 - Java子字符串、字符串轉換

Java數據類型教程 - Java子字符串 獲取子字符串 我們可以使用substring()方法來獲取字符串的子部分。 我們可以將開始索引作為參數,并返回一個從開始索引開始到字符串結尾的子串。 我們還可以將開始索引和結束索引作為參數。 它返回從開始索引開始的子字符串和小…

linux高級編程(文件I/O)

標準I/O與文件I/O的區別: 文件操作: 緩存 操作對象 具體操作 標準IO 全緩存/行緩存 文件指針(流指針)FILE * 1.打開 --fopen 2.讀寫 …

Windows右鍵沒有新建Word、PPT與Excel的解決方法

本文介紹在Windows電腦中,右鍵與資源管理器的“新建”選項中,都沒有新建Word、PPT或Excel文件的解決方法。 最近,發現一臺重裝了系統與Office的電腦中,無論是桌面上與資源管理器中的右鍵,還是資源管理器左側頂部的“新…

力扣1546.和為目標值且不重疊的非空子數組的最大數目

力扣1546.和為目標值且不重疊的非空子數組的最大數目 從頭開始找 找到滿足條件的就清空哈希表 class Solution {public:int maxNonOverlapping(vector<int>& nums, int target) {int n nums.size();vector<int> s(n1);for(int i0;i<n;i) s[i1] s[i] n…

手寫簡單模擬mvc

目錄結構&#xff1a; 兩個注解類&#xff1a; Controller&#xff1a; package com.heaboy.annotation;import java.lang.annotation.*;/*** 注解沒有功能只是簡單標記* .RUNTIME 運行時還能看到* .CLASS 類里面還有&#xff0c;構建對象久沒來了&#xff0c;這個說明…

掌握Vue 3生命周期:從組合式API到高效代碼實踐

引言 在 Vue 3 中&#xff0c;生命周期的概念得到了進一步的優化和簡化。Vue 3 引入了組合式 API&#xff08;Composition API&#xff09;&#xff0c;這為開發者提供了更靈活的方式來組織和重用代碼邏輯。與傳統的選項式 API&#xff08;Options API&#xff09;相比&#x…

node-sass 老版本4.14.0 安裝失敗解決辦法

舊項目 npm install 發現 node-sass 安裝 失敗 切換淘寶鏡像之后 不能完全解決問題。因為需要編譯&#xff0c;本地沒有Python環境不能實現 安裝node-sass時&#xff0c;在install階段會從Github上下載一個叫binding.node的文件&#xff0c;而「GitHub Releases」里的文件…

C++編譯鏈接原理

從底層剖析程序從編譯到運行的整個過程 三個階段 一、編譯階段二、鏈接階段三、運行階段 為了方便解釋&#xff0c;給出兩端示例代碼&#xff0c;下面圍繞代碼進行實驗&#xff1a; //sum.cpp int gdata 10; int sum(int a,int b) {return ab; }//main.cpp extern int gdata…

Stream流的簡單用法

filter //stream流中的filter //filter 方法用于通過設置的條件過濾出元素。以下代碼片段使用 filter 方法過濾掉空字符串&#xff1a; List<String> filter Arrays.asList("mz", "", "mz55", "m", "MZ"); Stream&l…

初始redis:在Ubuntu上安裝redis

1.先切換到root用戶 使用su命令切換到root 2.使用apt命令來搜索redis相關的軟件包 命令&#xff1a;apt search redis 3.下載redis 命令&#xff1a; apt install redis 在Ubuntu 20.04中 &#xff0c;下載的redis版本是redis5 4.查看redis狀態 命令&#xff1a; netst…

Python自動化測試系列[v1.0.0][高效自動化設計]

Python多線程應用于自動化測試 將多線程在測試巧妙地應用&#xff0c;確實會帶來很多好處&#xff0c;并且這是充分利用機器資源執行高效率測試很好的方式 # -*- coding: utf-8 -*- import threading from time import ctime import time from selenium import webdriverdef …