CentOS6.9 下編譯安裝MySQL5.7.19


官網:https://www.mysql.com/

下載地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19.tar.gz

 

一、准備工作

1.下載mysql並解壓

[root@001 ~]# wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19.tar.gz

[root@001 ~]# tar xf mysql-5.7.19.tar.gz -C /usr/local/src

[root@001 ~]# cd !$

[root@001 src]# cd mysql-5.7.19/

2.安裝相關編譯工具

[root@001 mysql-5.7.19]# yum -y install wget gcc-c++ ncurses-devel cmake

3.新建用戶

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

4.創建相關目錄:

[root@001 ~]# mkdir /usr/local/mysql

[root@001 ~]# mkdir /mysqldata

二、編譯安裝及配置

1.編譯安裝

[root@001 mysql-5.7.19]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysqldata/ -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost

#Mysql CMAKE編譯參數詳解見文章尾部

[root@001 mysql-5.7.19]# make -j 4 && make install

#如果出錯重新運行配置,需要刪除CMakeCache.txt文件,使用命令:make clean   rm -f CMakeCache.txt 

2.設置權限並初始化MySQL

[root@001 mysql-5.7.19]# chown -R mysql.mysql /usr/local/mysql/

[root@001 mysql-5.7.19]# cd /usr/local/mysql/bin/

[root@001 bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/mysqldata #生成一個隨機密碼(注意保存登錄時用)

2017-09-07T23:06:19.559512Z 1 [Note] A temporary password is generated for root@localhost: fwhYu/eIz6yX #記錄下來

3.修改配置文件

[root@001 bin]# vim /etc/my.cnf #修改如下內容

[mysqld]

basedir =/usr/local/mysql

datadir=/mysqldata/

port = 3306

socket=/tmp/mysql.sock

user=mysql

[client]

socket=/tmp/mysql.sock

4.配置mysql服務開機自動啟動

[root@001 bin]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

[root@001 bin]# ldconfig

[root@001 bin]# chmod 755 /etc/init.d/mysqld #增加執行權限

[root@001 bin]# chkconfig --add mysqld

[root@001 bin]# chkconfig --level 345 mysqld on #設置MySQL345等級自動啟動

5.設置環境變量

[root@001 bin]# echo "PATH=$PATH:/usr/local/mysql/bin" > /etc/profile.d/mysql.sh

[root@001 bin]# source /etc/profile

6、啟動並登陸修改密碼

[root@001 bin]# service mysqld start

[root@001 bin]# mysql -uroot -pfwhYu/eIz6yX #之前記錄下來的密碼

mysql> set password = '123456';

Query OK, 0 rows affected (0.00 sec)

mysql> quit

Bye #退出並重新登陸

[root@001 bin]# mysql -uroot -p123456

---以上編譯安裝MySQL5.7.19已完成,並能正常使用

 

附:

mysql最優配置文件:http://www.cnblogs.com/imweihao/p/7201014.html

mysql常用命令匯總:http://www.cnblogs.com/imweihao/p/7492477.html

Mysql CMAKE編譯參數詳解:

-DCMAKE_INSTALL_PREFIX= #指向mysql安裝目錄

-DINSTALL_SBINDIR=sbin #指向可執行文件目錄(prefix/sbin

-DMYSQL_DATADIR=/var/lib/mysql #指向mysql數據文件目錄(/var/lib/mysql

-DSYSCONFDIR=/etc/mysql #指向mysql配置文件目錄(/etc/mysql

-DINSTALL_PLUGINDIR=lib/mysql/plugin #指向插件目錄(prefix/lib/mysql/plugin

-DINSTALL_MANDIR=share/man #指向man文檔目錄(prefix/share/man

-DINSTALL_SHAREDIR=share #指向aclocal/mysql.m4安裝目錄(prefix/share

-DINSTALL_LIBDIR=lib/mysql #指向對象代碼庫目錄(prefix/lib/mysql

-DINSTALL_INCLUDEDIR=include/mysql #指向頭文件目錄(prefix/include/mysql

-DINSTALL_INFODIR=share/info #指向info文檔存放目錄(prefix/share/info

prefix官方推薦設為/usr

Storage Engine相關

類型csv,myisam,myisammrg,heap,innobase,archive,blackhole

若想啟用某個引擎的支持:-DWITH_<ENGINE>_STORAGE_ENGINE=1

如:

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

若想禁用某個引擎的支持:-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1

如:

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

-DWITHOUT_FEDERATED_STORAGE_ENGINE=1

-DWITHOUT_PARTITION_STORAGE_ENGINE=1

Library相關

-DWITH_READLINE=1 #啟用readline庫支持(提供可編輯的命令行)

-DWITH_SSL=system #啟用ssl庫支持(安全套接層)

-DWITH_ZLIB=system #啟用libz庫支持(zibgzib相關)

-DWTIH_LIBWRAP=0 #禁用libwrap庫(實現了通用TCP包裝的功能,為網絡服務守護進程使用)

-DMYSQL_TCP_PORT=3306 #指定TCP端口為3306

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock #指定mysql.sock路徑

-DENABLED_LOCAL_INFILE=1 #啟用本地數據導入支持

-DEXTRA_CHARSETS=all #啟用額外的字符集類型(默認為all

-DDEFAULT_CHARSET=utf8 #指定默認的字符集為utf8

-DDEFAULT_COLLATION=utf8_general_ci #設定默認排序規則(utf8_general_ci快速/utf8_unicode_ci准確)

-DWITH_EMBEDDED_SERVER=1 #編譯嵌入式服務器支持

-DMYSQL_USER=mysql #指定mysql用戶(默認為mysql)

-DWITH_DEBUG=0 禁用debug #(默認為禁用)

-DENABLE_PROFILING=0 #禁用Profiling分析(默認為開啟)

-DWITH_COMMENT='string' #一個關於編譯環境的描述性注釋

參考:http://www.linuxidc.com/Linux/2015-08/121667.htm

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM