Linux系統環境下MySQL資料庫源代碼的安裝

来源:https://www.cnblogs.com/ttj57/archive/2020/06/28/13203561.html
-Advertisement-
Play Games

Linux系統環境下MySQL資料庫源代碼的安裝 基本環境:CentOS Linux release 7.8.2003 (Core)、MySQL5.6 一、 安裝環境準備 若要在Linux系統下進行Mysql源碼安裝,需要檢查系統是否具備編譯源碼的工具和庫:gcc、 gcc-c++、cmake,為方 ...


Linux系統環境下MySQL資料庫源代碼的安裝

基本環境:CentOS Linux release 7.8.2003 (Core)、MySQL5.6

一、      安裝環境準備

若要在Linux系統下進行Mysql源碼安裝,需要檢查系統是否具備編譯源碼的工具和庫:gcc、 gcc-c++、cmake,為方便後期MySQL使用,還可安裝以下工具:、ncurses-devel、perl、"Development tools" "Desktop Platform Development" "Server Platform Development"

  1. 使用命令rpm –qa |grep gcc查看系統是否安裝gcc

 

如未明確告知是否安裝,還可通過命令which gcc查看是否安裝:

 

如未安裝,可直接使用命令yun install gcc安裝

  1. 使用命令rpm –qa |grep gcc-c++查看系統是否安裝gcc-c++

 

這裡提示未安裝gcc-c++,可使用命令yum install gcc-c++進行安裝,然後在安裝提醒中選擇預設或輸入y,點擊enter確定安裝,當出現一下內容時則表示安裝成功:

 

  1. 使用相同流程進行其他工具的安裝。
  2. 提前創建資料庫目錄、mysql用戶,並修改數據目錄的屬主

[root@localhost ~]# mkdir -p /mydata/data

[root@localhost /]# ls -ld mydata/

drwxr-xr-x. 3 root root 17 Jun 19 16:35 mydata/

[root@localhost ~]# useradd -s /sbin/nologin mysql

[root@localhost ~]# ls -l /sbin/nologin

-rwxr-xr-x. 1 root root 7176 Apr  1 12:51 /sbin/nologin

[root@localhost ~]# chown -R mysql.mysql /mydata/data/

[root@localhost ~]# ls -ld /mydata/data

drwxr-xr-x. 2 mysql mysql 6 Jun 19 15:56 /mydata/data

二、      安裝MySQL

  1. MySQL源代碼安裝包獲取:[root@localhost ~]#wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37.tar.gz

下載完成後可在當前目錄查看到安裝包

 

  1. 使用命令tar –zxf mysql-5.6.37.tar.gz –C / usr/local解壓安裝包至目錄/usr/local

 

  1. 使用cmake配置安裝,進入目錄/usr/local/ mysql-5.6.37輸入命令cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data/ -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci進行安裝配置,時間較長,需耐心等待,當出現以下場景時,表示已經編譯完成:

 

  1. 輸入make進行編譯,當進度為100%時表示編譯完成:

 

  1. 輸入make install進行最後安裝,當出現以下場景時表示安裝完成:

 

三、      MySQL資料庫基本配置

  1. 資料庫初始化,進入目錄/usr/local/mysql/scripts/,輸入命令./mysql_install_db --user=mysql --basedir=/usr/local/ mysql/ --datadir=/mydata/data/

 

 

  1. 切換至目錄/usr/local/mysql/support-files/,複製MySQL服務啟動腳本,修改相關許可權

 

  1. 設置MySQL開機啟動

[root@centos65 support-files]# chkconfig --add mysqld

[root@centos65 support-files]# chkconfig --list mysqld

 

  1. 優化MySQL命令的執行路徑,在/etc/profile文件末尾添加如下兩行:

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH 

export PATH

 

添加完成後保存退出編輯,執行命令source /etc/profile使配置生效

  1. 使用命令cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf複製MySQL配置文件

 

使用命令vi /etc/my.cnf編輯配置文件,在文件末尾添加以下配置:

innodb_file_per_table = 1

datadir = /mydata/data

port = 3306

user = mysql

server_id = 1

socket = /tmp/mysql.sock

編輯完成保存退出

 

  1. 使用命令service mysqld restart啟動MySQL服務

 

    使用命令netstat -antp | grep mysqld可查看MySQL狀態

四、      MySQL資料庫的使用

  1. 第一次啟動MySQL時需要進行root賬戶密碼設置

