Ubuntu離線安裝mysql

在 Ubuntu 24.04 上離線安裝 MySQL 的步驟如下(支持 MySQL 8.0 或 8.4):

一.安裝方法

此次安裝是按照方法一安裝,其它方法供參考:

安裝成功截圖:

在這里插入圖片描述

安全配置截圖: sudo mysql_secure_installation

在這里插入圖片描述

登錄測試:

在這里插入圖片描述

方法一:使用 apt-rdepends 下載依賴包(推薦)

1. 在聯網機器上準備離線包
(1) 安裝工具并清理緩存
sudo apt update
sudo apt install apt-rdepends wget
sudo rm -rf /var/lib/apt/lists/*
(2) 生成干凈的依賴列表
mkdir ~/mysql-offline
cd ~/mysql-offline# 生成依賴列表并過濾無效條目
apt-rdepends mysql-server | \grep -v "^ " | \awk '{print $1}' | \grep -Ev 'debconf-2.0|<.*>|^mysql-common$' > deps.list
(3) 下載所有依賴包
sudo apt download $(cat deps.list)
(4) 打包并傳輸
tar czvf mysql-offline.tar.gz ./*

mysql-offline.tar.gz 復制到離線機器。

2. 在離線機器上安裝
(1) 解壓文件
sudo mkdir -p /var/cache/apt/archives
sudo tar xzvf mysql-offline.tar.gz -C /var/cache/apt/archives/
(2) 安裝所有包
sudo apt install mysql-server --fix-missing --no-download
(3) 啟動并配置
sudo systemctl start mysqlsudo systemctl enable mysql#停用mysql服務(可選)
sudo systemctl stop mysql
#安全配置
sudo mysql_secure_installation# 刪除匿名用戶
Remove anonymous users? [Y/n] Y# 禁止遠程 root 登錄
Disallow root login remotely? [Y/n] Y# 刪除測試數據庫
Remove test database and access to it? [Y/n] Y
3. 跳過密碼驗證(可選)

如果 MySQL 8.0+ 默認使用 auth_socket 插件導致密碼登錄失敗,可先切換到密碼認證:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密碼';
FLUSH PRIVILEGES;

方法二:手動下載官方 Bundle 包(適合 MySQL 8.4)

1. 在聯網機器下載

從 MySQL 官網 下載對應 Bundle 包:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb
wget https://repo.mysql.com/apt/ubuntu/pool/mysql-8.4/m/mysql-community/mysql-server_8.4.0-1ubuntu24.04_amd64.deb-bundle.tar
2. 離線機器安裝
# 解壓 Bundle 包
tar -xvf mysql-server_*.deb-bundle.tar# 按順序安裝關鍵包
sudo dpkg -i mysql-common_*.deb
sudo dpkg -i mysql-community-client-plugins_*.deb
sudo dpkg -i mysql-community-client-core_*.deb
sudo dpkg -i mysql-community-client_*.deb
sudo dpkg -i mysql-client_*.deb
sudo dpkg -i mysql-community-server-core_*.deb
sudo dpkg -i mysql-community-server_*.deb
sudo dpkg -i mysql-server_*.deb# 修復依賴
sudo apt-get install -f

方法三:最小化手動安裝(終極方案)

1. 必須下載的核心包(Ubuntu 24.04 amd6)
包名下載地址
libssl3http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl3_3.0.8-1ubuntu1_amd64.deb
mysql-commonhttps://repo.mysql.com/apt/ubuntu/pool/mysql-8.4/m/mysql-community/mysql-common_8.4.0-1ubuntu24.04_amd64.deb
mysql-community-clienthttps://repo.mysql.com/apt/ubuntu/pool/mysql-8.4/m/mysql-community/mysql-community-client_8.4.0-1ubuntu24.04_amd64.deb
mysql-community-serverhttps://repo.mysql.com/apt/ubuntu/pool/mysql-8.4/m/mysql-community/mysql-community-server_8.4.0-1ubuntu24.04_amd64.deb
2. 安裝命令
# 先安裝 libssl3
sudo dpkg -i libssl3_*.deb# 安裝 MySQL 基礎包
sudo dpkg -i mysql-common_*.deb
sudo dpkg -i mysql-community-client_*.deb
sudo dpkg -i mysql-community-server_*.deb# 修復依賴
sudo apt-get install -f

二.關鍵配置

1. 修改數據存儲路徑(可選)
sudo mysql -u root -p
# 在 MySQL 命令行中執行
SET GLOBAL innodb_data_home_dir = '/new/data/path';
2. 允許遠程訪問
CREATE USER 'remote'@'%' IDENTIFIED BY 'YourPassword';
GRANT ALL PRIVILEGES ON *.* TO 'remote'@'%';
FLUSH PRIVILEGES;

三.故障排查

1. 依賴缺失錯誤
# 檢查缺失的包名(例如 libmecab2)
sudo apt-cache search libmecab2
# 手動下載并安裝
sudo dpkg -i libmecab2_*.deb
2. 服務啟動失敗
# 查看日志
sudo journalctl -u mysql.service
# 常見原因:/var/lib/mysql 權限問題
sudo chown -R mysql:mysql /var/lib/mysql
3. 密碼認證插件沖突
# 如果出現 "caching_sha2_password" 錯誤
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';

驗證安裝

# 檢查版本
mysql --version# 檢查服務狀態
sudo systemctl status mysql# 登錄測試
sudo mysql -u root -p

總結

  • 推薦方案:優先使用 apt-rdepends 生成完整依賴包,適合需要與系統倉庫完全一致的環境。
  • 快速方案:直接下載官方 Bundle 包,適合需要最新版 MySQL 8.4 的場景。

總結

  • 推薦方案:優先使用 apt-rdepends 生成完整依賴包,適合需要與系統倉庫完全一致的環境。
  • 快速方案:直接下載官方 Bundle 包,適合需要最新版 MySQL 8.4 的場景。

希望這篇文章對你有所幫助!如果覺得不錯,別忘了點贊收藏哦!

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

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

相關文章

SQL Server 2022 讀寫分離問題整合

跟著熱點整理一下遇到過的SQL Server的問題&#xff0c;這篇來聊聊讀寫分離遇到的和聽說過的問題。 一、讀寫分離實現方法 1. 原生高可用方案 1.1 Always On 可用性組&#xff08;推薦方案&#xff09; 配置步驟&#xff1a; -- 1. 啟用Always On功能 USE [master] GO ALT…

【前端掃盲】postman介紹及使用

Postman 是一款專為 API 開發與測試設計的 全流程協作工具&#xff0c;程序員可通過它高效完成接口調試、自動化測試、文檔管理等工作。以下是針對程序員的核心功能介紹和應用場景說明&#xff1a; 一、核心功能亮點 接口請求構建與調試 支持所有 HTTP 方法&#xff08;GET/POS…

IdeaVim-AceJump

?AceJump 是一款專為IntelliJ IDEA平臺打造的開源插件&#xff0c;旨在通過簡單的快捷鍵操作幫助用戶快速跳轉到編輯器中的任何符號位置&#xff0c;如變量名、方法調用或特定的字符串?。無論是大型項目還是日常編程&#xff0c;AceJump 都能顯著提升你的代碼導航速度和效率。…

[C語言入門] 結構體

目錄 1. 啥是結構體 2. 啥是結構體變量 3. 創建結構體變量的小細節 3.1 創建全局結構體變量&#xff08;不推薦&#xff09; 3.2 創建局部結構體變量&#xff08;不推薦&#xff09; 3.3 創建局部結構體變量Plus 4. 結構體在內存里面咋存&#xff1f; 5. 結構體作為參數…

賢小二c#版Yolov5 yolov8 yolov10 yolov11自動標注工具 + 免python環境 GPU一鍵訓練包

賢小二c#版yolo標注訓練工具集 歡迎使用賢小二AI標注訓練系統v2.0 本課程所有演示程序全部免費 1、這節課程主要演示賢小二AI標注訓練系統的使用&#xff0c;以及標注數據時注意事項和技巧&#xff1b; 2、本程序采用c# Net8.0框架開發&#xff0c;是賢小二開發的一款Yolo標注…

二分類交叉熵損失

二分類交叉熵損失&#xff08;Binary Cross-Entropy Loss&#xff09;是用于二分類問題的常見損失函數。它衡量的是模型輸出的預測概率分布與真實標簽之間的差異。 1 二分類問題 在二分類問題中&#xff0c;每個樣本的目標輸出是 0 或 1&#xff0c;表示樣本屬于某一類或另一類…

【C++】Cplusplus進階

模板的進階&#xff1a; 非類型模板參數 是C模板中允許使用具體值&#xff08;而非類型&#xff09;作為模板參數的特性。它們必須是編譯時常量&#xff0c;且類型僅限于整型、枚舉、指針、引用。&#xff08;char也行&#xff09; STL標準庫里面也使用了非類型的模板參數。 …

關于pycharm遠程連接服務器如何debug

1、pycharm遠程連接只有pycharm專業版才可以&#xff0c;在校學生可以用學校郵箱申請。另外&#xff0c;網上電商也可以&#x1f92b; 2、遠程連接有很多教程&#xff0c;可以參考的文章有很多。這里主要記錄關于遠程連接服務器debug遇到的一些問題。 3、由于遠程連接服務器開…

數據結構每日一題day11(鏈表)★★★★★

題目描述&#xff1a;有一個帶頭結點的單鏈表L&#xff0c;請設計一個算法查找其第1個數據值為e的結點&#xff0c;若存在則返回指向該結點的指針&#xff0c;若不存在則返回 NULL。 算法思想&#xff1a; 輸入檢查&#xff1a;若鏈表為空&#xff08;僅有頭結點&#xff09;&…

《HarmonyOS Next開發進階:打造功能完備的Todo應用華章》

章節 6&#xff1a;日期選擇器與日期處理 目標 學習如何使用DatePicker組件。理解日期格式化和日期計算。 內容 日期選擇器基礎 使用DatePicker組件。處理日期選擇事件。 日期格式化 格式化日期為友好的文本。 日期計算 判斷日期是否過期或即將到期。 代碼示例 Entry Com…

迅饒科技X2Modbus網關-GetUser信息泄露漏洞

免責聲明&#xff1a;本號提供的網絡安全信息僅供參考&#xff0c;不構成專業建議。作者不對任何由于使用本文信息而導致的直接或間接損害承擔責任。如涉及侵權&#xff0c;請及時與我聯系&#xff0c;我將盡快處理并刪除相關內容。 漏洞描述 該漏洞的存在是由于GetUser接口在…

Go 原理剖析:數據結構之字符串

在 Go 語言中&#xff0c;字符串&#xff08;string&#xff09;是一個非常重要的數據類型。它看似簡單&#xff0c;但背后卻隱藏著不少有趣的原理和優化技巧。今天我們就來聊聊 Go 中字符串的底層結構、特性&#xff0c;以及如何高效地使用它。 1. 字符串的底層結構 字符串的…

【SPP】藍牙鏈路控制(LC)在SPP中互操作性深度解析

在藍牙協議棧的精密分層體系中&#xff0c;其鏈路控制&#xff08;Link Control, LC&#xff09;層作為基帶層的核心組件&#xff0c;承載著物理信道管理、連接建立與維護等關鍵任務。其互操作性要求直接決定了不同廠商設備能否實現無縫通信。本文將以藍牙技術規范中的LC互操作…

Windows C++ 排查死鎖

開發出來應用程序突然間卡死不動&#xff0c;如果其中是因為死鎖問題卡列該如何排查 下面是一個簡單的死鎖例子 #include <iostream> #include <thread> #include <mutex>std::mutex a, b;void function_a() {std::lock_guard<std::mutex> _x(a);std:…

【零基礎入門unity游戲開發——2D篇】2D 游戲場景地形編輯器——TileMap的使用介紹

考慮到每個人基礎可能不一樣&#xff0c;且并不是所有人都有同時做2D、3D開發的需求&#xff0c;所以我把 【零基礎入門unity游戲開發】 分為成了C#篇、unity通用篇、unity3D篇、unity2D篇。 【C#篇】&#xff1a;主要講解C#的基礎語法&#xff0c;包括變量、數據類型、運算符、…

【易訂貨-注冊/登錄安全分析報告】

前言 由于網站注冊入口容易被機器執行自動化程序攻擊&#xff0c;存在如下風險&#xff1a; 暴力破解密碼&#xff0c;造成用戶信息泄露&#xff0c;不符合國家等級保護的要求。短信盜刷帶來的拒絕服務風險 &#xff0c;造成用戶無法登陸、注冊&#xff0c;大量收到垃圾短信的…

GLPI 未授權SQL注入漏洞(CVE-2025-24799)

免責申明: 本文所描述的漏洞及其復現步驟僅供網絡安全研究與教育目的使用。任何人不得將本文提供的信息用于非法目的或未經授權的系統測試。作者不對任何由于使用本文信息而導致的直接或間接損害承擔責任。如涉及侵權,請及時與我們聯系,我們將盡快處理并刪除相關內容。 0x0…

基于Deepface的情緒識別c++

基于Deepface的情緒識別c 文章目錄 基于Deepface的情緒識別c簡介下載模型并轉為onnx&#xff08;facial_expression_model_weights.h5&#xff09;測試取出照片的人臉部分并處理成模型輸入格式用模型推理一下看看結果 用onnxruntime的c庫推理 簡介 DeepFace是一個基于深度學習…

Java的數據庫編程——JDBC基礎

JDBC編程 一、概述1.1 概念介紹1.2 驅動包下載1.3 導入驅動包 二、通過Java程序操作數據庫2.1 通過 JDBC 進行 插入數據 操作2.1.1 創建“數據源(DataSource)——描述要操作的數據庫、數據是在哪”2.1.2 與服務器建立連接2.1.3 構造sql語句&#xff0c;并且對字符串類型的sql進…

DeepSeek-R1 面試題匯總

Deepseek-r1 面試寶典 原文地址&#xff1a;https://articles.zsxq.com/id_91kirfu15qxw.html DeepSeek-R1 面試題匯總 DeepSeek-R1 面試題匯總 GRPO&#xff08;Group Relative Policy Optimization&#xff09;常見面試題匯總篇 DeepSeek-R1 DeepSeek-R1-Zero 常見面試題匯總…