Ubuntu24安裝MariaDB/MySQL后不知道root密碼如何解決

Ubuntu 24.04 安裝 MariaDB 后 root 密碼未知?解決方案在此

在 Ubuntu 24.04 上新安裝 MariaDB 后,許多用戶會發現自己不知道 root 用戶的密碼,甚至在安裝過程中也沒有提示設置密碼。這是因為在較新的 MariaDB 版本中,默認情況下 root 用戶采用了 unix_socket 身份驗證插件。這意味著您可以使用操作系統的 root 用戶權限直接登錄 MariaDB,而無需輸入密碼。

本文將為您詳細解釋如何解決這個問題,并為您提供設置新密碼的多種方法。

方法一:使用 mysql_secure_installation 腳本 (推薦)

這是最推薦、最安全且最簡單的方法。mysql_secure_installation 是一個隨 MariaDB 一同安裝的腳本,旨在幫助用戶進行基本的安全設置,包括設置 root 密碼。

步驟如下:

  1. 以 root 用戶權限運行腳本:

    打開終端,輸入以下命令:

    sudo mysql_secure_installation
  2. 切換到密碼驗證:

    腳本會首先詢問您是否想切換到 unix_socket 身份驗證之外的方式。為了能使用密碼登錄,請輸入 Y 并按回車。

  3. 設置新密碼:

    接下來,系統會提示您為 MariaDB 的 root 用戶設置新密碼。輸入您想要設置的強密碼并再次輸入以確認。

  4. 完成安全設置:

    腳本還會詢問您是否要移除匿名用戶、禁止 root 用戶遠程登錄、移除測試數據庫等。出于安全考慮,建議對這些選項都選擇 Y (是)。

完成以上步驟后,您的 MariaDB root 用戶就已經設置了新密碼。您現在可以使用以下命令通過密碼登錄:

sudo mysql -u root -p

然后輸入您剛剛設置的密碼即可。

方法二:手動更改 root 用戶密碼

如果您不想運行 mysql_secure_installation 腳本,也可以手動更改 root 用戶的密碼。

步驟如下:

  1. 以 root 權限登錄 MariaDB:

    由于默認使用 unix_socket 認證,您可以直接使用 sudo 命令免密登錄。

    sudo mysql -u root
  2. 更改 root 用戶的認證方式和密碼:

    進入 MariaDB 命令行后,執行以下 SQL 語句來更改 root 用戶的認證插件為 mysql_native_password 并設置新密碼。請將 YourStrongPasswordHere 替換為您自己的強密碼。

    ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('YourStrongPasswordHere');
  3. 刷新權限:

    為了使更改立即生效,需要刷新權限。

    FLUSH PRIVILEGES;
  4. 退出并測試:

    輸入 EXIT; 退出 MariaDB 命令行。現在,您應該可以使用新設置的密碼登錄了。

    sudo mysql -u root -p

方法三:當無法登錄時重置 root 密碼

在極少數情況下,如果您已經更改了密碼但忘記了,或者上述方法因某種原因無法奏效,您可以通過以下步驟重置 root 密碼。

步驟如下:

  1. 停止 MariaDB 服務:

    sudo systemctl stop mariadb
  2. 以安全模式啟動 MariaDB (跳過授權表):

    sudo mysqld_safe --skip-grant-tables &

    此命令會在后臺以不檢查權限的方式啟動 MariaDB。

  3. 免密登錄 MariaDB:

    sudo mysql -u root
  4. 重置密碼:

    進入 MariaDB 命令行后,執行以下命令來設置新密碼。同樣,請將 YourNewStrongPasswordHere 替換為您自己的強密碼。

    FLUSH PRIVILEGES;
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewStrongPasswordHere';
  5. 正常重啟 MariaDB:

    首先,停止以安全模式運行的 MariaDB 進程。您可能需要使用 kill 命令。

    sudo killall mysqld_safe
    sudo killall mysqld

    然后,正常啟動 MariaDB 服務。

    sudo systemctl start mariadb

現在,您應該可以使用新重置的密碼登錄 MariaDB 了。

