阿里雲CentOS 7.1編譯安裝MySql5.6.24
這篇文章主要是記錄原始碼編譯安裝MySql5.6.24的過程。
鑑於官方MySql5.6.24相對是一個比較穩定的版本,所以博主之前也在自己的另一臺CentOS7.1主機上安裝了一遍。不過最後還是圖新鮮,選擇了MySQL5.7.7rc版本。下面是具體的安裝過程,由於和MySQL5.7.7rc的編譯安裝過程很類似,所以這裡儘可能精簡文字:
1 建立mysql使用者和使用者組,並下載MySql5.6.24版本
首先建立一個名為mysql且沒有登入許可權
的使用者和一個名為mysql的使用者組,然後去mysql官網下載MySql5.6.24版本。
#######新建mysql使用者和mysql組 [[email protected] ~]# groupadd -r mysql && useradd -r -g mysql -s /bin/false -M mysql ######從官網或者部落格備份地址下載MySql5.6.24版本 [[email protected] ~]# wget -c http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.24.tar.gz [[email protected] ~]# wget -c http://git.typecodes.com/libs/mysql/mysql-5.6.24.tar.gz ######開始解壓MySql5.6.24 [[email protected] ~]# tar -zxvf mysql-5.6.24.tar.gz && cd mysql-5.6.24/ ######下載gmock:google的c++mock框架,從mysql 5.6開始支援 [[email protected] mysql-5.6.24]# wget -c https://googlemock.googlecode.com/files/gmock-1.6.0.zip [[email protected] mysql-5.6.24]# wget -c http://git.typecodes.com/libs/ccpp/gmock-1.6.0.zip ######將其解壓到MySQL5.6.24的source_downloads目錄下 [[email protected] mysql-5.6.24]# unzip gmock-1.6.0.zip -d source_downloads
2 下載編譯MySql5.6.24時需要的工具(安裝過程同編譯安裝MySQL5.7.7rc完全一致)
和編譯安裝MySQL5.7.7rc版本一樣,這裡也需要安裝CMake、Ncurses、bison和Boost庫。
#######CMake編譯工具 [[email protected] ~]# wget -c http://git.typecodes.com/libs/ccpp/cmake-3.2.1.tar.gz [[email protected] ~]# tar -zxf cmake-3.2.1.tar.gz && cd cmake-3.2.1 [[email protected] cmake-3.2.1]# ./configure [[email protected] cmake-3.2.1]# make && make install [預設安裝路徑是/usr/local/bin] [[email protected] cmake-3.2.1]# cmake --version [檢視cmake版本] cmake version 3.2.1 CMake suite maintained and supported by Kitware (kitware.com/cmake). [[email protected] cmake-3.2.1]# cd ~ && rm -rf cmake-3.2.1* #######Ncurses:提供功能鍵定義(快捷鍵),螢幕繪製以及基於文字終端的圖形互動功能的動態庫。 [[email protected] ~]# yum -y install ncurses-devel #######bison:GNU分析器生成器 [[email protected] ~]# wget -c http://git.typecodes.com/libs/ccpp/bison-3.0.tar.gz [[email protected] ~]# tar -zxf bison-3.0.tar.gz && cd bison-3.0/ && ./configure [[email protected] bison-3.0]# make && make install [[email protected] bison-3.0]# cd ~ && rm -rf bison-3.0* #######Boost庫:一個開源可移植的C++庫,是C++標準化程序的開發引擎之一 [[email protected] ~]# wget -c http://git.typecodes.com/libs/ccpp/boost_1_57_0.tar.bz2 [[email protected] ~]# tar -jxf boost_1_57_0.tar.bz2 && cd boost_1_57_0/ [[email protected] boost_1_57_0]# ./bootstrap.sh [[email protected] boost_1_57_0]# ./b2 stage threading=multi link=shared [[email protected] boost_1_57_0]# ./b2 install threading=multi link=shared [[email protected] boost_1_57_0]# cd ~ && rm -rf boost_1_57_0*
3 解決MySQL5.6.24的bug
在MySQL5.6.24原始碼包中的/cmd-line-utils/libedit/terminal.c
檔案有bug,會導致在安裝完後,使用命令報Segmentation
fault
的錯誤。
谷歌到這篇文章解決:登出第869行的 //char
buf[TC_BUFSIZE];
並將第879行的area = buf;
改成area
= NULL;
。
4 開始進行MySql5.6.24編譯前的配置
這裡和編譯安裝MySQL5.7.7rc時的操作也完全相同:
######使用cmake命令,開始編譯MySql5.6.24 [[email protected] mysql-5.6.24]# cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ [MySQL安裝的根目錄] -DMYSQL_DATADIR=/mydata/mysql/data \ [MySQL資料庫檔案存放目錄] -DSYSCONFDIR=/etc \ [MySQL配置檔案所在目錄] -DMYSQL_USER=mysql \ [MySQL使用者名稱] -DWITH_MYISAM_STORAGE_ENGINE=1 \ [MySQL的資料庫引擎] -DWITH_INNOBASE_STORAGE_ENGINE=1 \ [MySQL的資料庫引擎] -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ [MySQL的資料庫引擎] -DWITH_MEMORY_STORAGE_ENGINE=1 \ [MySQL的資料庫引擎] -DWITH_READLINE=1 \ [MySQL的readline library] -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock \ [MySQL的通訊目錄] -DMYSQL_TCP_PORT=3306 \ [MySQL的監聽埠] -DENABLED_LOCAL_INFILE=1 \ [啟用載入本地資料] -DENABLE_DOWNLOADS=1 \ [編譯時允許自主下載相關檔案] -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DEXTRA_CHARSETS=all \ [使MySQL支援所有的擴充套件字元] -DDEFAULT_CHARSET=utf8 \ [設定預設字符集為utf8] -DDEFAULT_COLLATION=utf8_general_ci \ [設定預設字元校對] -DWITH_DEBUG=0 \ [禁用除錯模式] -DMYSQL_MAINTAINER_MODE=0 \ -DWITH_SSL:STRING=bundled \ [通訊時支援ssl協議] -DWITH_ZLIB:STRING=bundled [允許使用zlib library]
執行上面的配置命令的結果如下圖所示:
5 開始編譯和安裝MySQL5.6.24
相對編譯MySQL5.7.7rc來說,編譯MySQL5.6.24對主機資源的消耗低很多,而且耗時也少(約1小時)。
[[email protected] mysql-5.6.24]# make && make install
下圖展示的是make
命令執行完畢的情況:
make
命令執行完後,開始執行make
install
命令:
最後,激動人心的時刻,看到下圖就代表已經編譯安裝好了MySQL5.6.24!
6 檢視編譯成功後的MySQL安裝目錄
同MySQL5.7.7rc一樣,需要檢視MySQL5.6.24的/usr/local/mysql/lib/
目錄下是否存在下面的庫檔案。
[[email protected] lib]# ls libmysqlclient.a libmysqlclient_r.so libmysqlclient_r.so.18.1.0 libmysqlclient.so.18 libmysqld.a plugin libmysqlclient_r.a libmysqlclient_r.so.18 libmysqlclient.so libmysqlclient.so.18.1.0 libmysqlservices.a
7 開始設定MySQL的配置檔案my.cnf
同MySQL5.7.7rc的配置檔案my.cnf一樣,直接把《CentOS系統MySQL的配置檔案my.cnf》文中整理的my.cnf檔案覆蓋伺服器上的/etc/my.cnf
即可。
[[email protected] mysql]# mv /etc/my.cnf /etc/my.cnfbak [[email protected] mysql]# mv ~/my.cnf /etc/my.cnf
8 新增mysql的環境變數
同MySQL5.7.7rc,新增MySQL的bin目錄到Linux環境變數中:
[[email protected] mysql]# echo -e '\n\nexport PATH=/usr/local/mysql/bin:$PATH\n' >> /etc/profile && source /etc/profile
9 建立MySQL資料庫檔案的存放路徑以及相關安全配置
同MySQL5.7.7rc,建立/mydata/mysql/data
作為MySQL的資料庫目錄。
[[email protected] ~]# mkdir -p /mydata/mysql/data && chown -R root:mysql /usr/local/mysql [[email protected] mysql]# chown -R mysql:mysql /mydata/mysql/data [[email protected] mysql]# chmod -R go-rwx /mydata/mysql/data
10 初始化MySQL自身的資料庫
同MySQL5.7.7rc,初始化MySQL自身的資料庫。
######引數user表示使用者,basedir表示mysql的安裝路徑,datadir表示資料庫檔案存放路徑 [[email protected] bin]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/mydata/mysql/data
執行完後,可以通過[[email protected] mysql]# ls -lrt /mydata/mysql/data/
命令檢視是否生成了MySQL自身的資料庫檔案。
11 建立MySQL日誌存放目錄以及設定開機啟動
同MySQL5.7.7rc,將啟動MySQL服務程序的指令碼新增到開機啟動項中。
[[email protected] ~]# mkdir -p /var/run/mysql && mkdir -p /var/log/mysql [[email protected] ~]# chown -R mysql:mysql /var/log/mysql && chown -R mysql:mysql /var/run/mysql ######配置開機自啟動 [[email protected] mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld [[email protected] mysql]# chmod +x /etc/init.d/mysqld #增加可執行許可權 [[email protected] mysql]# chkconfig --add mysql #新增到sysV服務 [[email protected] mysql]# chkconfig mysqld on
12 啟動MySQL服務
同MySQL5.7.7rc,啟動MySQL服務程序:
[[email protected] mysql]# mysqld_safe --user=mysql --datadir=/mydata/mysql/data --log-error=/var/log/mysql/error.log & [1] 10274 [[email protected] mysql]# 150513 21:28:16 mysqld_safe Logging to '/var/log/mysql/error.log'. 150513 21:28:16 mysqld_safe Starting mysqld daemon with databases from /mydata/mysql/data [[email protected] mysql]# service mysqld start Starting MySQL.[ OK ] [啟動成功] [[email protected] mysql]#
然後使用下面這命令ps -ef | grep mysql
和netstat
-tunpl | grep 3306
檢視MySQL服務程序和埠監聽情況:
13 初始化MySQL資料庫的root使用者密碼
MySQL5.6.24和MySQL5.7.7rc的使用者密碼策略是不同的,MySQL5.6.24沒有提示使用者密碼的強度等級,所以也就不會去校驗。因此,我們只需要一路輸入y
和自己喜歡的密碼即可。
14 將MySQL資料庫的動態連結庫共享至系統連結庫
同MySQL5.7.7rc,將MySQL5.6.24的lib庫檔案新增到當前Linux主機連結庫/etc/ld.so.conf.d/
下,方便其它程式安裝呼叫。
[[email protected] lib]# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf [[email protected] lib]# ldconfig [使生效] [[email protected] lib]# ldconfig -v |grep mysql [檢視效果] ldconfig: Can't stat /libx32: No such file or directory ldconfig: Path `/usr/lib' given more than once ldconfig: Path `/usr/lib64' given more than once ldconfig: Can't stat /usr/libx32: No such file or directory /usr/lib64/mysql: libmysqlclient.so.18 -> libmysqlclient.so.18.0.0 libmysqlclient.so.18 -> libmysqlclient_r.so.18.1.0 /usr/local/mysql/lib: libmysqlclient.so.18 -> libmysqlclient_r.so.18.1.0
15 建立其它MySQL資料庫使用者
操作同MySQL5.7.7rc,這裡就不再演示了。
相關推薦
阿里雲CentOS 7.1編譯安裝MySql5.6.24
這篇文章主要是記錄原始碼編譯安裝MySql5.6.24的過程。 鑑於官方MySql5.6.24相對是一個比較穩定的版本,所以博主之前也在自己的另一臺CentOS7.1主機上安裝了一遍。不過最後還是圖新鮮,選擇了MySQL5.7.7rc版本。下面是具體的安裝過程,由於和M
在阿里雲CentOS 7.4下安裝WSTMart開源商城系統
商淘軟體B2B2C(WSTMart)開源商城系統在linux下的安裝,阿里雲Cent 7.4版本安裝命令教程: WSTMart 安裝apache 安裝服務 yum install httpd
Linux/Centos 源碼編譯安裝Mysql5.6
Mysql Linux Centos 系統 運維 mysql安裝軟件版本 MySQL-5.6.32 (文中涉及到的軟件包加最下方微信免費獲取)上傳mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz到APP服務器目錄:/usr/local/sr
CentOS 7.5 編譯安裝 Nginx 1.15.5
關於Nginx Nginx是一個高效能、輕量級的HTTP和反向代理服務及電子郵件IMAP/POP3/SMTP代理服務 因它的穩定性、豐富的功能集、示例配置檔案和低系統資源消耗而聞名。 特點:記憶體佔用少,併發能力強 事實上Nginx的併發能力確實在同類型的
AWS CentOS 7.5 編譯安裝nginx 1.14.2穩定版
安裝所需環境 Nginx 是 C語言 開發,本文使用 AWS CentOS 7.5 作為安裝環境。 一. gcc 安裝 安裝 nginx 原始碼進行編譯,編譯依賴 gcc 環境,需要安裝gcc: yum install gcc-c++ 二. PCRE pcre-devel 安裝 PC
阿里雲CentOS7 64位下安裝MySQL5.7
二、阿里雲沒有提供手動安裝mysql的技術文件,現將自己的安裝過程整理如下,採用的是YUM安裝方式: 安裝mysql源 shell> yum localinstall mysql57-community-release-el7-11.noarch.r
阿里雲Centos 7 安裝mysql伺服器
1. 下載mysql源安裝包: wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 2. 安裝mysql源: yum localinstall mysql57-communit
阿里雲centos 7 安裝 mysql 8 navicat連線不上問題解決
伺服器上安裝的MySQL服務,一般都會用Navicat做日常資料庫的使用工具。今天在阿里雲上安裝MySQL8,但是Navicat始終連線不上,試了網上很多方法都沒用,以下記錄一些關鍵的地方。1.阿里雲要新增安全規則即使伺服器防火牆已經開放了3306埠,或者關掉了防火牆,還需要
阿里雲(centOS 7)安裝apache
安裝 apache: # yum install httpd httpd-devel # service httpd start 防火牆中開啟 80 埠: # firewall-cmd --zone=public --add-port=80/tcp --perman
阿里雲Centos 7.2 安裝apache踩的坑
./configure --prefix=/usr/local/apache2 Centos安裝 Apache2.4提示 APR not found的解決辦法: 1.下載所需軟體包: 具體步驟如下: 1、:解決apr not foun
Nginx(一)安裝 【阿里雲 CentOS 7 yum安裝 】
目錄 新增Nginx到YUM源 新增CentOS 7 Nginx yum資源庫,開啟終端,使用以下命令: # sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx
阿里雲Centos 7.2 安裝Svn
這兩天因為專案需要在Linux系統下安裝SVN,由於很少使用Centos環境,直接百度貼程式碼,但安裝過程中還是遇到不少問題,記錄下來。1.安裝subversion yum install subversion -y使用 -y 命令安裝過程中無需任何操作,直接安裝完成2.檢視
MySQL 8.0安裝在阿里雲Centos 7
tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar 3、移動到系統的本地軟體目錄 mv mysql-8.0.13-linux-glibc2.12-x86
阿里雲 centos 7 安裝 svn 伺服器
一、SVN 服務端搭建 1、安裝 svn sudo yum install subversion 2 檢視版本 svnserve --version 輸出: svnserve, version 1.7.14 (r1542130) c
阿里雲CentOS 7.3安裝Redis3.2.6詳細步驟
############ 準備 ############### 從Redis官網下載Linux redis3.2.6版本,我下載的redis-3.2.6.tar.gz(目前最新穩定版),下載到/usr/local/src目錄,如果沒有就mkdir建立一個. 下載連結:https:/
Centos 7.0 編譯安裝LAMP(Linxu+apache+mysql+php)之源碼安裝Apache (一)
mysql apache mysql編譯安裝 apache編譯安裝 lamp編譯安裝 Apache 簡介: Apache是世界使用排名第一的Web服務器軟件。它可以運行在幾乎所有廣泛使用的計算機平臺上,由於其跨平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。它快速、可靠
Centos 7.0 編譯安裝LAMP(Linxu+apache+mysql+php)之源碼安裝Mysql (二)
php mysql apache mysql 簡介: MySQL是一個關系型數據庫管理系統,關系數據庫將數據保存在不同的表中,這樣就增加了速度並提高了靈活性。目前其屬於 Oracle 旗下產品。MySQL 是最流行的關系型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RD
Centos 7.0 編譯安裝LAMP(Linxu+apache+mysql+php)之源碼安裝php (三)
lamp apache 源碼編譯lamp php mysql centos 7 編譯安裝lamp PHP簡介: PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特
阿里雲CentOS 7.3 裸機搭建 Apache、MySql、PHP、Node環境、並繫結域名
阿里雲CentOS 7.3 裸機搭建 Apache、MySql、PHP、Node境、並繫結域名 最近一直想在阿里雲申請一個伺服器,可以在上面跑一些服務,輸入域名訪問,那種感覺肯定很不一樣。所以就花學生價買了一年,還是挺划算的。 域名備案花了挺長時間,又上傳照片又打電話核實的挺麻煩的,不過
CentOS 7.x編譯安裝Nginx ,設為開機啟動項
1、安裝 1、安裝nginx的依賴 yum -y install openssl openssl-devel yum -y install pcre-devel 2、下載nginx-1.10.3.tar.gz原始碼並解壓至/root/ http://nginx.org/