在centOS源碼編譯方式安裝MySQL5.7

一、前言

在生產環境中部署數據庫時,很多人會選擇直接使用 yum/apt 包管理器 安裝 MySQL,這樣簡單快速,但缺點是版本受限,靈活性不足。對于需要指定版本、啟用特定編譯參數或優化的場景,源碼編譯安裝 MySQL 就顯得非常必要。

本文將以 CentOS 7 為例,演示如何從源碼編譯安裝 MySQL 5.7,包括環境準備、依賴安裝、源碼編譯、初始化配置以及服務啟動等完整流程。

二、安裝準備

安裝包自行到官網下載或其他網站下載。

安裝包上傳路徑我們選擇/usr/local,如圖:

(1)解壓安裝包

將mysql解壓到/usr/local/,執行如下命令:

tar -zxvf mysql-5.7.44-el7-x86_64.tar.gz

將mysql-5.7.44-el7-x86_64目錄改名為mysql

mv mysql-5.7.44-el7-x86_64 mysql

(2)安裝流程/步驟

由于MySQL 服務進程一般不會用 root 用戶直接運行,而是以一個專門的 mysql 用戶來管理,保證安全性。

cat /etc/group | grep mysql ?-- 出現 mysql : x : 490 : 即為存在組
cat /etc/passwd | grep mysql -- 出現mysql:x:496:490::/home/mysql:/bin/bash 即為存在用戶

不存在則添加

groupadd mysql
useradd -r -g mysql mysql

創建文件夾:軟件放 /usr/local/mysql數據放 /data/mysql,

local下創建mysql(已有可不創建),根目錄創建data/mysql

sudo mkdir -p /usr/local/mysql
sudo chown -R mysql:mysql /usr/local/mysql# 在根目錄下新建 data 目錄(如果還沒有)
sudo mkdir -p /data/mysql# 修改權限為 mysql 用戶
sudo chown -R mysql:mysql /data/mysql

準備就緒后,執行初始化mysql,會隨機生成mysql的root密碼。及時復制保存隨機密碼。

/usr/local/mysql/bin/mysqld --initialize --user=mysql \--basedir=/usr/local/mysql \--datadir=/data/mysql

如果不想隨機生成密碼,則執行以下命令,后續需要自行設置密碼。建議直接隨機密碼后續修改即可。

/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql \--basedir=/usr/local/mysql \--datadir=/data/mysql

至此,安裝算是完成了,但還需要做各種配置。

(3)系統設置和配置文件修改

初始化啟動腳本開機初始化目錄

cp ./support-files/mysql.server /etc/init.d/mysqldchmod +x /etc/init.d/mysqld

修改配置文件,配置文件默認在/etc/my.cnf,如果沒有則創建。

vim /etc/my.cnf

配置文件內容:

[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql-error.log
pid-file=/data/mysql/mysql.pid

如圖:

再次確保目錄權限正確:

chown -R mysql:mysql /data/mysql

啟動mysql:

service mysqld start

如出現以上圖中內容,則表示mysql已經啟動成功。

進一步驗證:

ps -ef | grep mysqld

測試開機自啟動:

# 重啟服務測試
service mysqld restart# 或者查看是否開機自啟
chkconfig --list mysqld

如圖則表示可以開機自啟動了

(4)其他注意事項或配置

登錄mysql

# 如果使用 --initialize
/usr/local/mysql/bin/mysql -u root -p# 使用 --initialize-insecure 不需要密碼
/usr/local/mysql/bin/mysql -u root

登錄后如圖:

到這里,安裝就完成了。需要修改隨機密碼,則執行下面命令:

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密碼';

開放遠程訪問和連接請參考:

https://blog.csdn.net/ts977/article/details/145884849?spm=1001.2014.3001.5501

設置自動備份請參考:

https://blog.csdn.net/ts977/article/details/144748311?spm=1001.2014.3001.5501

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

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

相關文章

探討Hyperband 等主要機器學習調優方法的機制和權衡

本篇文章Master Hyperband — An Efficient Hyperparameter Tuning Method in Machine Learning深入探討了Hyperband這一高效的超參數調優方法。文章的技術亮點在于其結合了多臂老虎機策略和逐次減半算法,能夠在大搜索空間中快速剔除表現不佳的配置,從而…

Mysql:InnoDB 關鍵特性

目錄 一、插入緩沖(Change Buffer)→ 快遞驛站的 “臨時存放區” 二、兩次寫(Double Write)→ 重要文件的 “備份存檔” 三、自適應哈希索引(AHI)→ 圖書館的 “熱門書快捷查找區” 四、異步 IO&#x…

STM32-----SPI

SPI簡介SCK:和I2C中SCL的時鐘線一個作用,都是在高電平拿出數據,在低電平寫數據MOSI:主機輸出從機輸入MISO:主機輸入從機輸出,只有當對應從機的SS為低電平,從機的MISO引腳才能設置推挽輸出,當從機SS為高電平時&#xff…

華為考試:HCIE數通考試難度分析

隨著信息技術的飛速發展,網絡技術已成為支撐各行各業運轉的重要基礎,市場對高水平網絡技術人才的需求持續增長。HCIE作為華為認證體系中的最高級別認證,代表了網絡技術領域的專業頂尖水平。本文將對HCIE數通認證的考試內容、難度及備考策略進…

一些常用的激活函數及繪圖

深度網絡的一些常用激活函數,并通過matplot繪制出來: import matplotlib.pyplot as plt import numpy as npdef relu(x):return np.maximum(0, x)def leaky_relu(x, alpha0.01):return np.where(x > 0, x, alpha * x)def gelu(x):return 0.5 * x * (1…

AE蘋果手機iPhone 17展示動畫片頭模板 App Promo Phone 17 Pro

專為 App 發布會、電商促銷、新品宣傳 打造的 iPhone 17 Pro 動畫展示 AE 模板。 4K 超清分辨率 26 張可替換照片位,無需第三方插件,拖拽即可輸出專業級手機宣傳片。 核心亮點 4K 超清:38402160 分辨率,大屏投放與社媒高清壓縮無…

基于Python的云原生TodoList Demo 項目,驗證云原生核心特性

以下是一個基于 Python 的云原生 TodoList Demo 項目,涵蓋 容器化、Kubernetes 編排、CI/CD、可觀測性、彈性擴縮容 等核心云原生特性,代碼簡潔且附詳細操作指南,適合入門學習。項目概覽 目標:實現一個支持增刪改查(CR…

go 日志的分裝和使用 Zap + lumberjack

自帶的log無法滿足 按大小輪轉 ,按天數清理舊日志 ,自動壓縮 ,限制備份數量 ,防止磁盤寫滿 ,生產環境推薦 等 使用 Zap lumberjack package mainimport ("go.uber.org/zap""go.uber.org/zap/zapcore&q…

【.Net技術棧梳理】01-核心框架與運行時(CLR)

文章目錄1 .NET Runtime(CLR-公共語言運行時)1.1 中間語言 IL1.1.1 從源代碼到通用中間語言(IL)1.1.2 運行時加載:CLR登場1.1.3 核心步驟:即時編譯 (JIT Compilation)1.1.4 執行與內存管理(GC&a…

Claude Code 平替:OpenAI發布 Codex CLI ,GPT-5 國內直接使用

openai推出的命令行編程工具codex已經可以使用最新 GPT-5 模型,擁有可媲美 Claude Code 的 AI 編碼能力。本文將指導你在 Windows 系統上部署原生的 Codex CLI 程序,并接入超低價中轉 API,讓你在國內直接用上超高性價比的 OpenAI Codex CLI 應…

在VS2022的WPF仿真,為什么在XAML實時預覽點擊 ce.xaml頁面控件,卻不會自動跳轉到具體代碼,這樣不方便我修改代碼,

在VS2022的WPF仿真,為什么在XAML實時預覽點擊 WpfApp1\FunctionalModule\08Replace\Replace.xaml頁面控件,卻不會自動跳轉到具體代碼,這樣不方便我修改代碼,

Git Bash 別名

有些常用的指令參數非常多,每次都要輸入好多參數,我們可以使用別名。Linux 系統中很多 shell,包括 bash,sh,zsh,dash 和 korn 等,不管哪種 shell 都會有一個 .bashrc 的隱藏文件,它就…

Centos7部署ceph存儲

一、準備5臺centos7主機 node節點雙網卡&#xff08;1個內部檢測&#xff0c;1個外部使用&#xff09;node節點都添加新網卡關閉防火墻和上下文都需要添加hosts文件都需要cat > /etc/hosts << EOF > 127.0.0.1 localhost localhost.localdomain localhost4 loca…

2025.9.10總結

今日感悟&#xff1a;刷到00后下班去菜市場撿菜的熱點視頻&#xff0c;確實挺有意思&#xff0c;不得不說&#xff0c;又省錢又好玩。雖然每天晚上能免費領個25塊錢的水果回去&#xff0c;但確實沒有什么新鮮感了。別人下班還能撿撿菜放松下&#xff0c;我下班&#xff0c;除了…

【數據結構與算符Trip第2站】稀疏數組

稀疏sparsearray數組 什么是稀疏數組&#xff1f; 稀疏數組是一種特殊的數據結構&#xff0c;用于高效存儲和表示大部分元素為零&#xff08;或默認值&#xff09;的數組。它通過只存儲非零元素的位置和值來節省內存空間。是一種壓縮數組。 實現原理 在Go語言中&#xff0c;稀疏…

Sub-GHz無線收發單片機,低功耗物聯網通信的硬件“基石”

隨著物聯網應用持續向規模化部署、廣域化覆蓋與高效化協同邁進&#xff0c; 作為IoT終端設備實現無線交互的核心通信單元之一——Sub-GHz無線收發單片機&#xff08;Sub-GHz射頻收發芯片與單片機高度集成&#xff09;已成為系統設計中進一步簡化外圍元件數量、縮小硬件體積、降…

用Typescript 的方式封裝Vue3的表單綁定,支持防抖等功能

在 Vue3 中結合 TypeScript 封裝表單綁定方案時&#xff0c;需要綜合考慮類型安全、功能擴展性和開發體驗。以下是一個包含防抖功能、支持多種表單控件、具備完整類型推導的封裝方案&#xff0c;全文約 2300 字&#xff1a; 方案設計思路 組合式函數封裝&#xff1a;使用 Vue3 …

中悅大華通過訂單日記實現流程重構之路

一、客戶背景 安徽中悅大華高速流體機械有限公司&#xff0c;成立于2023年&#xff0c;位于安徽省宣城市&#xff0c;是一家以從事電子設備制造為主的企業&#xff0c;在多年的商業經營中已成為業界翹楚。 在業務不斷壯大的過程中&#xff0c;面臨生產協作效率低&#xff0c;庫…

【Springboot】介紹啟動類和啟動過程

【Springboot】介紹啟動類和啟動過程【一】Spring Boot 啟動類的注解【1】核心注解&#xff1a;SpringBootApplication&#xff08;1&#xff09;?SpringBootConfiguration?&#xff1a;Spring容器會從該類中加載Bean定義&#xff08;2&#xff09;?EnableAutoConfiguration…

Gears實測室:第一期·音游跨設備性能表現與工具價值實踐

在音游品類中&#xff0c;《跳舞的線》以 “音樂與操作節奏深度綁定” 的玩法特性&#xff0c;對設備性能提出了特殊要求 —— 穩定的幀率與低延遲的渲染響應&#xff0c;直接影響玩家對音符時機的判斷&#xff0c;一旦出現卡頓或幀波動&#xff0c;易導致操作失誤&#xff0c;…