国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

Rocky Linux 9 源碼包安裝Mysql5.7

0
分享至


Rocky-Linux-9-源碼包安裝Mysql5.7

大家好,我是星哥,今天繼續(xù)來盤盤Rocky Linux 9系統(tǒng)。

對于那些尋求在 Rocky Linux 9 上從源碼編譯安裝 MySQL 5.7 的開發(fā)者和系統(tǒng)管理員來說,雖然 MySQL 5.7 已經(jīng)不再是最新的版本,但在某些特定場景下,例如兼容性需求或深度定制,源碼安裝仍然是不可或缺的選項。

為什么選擇源碼安裝?

通過源碼包安裝 MySQL 5.7 具有以下優(yōu)勢:

最大程度的定制化: 你可以根據(jù)自己的需求,在編譯時啟用或禁用特定功能,優(yōu)化性能。

解決依賴問題: 對于一些特定環(huán)境,預(yù)編譯包可能存在依賴沖突,源碼安裝可以更靈活地處理這些問題。

學(xué)習(xí)和調(diào)試: 編譯過程有助于深入理解 MySQL 的構(gòu)建和運行機(jī)制,方便進(jìn)行故障排除和性能調(diào)優(yōu)。


快速安裝

# 使用: # gitee: # wget https://gitee.com/funet8/Rocky-Linux-Shell/raw/main/shell/Rocky_Linux_9_Install_MySQL5_7.sh # sh Rocky_Linux_9_Install_MySQL5_7.sh # github: # wget https://raw.githubusercontent.com/funet8/Rocky-Linux-Shell/refs/heads/main/shell/Rocky_Linux_9_Install_MySQL5_7.sh # sh Rocky_Linux_9_Install_MySQL5_7.sh
功能介紹

功能:Rocky Linux 9系統(tǒng)中源碼包安裝 mysql5.7

mysql安裝的目錄:/data/app/mysql5.7/install

mysql數(shù)據(jù)庫目錄:/data/app/mysql5.7/data

mysql數(shù)據(jù)庫配置目錄:/data/app/mysql5.7/etc

mysql數(shù)據(jù)庫Binlog配置目錄: /data/app/mysql5.7/binlog

mysql端口為: 61570

mysql root密碼為: CQ1234567

0.定義變量

# --- 變量定義 --- MYSQL_USER="mysql" MYSQL_GROUP="mysql" # 打開MySQL-Community-Server官方下載頁面: https://downloads.mysql.com/archives/community/ # DOWNLOAD_URL="https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.44.tar.gz" DOWNLOAD_URL="http://js.funet8.com/rocky-linux/mysql/mysql-boost-5.7.44.tar.gz" MYSQL_DIR="/data/software/" Mysql_path='/data/app/mysql5.7' #mysql安裝的目錄 Mysql_app='/data/app/mysql5.7/install' #mysql數(shù)據(jù)庫目錄 Mysql_data='/data/app/mysql5.7/data' #mysql數(shù)據(jù)庫配置目錄 Mysql_etc='/data/app/mysql5.7/etc' #mysql數(shù)據(jù)庫binlog目錄 Mysql_binlog='/data/app/mysql5.7/binlog' MYSQL_PORT="61570" # 自定義端口 # server_id來唯一的標(biāo)識某個數(shù)據(jù)庫實例,并在鏈?zhǔn)交螂p主復(fù)制結(jié)構(gòu)中用它來避免sql語句的無限循環(huán) Server_Id='1' MYSQL_PassWord="CQ1234567"
1.創(chuàng)建用戶

groupadd mysql useradd -M -g mysql -s /sbin/nologin mysql
2.安裝依賴包

