在centos6.6中mysql5.5的編譯、安裝、配置

  今天根據需求要在centos6.6上編譯安裝mysql5.5,由於之前編譯安裝過感受很簡單,可是今天仍是出現了點小問題,因此把過安裝過程總結了一下:mysql

   好像從mysql5.5開始編譯安裝mysql須要用到cmake工具進行編譯安裝,既然是編譯安裝,那麼確定要用到一些依賴的類庫以及相關的編譯工具,因此須要事先安裝相關工具。c++

  

一 、編譯安裝sql

1.安裝mysql編譯過程當中所須要的依賴關係以及編譯工具(須要先配置好yum源)數據庫

# yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel bison cmakecentos

2.使用yum安裝cmake編譯工具curl

#yum -y  install cmakesocket

wKiom1fEAvmxoV8sAAAtH6QmZN8890.png-wh_50

3.安裝前須要檢查一下是否安裝mysql,若是有就卸載掉tcp

# rpm -qa | grep mysqlide

4.下載mysql源碼包,並解壓工具

# tar xvf mysql-mysql-5.5.35.t15.tar

或者解壓到指定目錄(如:/usr/local)

# tar xvf mysql-mysql-5.5.35.t15.tar -C /usr/local

wKioL1fEA8-iKjLaAAAOmEmLo04589.png-wh_50

5.進入到mysql的解壓目錄,使用cmake編譯、安裝

# cd mysql-mysql-5.5.35.t15

 1)使用cmake編譯(根據本身的具體要求選擇編譯參數,下邊的選項參數僅供參考)

#cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \

-DSYSCONFDIR=/etc \

-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci

wKiom1fEBEaAIbhmAAAmqVuwOsQ364.png-wh_50

 2)安裝

#make && make install

wKiom1fEBI-RAPM-AAAvGqz13Io731.png-wh_50

稍等一會。。。

6.須要建立mysql用戶和mysql組,並修改mysql安裝目錄的所屬用戶和組

 1)建立mysql用戶和mysql組

#groupadd mysql

#useradd -g mysql -s /sbin/nologin mysql

 2)修改mysql安裝目錄的所屬用戶和組

#chown -R mysql:mysql /usr/local/mysql

wKioL1fEBNuAaq4yAAAwB5pj-KQ925.png-wh_50

7.進入mysql安裝目錄,執行初始化腳本,建立mysql自帶的數據庫和表

# cd /usr/local/mysql

wKioL1fEBQfwuAf7AAAUtuFCqKM278.png-wh_50

# cd scripts/

#./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

wKiom1fEBSzwQoojAAAfLRXGMDs518.png-wh_50

8.修改配置文件

# vi /etc/my.cnf

wKioL1fEBa6QBX3bAAAPq2tIhSQ349.png-wh_50

9.添加服務,設置mysql服務開機自啓

 1)添加服務,進入mysql安裝目錄,拷貝目錄/support-files下的mysql.server文件到/etc/init.d/目錄下,並重名爲mysql

#cd /usr/local/mysql

#cp support-files/mysql.server /etc/init.d/mysql

 2)設置開機自啓

# chkconfig mysql on

10.啓動mysql服務

wKioL1fEBePxKJbZAAAMVxc7MBc756.png-wh_50

11.編譯安裝的mysql沒有初始密碼,因此要給root用戶設置初始密碼

#/usr/local/mysql/bin/mysqladmin -u root password '123456'

wKiom1fEBhnykiSTAAAMGR34bgA822.png-wh_50

12.由於手動編譯的,全部要爲mysql添加環境變量,否則在終端中輸入mysql將會提示命令找不到

 1)編輯/etc/profile,在文件末尾添加以下內容

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

如:

wKiom1fEBkyzr-qsAAAQTR-I7XE885.png-wh_50

2)使文件當即生效

#source /etc/profile

13.如今mysql的安裝配置基本完成,能夠去登錄、使用

wKiom1fEBoLT6SI3AAAHxokX6FI652.png-wh_50

登陸時若是出現:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)錯誤

能夠修改/etc/my.cnf

添加以下內容:

[client]

socket=/var/lib/mysql/mysql.sock

如:

wKioL1fEBsiyfhMDAAAdJwDe4LI801.png-wh_50

14.若是但願其它遠程主機訪問該mysql,能夠進行以下操做

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

wKioL1fEBxSxC4XYAAAYYUvQKZk199.png-wh_50

或者也能夠去修改mysql庫中的user表,添加指定的host主機

15.因爲防火牆默認沒有開啓3306端口,因此須要手動開啓此端口

編輯/etc/sysconfig/iptables

添加以下內容

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

wKiom1fEBz3BZzVaAAAWNWrW4iE920.png-wh_50

16.此時咱們能夠查看一下容許訪問該數據庫的主機、用戶等信息

進入mysql庫,查看user表信息

mysql>use mysql

mysql>select host,user,password from user;

wKiom1fEB6fyPuFDAAAfpBVGjsg948.png-wh_50

能夠看到咱們分別設置的兩個密碼(本地訪問mysql的root用戶密碼和遠程訪問mysql的root用戶的密碼)

若是須要指定某些主機能夠訪問該數據庫,則能夠修改該表,添加指定主機的ip到該表中。

17.若是要更改數據庫的默認端口,則須要更改配置文件/etc/my.cnf

添加以下內容:

port:端口號 

例如:

wKioL1fEB-DDoIv5AAARLjflrrs252.png-wh_50

而後重啓mysql服務

#service mysql restart

注意:若是此處修改了默認端口號,則防火牆容許訪問的端口號也要進行更改,要與此文件中的端口號保持一致

18.若是在局域網內出現鏈接mysql比較慢的狀況,多是與mysql的DNS反向解析有關,能夠把此功能關閉掉

修改文件/etc/my.cnf,添加以下內容:

skip-name-resolve

如:

wKioL1fECCTD6trAAAATWcEKlFQ845.png-wh_50

重啓mysql服務便可。

相關文章
相關標籤/搜索