總結

對于 Ubuntu 24.04 上新安裝的 MariaDB,root 用戶默認使用 unix_socket 認證,允許通過 sudo 免密登錄。通過 mysql_secure_installation 腳本設置密碼是最推薦的方法。如果需要,也可以手動更改或在忘記密碼時進行重置。我們強烈建議您為 root 用戶設置一個強密碼以保障數據庫的安全。

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

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

相關文章

Cloudflare CDN 中設置地域限制并返回特定界面

文章目錄 什么是CDN 什么是Cloudflare 注冊Cloudflare 賬號,添加域名、修改DNS并激活郵箱 阻止或允許特定國家或地區訪問 常見規則表達式 WAF自定義規則 + 自定義錯誤頁面 使用Workers腳本 什么是CDN CDN 是一種優化網站請求處理的機制。它是在用戶訪問網站 (服務器) 時用戶與…

Ubuntu高頻實用命令大全

Ubuntu系統中高頻實用命令 以下為Ubuntu系統中高頻實用命令的分類整理,涵蓋系統管理、文件操作、網絡配置等場景,每個命令附帶簡要說明: 系統信息與管理 uname -a 顯示系統內核版本、主機名等詳細信息。 lsb_release -a 查看Ubuntu發行版版本信息。 uptime 顯示系統運行時…

關于C#的編程基礎:數據類型與變量全解析

一.基本的數據類型 1.什么是數據類型 在編程語言中,數據類型(Data Type) 是對變量存儲的 “數據的種類” 的定義,它決定了: 變量可以存儲哪些值(例如整數、文本、布爾值)。這些值在內存中如何…

深入解析 Spring 獲取 XML 驗證模式的過程

關鍵要點Spring 的 XML 驗證模式:Spring 框架在加載 XML 配置文件時,會根據文件內容判斷使用 DTD(文檔類型定義)或 XSD(XML 模式定義)進行驗證。自動檢測機制:Spring 默認使用自動檢測&#xff…

復現《Local GDP Estimates Around the World》論文的完整指南

復現《Local GDP Estimates Around the World》論文的完整指南 1. 引言 1.1 論文概述 《Local GDP Estimates Around the World》是一篇重要的經濟地理學研究論文,作者提出了一種創新的方法來估計全球范圍內次國家層面的GDP數據。這項工作填補了全球經濟發展研究中子…

Sql注入 之sqlmap使用教程

一、安裝sqlmap 瀏覽器訪問SQLmap官網 即可下載工具;需要說明的是,SQLmap運行依賴于python環境,所以在下載使用前務必在電腦及終端上安裝好python環境。 通過網盤分享的文件:sqlmap-master.zip鏈接: https://pan.baidu.com/s/1YZi…

安寶特案例丨戶外通信機房施工革新:AR+作業流技術破解行業難題

在數字化浪潮席卷各行各業的今天,傳統戶外通信機房建設領域正經歷一場靜悄悄的變革。作為信息社會的“神經樞紐”,戶外機房的質量直接關系到通信網絡的穩定性,但長期以來,這一領域卻深受施工標準化不足、質量管控難、驗收追溯復雜…

在 CentOS 中安裝 MySQL 的過程與問題解決方案

MySQL 是一款廣泛使用的開源關系型數據庫管理系統,在 CentOS 系統中安裝 MySQL 是很多開發者和運維人員常做的工作。下面將詳細介紹安裝過程以及可能遇到的問題和解決方案。 一、安裝前的準備工作 在安裝 MySQL 之前,需要做好一些準備工作,…

阿里 Qwen3 四模型齊發,字節 Coze 全面開源,GPT-5 8 月初發布!| AI Weekly 7.21-7.27

📢本周AI快訊 | 1分鐘速覽🚀1?? 🧠 阿里 Qwen3 全系列爆發 :一周內密集發布四款新模型,包括 Qwen3-235B-A22B-Thinking-2507、Qwen3-Coder 和 Qwen3-MT,MMLU-Pro 成績超越 Claude Opus 4,百萬…

C語言第 9 天學習筆記:數組(二維數組與字符數組)

C語言第09天學習筆記:數組(二維數組與字符數組) 內容提要 數組 二維數組字符數組二維數組 定義 二維數組本質上是一個行列式組合,由行和列兩部分組成,屬于多維數組,通過行和列解讀(先行后列&…

使用OpenCV做個圖片校正工具

昨天有位兄臺給我發了個文件,是下面這個樣子的:那一雙小腳既沒有裹成三寸金蓮,又沒有黑絲,這圖片肯定不符合我的要求。我要的是這個樣子的好不好:讓他拿掃描儀重新給我規規矩矩掃一個發過來?他要能用掃描儀…

《不只是接口:GraphQL與RESTful的本質差異》

RESTful API憑借其與HTTP協議的天然融合,以資源為核心的架構理念,在過去十余年里構建了Web數據交互的基本秩序;而GraphQL的出現,以“按需獲取”為核心的查詢模式,打破了傳統的請求-響應邏輯,重新定義了前端…

博士招生 | 香港大學 招收人工智能和網絡安全方向 博士生

學校簡介香港大學創立于 1911 年,是香港歷史最悠久的高等學府,QS 2025 世界排名第 17 位。計算機科學學科在 QS 2025 學科排名中位列全球第 31 位、亞洲第 5 位。計算機系(Department of Computer Science)下設系統、人工智能、數…

Linux知識回顧總結----基礎IO

目錄 1. 理解“文件” 1.1 文件的定義 2. 回顧 C 語言的文件操作 2.1 文件操作 2.2 實現cat 2.3 可以實現打印的幾種方式 3. 系統文件的IO 3.2 使用系統的接口 3.3 內部的實現 3.4 重定向 4. 文件系統的內核結構 5. 緩沖區 5.1 是什么 5.2 為什么 5.3 有什么 5.4 見見…

網絡:基礎概念

網絡:基礎概念 在計算機發展過程中,最開始每個計算機時相互獨立的,后來人們需要用計算機合作處理任務,這就牽扯到了數據交換,所以最開始的網絡就誕生了。一開始,網絡都是局域網LAN,后來技術成熟…

圖像識別邊緣算法

文章目錄1. 基本概念2. 邊緣檢測原理邊緣類型:3. 常見邊緣檢測算法3.1 Sobel算子3.2 Canny邊緣檢測3.3 Laplacian算子4. Canny邊緣檢測詳細流程流程圖示例:詳細步驟說明:5. 邊緣檢測算法比較6. 參數調優建議Canny邊緣檢測參數:Sob…

【Java Web實戰】從零到一打造企業級網上購書網站系統 | 完整開發實錄(終)

🧪 測試與質量保證 🔍 全方位測試體系 我建立了企業級的全方位測試體系來確保系統質量: 🧪 測試金字塔模型 #mermaid-svg-u4I8UuUAyxJVjcqs {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill…

QT開發---網絡編程下

HTTP協議 HTTP(HyperText Transfer Protocol,超文本傳輸協議)是互聯網上應用最為廣泛的協議之一,用于客戶端和服務器之間的通信。默認端口80,傳輸層使用的是TCP協議特點無連接:HTTP協議是無連接的&#xff…

mac 蘋果電腦 Intel 芯片(Mac X86) 安卓虛擬機 Android模擬器 的救命稻草(下載安裝指南)

引言: 還在為你的Intel芯片MacBook(i5, i7, i9等)找不到合適的安卓虛擬機而發愁嗎?隨著Apple Silicon (M1/M2/M3) 芯片的普及,大量優秀的安卓模擬器(如Android Studio自帶的模擬器、網易MuMu等)…

C語言:順序表(上)

C語言:順序表(上) 1.順序表的介紹 2.順序表的實現 1.順序表的介紹 線性表是n個具有相同特性的數據元素的有限序列。 線性表是一種在實際中廣泛使用的數據結構,常見的線性表:順序表、鏈表、棧、隊列、字符串… 線性表在…