dnf install -y make gcc-c++ cmake bison  perl autoconf ncurses-devel openssl-devel libtirpc     mkdir /data/software/     cd /data/software/     wget http://js.funet8.com/rocky-linux/mysql/libtirpc-devel-1.3.3-9.el9.x86_64.rpm     wget http://js.funet8.com/rocky-linux/mysql/rpcgen-1.4-9.el9.x86_64.rpm     # 安裝依賴包     rpm -ivh libtirpc-devel-1.3.3-9.el9.x86_64.rpm     rpm -ivh rpcgen-1.4-9.el9.x86_64.rpm
3.安裝mysql

新建mysql目錄

mkdir -p /data/app/mysql5.7 /data/app/mysql5.7/install /data/app/mysql5.7/data /data/app/mysql5.7/etc /data/app/mysql5.7/binlog

下載mysql,并且安裝

cd /data/software/ wget http://js.funet8.com/rocky-linux/mysql/mysql-boost-8.0.39.tar.gz tar -zxvf mysql-boost-5.7.44.tar.gz cd mysql-5.7.44/      cmake -DCMAKE_INSTALL_PREFIX=/data/app/mysql5.7/install -DMYSQL_DATADIR=/data/app/mysql5.7/data -DMYSQL_UNIX_ADDR=/data/app/mysql5.7/etc/mysql.sock -DSYSCONFDIR=/data/app/mysql5.7/install -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_TCP_PORT=61570 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_BOOST=boost/boost_1_59_0/ make && make install
4.創(chuàng)建配置文件

vi /data/app/mysql5.7/etc/my.cnf

填寫如下配置

