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

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

一、安裝前的準備工作

在安裝 MySQL 之前,需要做好一些準備工作,以確保安裝過程順利進行。

  • 檢查系統版本:確認 CentOS 的版本,不同版本在安裝 MySQL 時可能會有一些差異。可以使用 cat /etc/centos-release 命令查看系統版本。
  • 更新系統:運行? yum -y update? 命令更新系統軟件包,保證系統處于最新狀態,減少兼容性問題。
  • 檢查是否已安裝 MySQL 相關軟件:使用? ?rpm -qa | grep mysql? 命令查看,如果有安裝則使用? ?rpm -e --nodeps? ?軟件名命令卸載,避免沖突。

二、MySQL 的安裝過程

(一)選擇安裝方式

MySQL 在 CentOS 上有多種安裝方式,常用的有通過 yum 源安裝和源碼編譯安裝。這里推薦使用 yum 源安裝,操作相對簡單。

(二)添加 MySQL yum 源

  • 訪問 MySQL 官網(https://dev.mysql.com/downloads/repo/yum/),選擇適合 CentOS 版本的 yum 源 rpm 包。
  • 下載 rpm 包:可以使用 wget 命令下載,例如 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm(具體鏈接根據實際情況選擇)。
  • 安裝 rpm 包:運行? rpm -ivh mysql80-community-release-el7-3.noarch.rpm? ,安裝完成后會在/etc/yum.repos.d/目錄下生成相關的 yum 源配置文件。

(三)選擇 MySQL 版本

如果需要安裝特定版本的 MySQL,可以修改 yum 源配置文件。例如,對于 MySQL 5.7,編輯/etc/yum.repos.d/mysql-community.repo文件,將 MySQL 8.0 的 enabled 設置為 0,將 MySQL 5.7 的 enabled 設置為 1。

(四)安裝 MySQL

運行? yum -y install mysql-community-server? 命令開始安裝 MySQL。安裝過程中,yum 會自動處理依賴關系。

三、MySQL 的配置與啟動

(一)啟動 MySQL 服務

安裝完成后,使用systemctl start mysqld命令啟動 MySQL 服務。可以通過? systemctl status mysqld? 命令查看服務狀態,如果顯示 “active (running)” 則表示啟動成功。

(二)設置開機自啟動

為了讓 MySQL 在系統重啟后自動啟動,運行? systemctl enable mysqld? 命令。

(三)獲取初始密碼

MySQL 安裝完成后,會生成一個初始密碼,存放在/var/log/mysqld.log文件中。可以使用? grep 'temporary password' /var/log/mysqld.log? ?命令查看初始密碼。

(四)登錄 MySQL 并修改初始密碼

  • 使用初始密碼登錄? ?MySQL:mysql -u root -p,然后輸入初始密碼。
  • 修改密碼:登錄后,需要立即修改初始密碼,否則無法執行其他操作。可以使用ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼';命令修改密碼。注意,MySQL 對密碼有一定要求,通常需要包含大小寫字母、數字和特殊字符。

四、可能遇到的問題及解決方案

(一)yum 源安裝時提示 “找不到包”

  • 原因:可能是 yum 源配置不正確或者沒有啟用對應的 MySQL 版本。
  • 解決方案:檢查/etc/yum.repos.d/mysql-community.repo文件中對應的 MySQL 版本的 enabled 是否設置為 1,然后運行yum clean all和yum makecache命令刷新 yum 緩存。

(二)啟動 MySQL 服務失敗

  • 原因:可能是端口被占用、配置文件錯誤等。
  • 解決方案:
    • 檢查端口是否被占用:使用? netstat -tunlp | grep 3306? 命令查看 3306 端口是否被占用,如果被占用可以修改 MySQL 配置文件中的端口或者停止占用端口的進程。
    • 查看錯誤日志:/var/log/mysqld.log文件中會記錄啟動失敗的原因,根據日志信息進行排查。

(三)初始密碼無法登錄

  • 原因:可能是初始密碼獲取錯誤或者密碼已過期。
  • 解決方案:
    • 重新獲取初始密碼:再次運行? grep 'temporary password' /var/log/mysqld.log? 命令確認。
    • 如果密碼過期,可以修改 MySQL 配置文件/etc/my.cnf,在 [mysqld] 部分添加? skip-grant-tables,然后重啟 MySQL 服務systemctl restart mysqld,此時可以無密碼登錄 MySQL,登錄后修改密碼,修改完成后刪除skip-grant-tables并重啟服務。

(四)遠程連接 MySQL 失敗

  • 原因:默認情況下,MySQL 只允許本地登錄,沒有開啟遠程連接權限。
  • 解決方案:
    • 登錄 MySQL 后,執行GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密碼' WITH GRANT OPTION;命令授予 root 用戶遠程連接權限,其中%表示允許所有 IP 連接,也可以指定具體的 IP。
    • 執行FLUSH PRIVILEGES;命令刷新權限。
    • 檢查防火墻是否開放 3306 端口:如果使用 firewalld 防火墻,運行firewall-cmd --zone=public --add-port=3306/tcp --permanent命令開放 3306 端口,然后運行firewall-cmd --reload命令重新加載防火墻配置。

通過以上步驟,應該可以在 CentOS 系統中成功安裝并配置 MySQL。如果在安裝過程中遇到其他問題,可以查閱 MySQL 官方文檔或者相關技術論壇尋求幫助。

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

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

相關文章

阿里 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個具有相同特性的數據元素的有限序列。 線性表是一種在實際中廣泛使用的數據結構,常見的線性表:順序表、鏈表、棧、隊列、字符串… 線性表在…

GPT - 5被曝將在8月初發布!并同步推出mini、nano版

據《TheVerge》最新報道,OpenAI 正準備在 8 月發布新版本旗艦大模型 GPT-5,如果順利的話發布節點最早會在 8 月初。同時,下個月發布 GPT-5 時,還會一并推出 mini(小型)和 nano(微型)…

【Linux操作系統】簡學深悟啟示錄:Linux環境基礎開發工具使用

文章目錄1.軟件包管理器yum2.Linux編輯器vim2.1 三模式切換2.2 正常模式2.3 底行模式2.4 可視化模式2.5 vim 配置3.Linux編譯器gcc/g3.1 預處理3.2 編譯3.3 匯編3.4 連接3.5 函數庫4.Linux自動化構建工具Makefile5.Linux調試器gdb希望讀者們多多三連支持小編會繼續更新你們的鼓…

八大神經網絡的區別

神經網絡名稱全稱/修正名稱主要作用核心特點典型應用場景CINICNN(卷積神經網絡)處理圖像、視頻等空間數據,提取局部特征。使用卷積核、池化操作;擅長平移不變性。圖像分類、目標檢測、人臉識別。RINIRNN(循環神經網絡&…

從 SQL Server 到 KingbaseES V9R4C12,一次“無痛”遷移與深度兼容體驗實錄

#數據庫平替用金倉 #金倉產品體驗官 摘要:本文以體驗項目案例為主線,從下載安裝、數據類型、T-SQL、JDBC、性能基準、踩坑回退六大維度,全景驗證 KingbaseES V9R4C12 對 SQL Server 的“零改造”兼容承諾;并給出 TPCH 100G 性能對…

EasyPlayer播放器系列開發計劃2025

EasyPlayer系列產品發展至今,已經超過10年,從最早的EasyPlayer RTSP播放器,到如今維護的3條線:EasyPlayer-RTSP播放器:Windows、Android、iOS;EasyPlayerPro播放器:Windows、Android、iOS&#…

通信名詞解釋:I2C、USART、SPI、RS232、RS485、CAN、TCP/IP、SOCKET、modbus等

以下內容參考AI生成內容1. I2C(Inter-Integrated Circuit,集成電路間總線)定義:由飛利浦(現恩智浦)開發的短距離串行通信總線,用于芯片級設備間的低速數據傳輸。工作原理:采用兩根信…

bash的特性-常見的快捷鍵

一、前言在 Linux Shell 編程和日常使用中,Bash 快捷鍵 是提升命令行操作效率的利器。熟練掌握這些快捷鍵,不僅可以節省大量輸入時間,還能顯著提升你在終端環境下的操作流暢度。本文將帶你全面了解 Bash 中常用的快捷鍵,包括&…

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

🎨 核心功能設計 👤 用戶管理系統 用戶管理是整個系統的基礎,我設計了完整的用戶生命周期管理: 🔐 用戶注冊流程 #mermaid-svg-D0eUHWissjNhkqlB {font-family:"trebuchet ms",verdana,arial,sans-serif;fon…