輸入命令/usr/local/mysql/bin/mysql_secure_installation,設置自定義密碼

 

  1. 使用命令mysql -uroot –p,輸入密碼登錄MySQL

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 今天準備在 ubuntu 伺服器裡面安裝 nodejs 版本,ubuntu 18.04 倉庫 nodejs 預設是 8.x 版本。 1. 通過 apt 安裝 nodejs 在 Ubuntu 18.04 的預設倉庫包含了一個 Node.js 的版本,截至當前,該倉庫的 node.js 版本是 8.10 ...
  • 痞子衡的技術交流群里經常有群友提問: i.MXRT中的FlexSPI驅動API到底怎麼用啊?這個問題已經出現過好幾次了,本來痞子衡不打算專門為這個寫文章的,因為這部分內容在晶元手冊System Boot章節里的最後一節ROM APIs里其實介紹得非常詳細了,但是既然還是有不少朋友在問這個,看起來手冊... ...
  • 1、拉取鏡像命令 docker pull php:7.2.0-cli-alpine 2、啟動容器並執行命令 docker run -it --name php-cli php:7.2.0-cli-alpine php -m 3、查看container 列表命令 docker ps 4、刪除某一con ...
  • 聲明: 1)僅作為個人學習,如有冒犯,告知速刪! 2)不想誤導,如有錯誤,不吝指教! 1: 查看文件信息:ls ls常用參數: 參數含義 -a 顯示指定目錄下所有子目錄與文件,包括隱藏文件 -l 以列表方式顯示文件的詳細信息 -h 配合 -l 以人性化的方式顯示文件大小 註:也可以ls -lh組合 ...
  • 一 Glusterfs介紹 Glusterfs是一個開源的分散式文件系統,是Scale存儲的核心,能夠處理千數量級的客戶端。是整合了許多存儲塊(server)通過Infiniband RDMA或者 Tcp/Ip方式互聯的一個並行的網路文件系統。 特征: 容量可以按比例的擴展,且性能卻不會因此而降低。 ...
  • 前面我們聊到了mariadb的事務,以及事務隔離級別,回顧請參考https://www.cnblogs.com/qiuhom-1874/p/13198186.html;今天我們來聊一聊mariadb的日誌相關話題;mariadb日誌有6種,分別是查詢日誌(general_log),慢查詢日誌(lo... ...
  • MySQL 事務 異常 事務隔離的級別 事務 在你操作資料庫的同時,有可能其他用戶還會不斷地對數據進行增刪改查操作。為了避免並行進行時出現混亂,就產生了“事務”。事務就是要保證一組資料庫操作,要麼全部成功要麼全部失敗,以此來保證不混亂。 事務支持是在引擎層實現的,MySQL支持多系統,不是所有引擎都 ...
  • dgraph 簡介 dgraph 使用示例(基於 golang) golang client 安裝 創建 schema 數據的 CURD 事務 總結 dgraph 簡介 dgraph 是基於 golang 開發的開源的分散式圖資料庫. 誕生時間不長, 發展卻很迅速. 目前是 v20.x 版本, dg ...
一周排行
    -Advertisement-
    Play Games
  • Dapr Outbox 是1.12中的功能。 本文只介紹Dapr Outbox 執行流程,Dapr Outbox基本用法請閱讀官方文檔 。本文中appID=order-processor,topic=orders 本文前提知識:熟悉Dapr狀態管理、Dapr發佈訂閱和Outbox 模式。 Outbo ...
  • 引言 在前幾章我們深度講解了單元測試和集成測試的基礎知識,這一章我們來講解一下代碼覆蓋率,代碼覆蓋率是單元測試運行的度量值,覆蓋率通常以百分比表示,用於衡量代碼被測試覆蓋的程度,幫助開發人員評估測試用例的質量和代碼的健壯性。常見的覆蓋率包括語句覆蓋率(Line Coverage)、分支覆蓋率(Bra ...
  • 前言 本文介紹瞭如何使用S7.NET庫實現對西門子PLC DB塊數據的讀寫,記錄了使用電腦模擬,模擬PLC,自至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1.Windows環境下鏈路層網路訪問的行業標準工具(WinPcap_4_1_3.exe)下載鏈接:http ...
  • 從依賴倒置原則(Dependency Inversion Principle, DIP)到控制反轉(Inversion of Control, IoC)再到依賴註入(Dependency Injection, DI)的演進過程,我們可以理解為一種逐步抽象和解耦的設計思想。這種思想在C#等面向對象的編 ...
  • 關於Python中的私有屬性和私有方法 Python對於類的成員沒有嚴格的訪問控制限制,這與其他面相對對象語言有區別。關於私有屬性和私有方法,有如下要點: 1、通常我們約定,兩個下劃線開頭的屬性是私有的(private)。其他為公共的(public); 2、類內部可以訪問私有屬性(方法); 3、類外 ...
  • C++ 訪問說明符 訪問說明符是 C++ 中控制類成員(屬性和方法)可訪問性的關鍵字。它們用於封裝類數據並保護其免受意外修改或濫用。 三種訪問說明符: public:允許從類外部的任何地方訪問成員。 private:僅允許在類內部訪問成員。 protected:允許在類內部及其派生類中訪問成員。 示 ...
  • 寫這個隨筆說一下C++的static_cast和dynamic_cast用在子類與父類的指針轉換時的一些事宜。首先,【static_cast,dynamic_cast】【父類指針,子類指針】,兩兩一組,共有4種組合:用 static_cast 父類轉子類、用 static_cast 子類轉父類、使用 ...
  • /******************************************************************************************************** * * * 設計雙向鏈表的介面 * * * * Copyright (c) 2023-2 ...
  • 相信接觸過spring做開發的小伙伴們一定使用過@ComponentScan註解 @ComponentScan("com.wangm.lifecycle") public class AppConfig { } @ComponentScan指定basePackage,將包下的類按照一定規則註冊成Be ...
  • 操作系統 :CentOS 7.6_x64 opensips版本: 2.4.9 python版本:2.7.5 python作為腳本語言,使用起來很方便,查了下opensips的文檔,支持使用python腳本寫邏輯代碼。今天整理下CentOS7環境下opensips2.4.9的python模塊筆記及使用 ...