[client] default-character-set = utf8mb4 [mysqld] ### 基本屬性配置 port = 61570 datadir=/data/app/mysql5.7/data socket=/data/app/mysql5.7/etc/mysql.sock # 禁用主機(jī)名解析 skip-name-resolve # 默認(rèn)的數(shù)據(jù)庫引擎 default-storage-engine = InnoDB ### 字符集配置 character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4' ### GTID # server_id來唯一的標(biāo)識某個數(shù)據(jù)庫實例,并在鏈?zhǔn)交螂p主復(fù)制結(jié)構(gòu)中用它來避免sql語句的無限循環(huán) server_id = 1 # 為保證 GTID 復(fù)制的穩(wěn)定, 行級日志 binlog_format = row # 開啟 gtid 功能 gtid_mode = on # 保障 GTID 事務(wù)安全 # 當(dāng)啟用enforce_gtid_consistency功能的時候, # MySQL只允許能夠保障事務(wù)安全, 并且能夠被日志記錄的SQL語句被執(zhí)行, # 像create table ... select 和 create temporarytable語句, # 以及同時更新事務(wù)表和非事務(wù)表的SQL語句或事務(wù)都不允許執(zhí)行 enforce-gtid-consistency = true # 以下兩條配置為主從切換, 數(shù)據(jù)庫高可用的必須配置 # 開啟 binlog 日志功能 log_bin = /data/app/mysql5.7/binlog/mysql-bin # 開啟從庫更新 binlog 日志 log-slave-updates = on ### 慢查詢?nèi)罩?# 打開慢查詢?nèi)罩竟δ?slow_query_log = 1 # 超過2秒的查詢記錄下來 long_query_time = 2 # 記錄下沒有使用索引的查詢 log_queries_not_using_indexes = 1 slow_query_log_file = /data/app/mysql5.7/etc/slow-61570.log ### 自動修復(fù) # 記錄 relay.info 到數(shù)據(jù)表中 relay_log_info_repository = TABLE # 記錄 master.info 到數(shù)據(jù)表中 master_info_repository = TABLE # 啟用 relaylog 的自動修復(fù)功能 relay_log_recovery = on # 在 SQL 線程執(zhí)行完一個 relaylog 后自動刪除 relay_log_purge = 1 ### 數(shù)據(jù)安全性配置 # 關(guān)閉 master 創(chuàng)建 function 的功能 log_bin_trust_function_creators = off # 每執(zhí)行一個事務(wù)都強(qiáng)制寫入磁盤 sync_binlog = 1 # timestamp 列如果沒有顯式定義為 not null, 則支持null屬性 # 設(shè)置 timestamp 的列值為 null, 不會被設(shè)置為 current timestamp explicit_defaults_for_timestamp=true ### 優(yōu)化配置 # 優(yōu)化中文全文模糊索引 ft_min_word_len = 1 # 默認(rèn)庫名表名保存為小寫, 不區(qū)分大小寫 lower_case_table_names = 1 # 單條記錄寫入最大的大小限制 # 過小可能會導(dǎo)致寫入(導(dǎo)入)數(shù)據(jù)失敗 max_allowed_packet = 256M # 半同步復(fù)制開啟 #rpl_semi_sync_master_enabled = 1 #rpl_semi_sync_slave_enabled = 1 # 半同步復(fù)制超時時間設(shè)置 #rpl_semi_sync_master_timeout = 1000 # 復(fù)制模式(保持系統(tǒng)默認(rèn)) #rpl_semi_sync_master_wait_point = AFTER_SYNC # 后端只要有一臺收到日志并寫入 relaylog 就算成功 #rpl_semi_sync_master_wait_slave_count = 1 # 多線程復(fù)制 #slave_parallel_type = logical_clock #slave_parallel_workers = 4 ### 連接數(shù)限制 max_connections = 3000 # 驗證密碼超過20次拒絕連接 max_connect_errors = 20 # back_log值指出在mysql暫時停止回答新請求之前的短時間內(nèi)多少個請求可以被存在堆棧中 # 也就是說,如果MySql的連接數(shù)達(dá)到max_connections時,新來的請求將會被存在堆棧中 # 以等待某一連接釋放資源,該堆棧的數(shù)量即back_log,如果等待連接的數(shù)量超過back_log # 將不被授予連接資源 back_log = 500 open_files_limit = 65535 # 服務(wù)器關(guān)閉交互式連接前等待活動的秒數(shù) interactive_timeout = 3600 # 服務(wù)器關(guān)閉非交互連接之前等待活動的秒數(shù) wait_timeout = 3600 ### 內(nèi)存分配 # 指定表高速緩存的大小。每當(dāng)MySQL訪問一個表時,如果在表緩沖區(qū)中還有空間 # 該表就被打開并放入其中,這樣可以更快地訪問表內(nèi)容 table_open_cache = 1024 # 為每個session 分配的內(nèi)存, 在事務(wù)過程中用來存儲二進(jìn)制日志的緩存 binlog_cache_size = 2M # 在內(nèi)存的臨時表最大大小 tmp_table_size = 128M # 創(chuàng)建內(nèi)存表的最大大小(保持系統(tǒng)默認(rèn), 不允許創(chuàng)建過大的內(nèi)存表) # 如果有需求當(dāng)做緩存來用, 可以適當(dāng)調(diào)大此值 max_heap_table_size = 16M # 順序讀, 讀入緩沖區(qū)大小設(shè)置 # 全表掃描次數(shù)多的話, 可以調(diào)大此值 read_buffer_size = 1M # 隨機(jī)讀, 讀入緩沖區(qū)大小設(shè)置 read_rnd_buffer_size = 8M # 高并發(fā)的情況下, 需要減小此值到64K-128K sort_buffer_size = 1M # 每個查詢最大的緩存大小是1M, 最大緩存64M 數(shù)據(jù) query_cache_size = 64M query_cache_limit = 1M # 提到 join 的效率 join_buffer_size = 16M # 線程連接重復(fù)利用 thread_cache_size = 64 ### InnoDB 優(yōu)化 ## 內(nèi)存利用方面的設(shè)置 # 數(shù)據(jù)緩沖區(qū) innodb_buffer_pool_size=2G ## 日志方面設(shè)置 # 事務(wù)日志大小 innodb_log_file_size = 256M # 日志緩沖區(qū)大小 innodb_log_buffer_size = 4M # 事務(wù)在內(nèi)存中的緩沖 #innodb_log_buffer_size = 3M # 主庫保持系統(tǒng)默認(rèn), 事務(wù)立即寫入磁盤, 不會丟失任何一個事務(wù) innodb_flush_log_at_trx_commit = 1 # mysql 的數(shù)據(jù)文件設(shè)置, 初始100, 以10M 自動擴(kuò)展 innodb_data_file_path = ibdata1:10M:autoextend # 為提高性能, MySQL可以以循環(huán)方式將日志文件寫到多個文件 innodb_log_files_in_group = 3 ##其他設(shè)置 # 如果庫里的表特別多的情況,請增加此值 innodb_open_files = 800 # 為每個 InnoDB 表分配單獨的表空間 innodb_file_per_table = 1 # InnoDB 使用后臺線程處理數(shù)據(jù)頁上寫 I/O(輸入)請求的數(shù)量 innodb_write_io_threads = 8 # InnoDB 使用后臺線程處理數(shù)據(jù)頁上讀 I/O(輸出)請求的數(shù)量 innodb_read_io_threads = 8 # 啟用單獨的線程來回收無用的數(shù)據(jù) innodb_purge_threads = 1 # 臟數(shù)據(jù)刷入磁盤(先保持系統(tǒng)默認(rèn), swap 過多使用時, 調(diào)小此值, 調(diào)小后, 與磁盤交互增多, 性能降低) # innodb_max_dirty_pages_pct = 90 # 事務(wù)等待獲取資源等待的最長時間 innodb_lock_wait_timeout = 120 # 開啟 InnoDB 嚴(yán)格檢查模式, 不警告, 直接報錯 innodb_strict_mode=1 # 允許列索引最大達(dá)到3072 innodb_large_prefix = on [mysqldump] # 開啟快速導(dǎo)出 quick default-character-set = utf8mb4 max_allowed_packet = 256M [mysql] # 開啟 tab 補(bǔ)全 auto-rehash default-character-set = utf8mb4
5.mysql初始化

chown mysql.mysql -R /data/app/mysql5.7 # 初始化數(shù)據(jù)庫 /data/app/mysql5.7/install/bin/mysqld --defaults-file=/data/app/mysql5.7/etc/my.cnf --initialize --user=mysql > /data/app/mysql5.7/etc/mysql_install.log  #mysql初始密碼 mysql_passwd_init=`cat ${Mysql_etc}/mysql_install.log | grep  password |awk '{print $NF}'` # 啟動mysql /data/app/mysql5.7/install/support-files/mysql.server start 修改密碼: /data/app/mysql5.7/install/bin/mysqladmin -u root -hlocalhost -P61570 -p password CQ1234567 # 關(guān)閉mysql /data/app/mysql5.7/install/support-files/mysql.server stop 再次執(zhí)行: chown mysql.mysql -R /data/app/mysql5.7
6.開機(jī)啟動

使用 rc.local 作為啟動文件。

echo "添加Mysql5.7開機(jī)自啟動腳本" >> /etc/rc.local echo "nohup ${Mysql_app}/bin/mysqld_safe --defaults-file=${Mysql_etc}/my.cnf --user=${MYSQL_USER} > /dev/null 2>&1 &">> /etc/rc.local #啟用rc-local systemctl enable rc-local systemctl start rc-local chmod +x /etc/rc.d/rc.local
7.添加環(huán)境變量

echo '#mysql5.7' >> /etc/profile echo "export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/data/app/mysql5.7/install/bin" >> /etc/profile source /etc/profile mysql -V
8.開啟防火墻

firewall-cmd --zone=public --add-port=61570/tcp --permanent firewall-cmd --reload # 查看所有端口 firewall-cmd --zone=public --list-ports
9.新建一個管理員賬號

創(chuàng)建一個名字star賬號,密碼為 PASs5566a ,管理員權(quán)限的賬號

#  /data/app/mysql5.7/install/bin/mysql -u root -h localhost -P61570 -p'CQ1234567' # CREATE USER 'star'@'%' IDENTIFIED BY 'PASs5566a'; # GRANT  all privileges ON * . * TO 'star'@'%' IDENTIFIED BY 'PASs5566a';  # GRANT ALL PRIVILEGES ON * . * TO 'star'@'%' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; # flush privileges;
總結(jié)

以上就是通過源碼包安裝 MySQL 5.7 雖然的步驟,讓你對 MySQL 的配置和運行有更深入的理解,并能滿足特定的定制化需求。

在生產(chǎn)環(huán)境中,請務(wù)必關(guān)注安全性,定期備份數(shù)據(jù),并根據(jù)實際負(fù)載對 MySQL 進(jìn)行性能優(yōu)化。

如果你在安裝過程中遇到任何問題,歡迎在評論區(qū)留言交流!

寫文不易,如果你都看到了這里,請點個贊和在看,分享給更多的朋友;也別忘了關(guān)注星哥玩云!這里有滿滿的干貨分享,還有輕松有趣的技術(shù)交流~點個贊、分享給身邊的小伙伴,一起成長,一起玩轉(zhuǎn)技術(shù)世界吧!

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點推薦
內(nèi)蒙“女色虎”落馬,靠陪睡高官上位,大肆斂財為了整容

內(nèi)蒙“女色虎”落馬,靠陪睡高官上位,大肆斂財為了整容

文史旺旺旺
2024-10-31 12:26:20
29.98萬起!全新魏牌藍(lán)山智能進(jìn)階版上市,要和問界M7掰手腕?

29.98萬起!全新魏牌藍(lán)山智能進(jìn)階版上市,要和問界M7掰手腕?

科學(xué)技術(shù)宅
2025-12-22 21:44:03
關(guān)系藏不住了!佟麗婭現(xiàn)身言承旭演唱會,才發(fā)現(xiàn)原來一切早有征兆

關(guān)系藏不住了!佟麗婭現(xiàn)身言承旭演唱會,才發(fā)現(xiàn)原來一切早有征兆

蕭栝記錄風(fēng)土人情
2025-12-23 20:02:58
孫中山預(yù)言,中國若是遷都到這3座城,則有望稱霸亞洲,是哪三座

孫中山預(yù)言,中國若是遷都到這3座城,則有望稱霸亞洲,是哪三座

抽象派大師
2025-12-23 01:27:51
江蘇富二代“不務(wù)正業(yè)”,折騰出3家龍頭企業(yè),如今輕松年入600億

江蘇富二代“不務(wù)正業(yè)”,折騰出3家龍頭企業(yè),如今輕松年入600億

云景侃記
2025-12-24 19:47:40
歐陽娜娜好肥嫩

歐陽娜娜好肥嫩

情感大頭說說
2025-12-25 07:42:11
英超球員2025年身價漲幅榜:沃爾特馬德暴漲6250萬歐第1

英超球員2025年身價漲幅榜:沃爾特馬德暴漲6250萬歐第1

懂球帝
2025-12-25 03:33:08
回爐重造,23年31號秀詹姆斯-納吉加入貝勒大學(xué)并將出戰(zhàn)NCAA聯(lián)賽

回爐重造,23年31號秀詹姆斯-納吉加入貝勒大學(xué)并將出戰(zhàn)NCAA聯(lián)賽

懂球帝
2025-12-25 09:15:12
聯(lián)盟官方:國王后衛(wèi)威斯布魯克因假摔 被處以2000美元罰款

聯(lián)盟官方:國王后衛(wèi)威斯布魯克因假摔 被處以2000美元罰款

北青網(wǎng)-北京青年報
2025-12-25 08:39:25
小區(qū)樓上天天晚上都有女的大聲叫。。。

小區(qū)樓上天天晚上都有女的大聲叫。。。

微微熱評
2025-12-24 00:26:04
不再沉默,馬杜羅告知190國,中方原油遭搶掠,委方主動對美出擊

不再沉默,馬杜羅告知190國,中方原油遭搶掠,委方主動對美出擊

史料布籍
2025-12-24 23:22:22
林詩棟新教練到位!王勵勤的“王牌”能帶他沖破天花

林詩棟新教練到位!王勵勤的“王牌”能帶他沖破天花

眼界看視野
2025-12-24 20:48:02
祁發(fā)寶上將亮相,六排勛章胸前掛,淡然一笑盡顯英雄本色

祁發(fā)寶上將亮相,六排勛章胸前掛,淡然一笑盡顯英雄本色

老特有話說
2025-12-23 21:35:49
庫里送祝福,科爾談格林?jǐn)偱?!美媒看好勇士勝獨行俠,3點成關(guān)鍵

庫里送祝福,科爾談格林?jǐn)偱?!美媒看好勇士勝獨行俠,3點成關(guān)鍵

魚崖大話籃球
2025-12-25 09:08:13
殺發(fā)小妻兒3人,崔某告訴獄友過幾天就放他走,認(rèn)為1命換3命不值

殺發(fā)小妻兒3人,崔某告訴獄友過幾天就放他走,認(rèn)為1命換3命不值

江山揮筆
2025-12-24 16:03:14
云南一職校學(xué)生提出“想殺豬”,校長和老師們湊錢安排,學(xué)生按豬、分肉、做菜全程參與

云南一職校學(xué)生提出“想殺豬”,校長和老師們湊錢安排,學(xué)生按豬、分肉、做菜全程參與

極目新聞
2025-12-24 13:21:57
20歲東莞少年王帥生命最后12分鐘:電梯記錄赴死前的掙扎

20歲東莞少年王帥生命最后12分鐘:電梯記錄赴死前的掙扎

調(diào)侃國際觀點
2025-12-24 21:46:58
63歲大爺和37歲寡婦搭伙,女方什么也不要,新婚當(dāng)夜提了1個要求

63歲大爺和37歲寡婦搭伙,女方什么也不要,新婚當(dāng)夜提了1個要求

詭譎怪談
2025-03-25 22:46:25
南博事件升級!已敲定6點定論,《江南春》送上拍賣場另有買家

南博事件升級!已敲定6點定論,《江南春》送上拍賣場另有買家

火山詩話
2025-12-24 10:55:06
倪妮太豪!在北京家里過圣誕,意外曝光內(nèi)景,難怪她看不上馮紹峰

倪妮太豪!在北京家里過圣誕,意外曝光內(nèi)景,難怪她看不上馮紹峰

心靜物娛
2025-12-24 11:19:19
2025-12-25 09:52:49
星哥說事 incentive-icons
星哥說事
星哥跟你說說工作生活的那些事
255文章數(shù) 199關(guān)注度
往期回顧 全部

科技要聞

老板監(jiān)視員工微信只需300元

頭條要聞

路透社稱中國造出EUV光刻機(jī) "手搓"EUV光刻機(jī)難點披露

頭條要聞

路透社稱中國造出EUV光刻機(jī) "手搓"EUV光刻機(jī)難點披露

體育要聞

26歲廣西球王,在質(zhì)疑聲中成為本土得分王

娛樂要聞

懷孕增重30斤!闞清子驚傳誕一女夭折?

財經(jīng)要聞

美國未來18個月不對中國芯片加額外關(guān)稅

汽車要聞

“運動版庫里南”一月份亮相???或命名極氪9S

態(tài)度原創(chuàng)

時尚
旅游
房產(chǎn)
游戲
公開課

對不起周柯宇,是陳靖可先來的

旅游要聞

【圖集】快來看,觀山湖公園的“小精靈”

房產(chǎn)要聞

硬核!央企??谝痪€江景頂流紅盤,上演超預(yù)期交付!

日本玩家Switch嚴(yán)重鼓大包仍能游玩 這還能用?

公開課

李玫瑾:為什么性格比能力更重要?

無障礙瀏覽 進(jìn)入關(guān)懷版