您好,登錄后才能下訂單哦!
一、簡介:
MySQL 5.7主要特性:
1、原生支持Systemd
2、更好的性能:對(duì)于多核CPU、固態(tài)硬盤、鎖有著更好的優(yōu)化
3、更好的lnnoDB存儲(chǔ)引擎
4、更為健壯的復(fù)制功能:復(fù)制帶來了數(shù)據(jù)完全不丟失的方案,傳統(tǒng)金融客戶也可以選擇使用MySQL數(shù)據(jù)庫
5、MySQL-5.6.3以上版本已經(jīng)支持了多線程的主從復(fù)制
6、新增sys庫:以后這會(huì)是DBA訪問最平凡的庫
二、安裝MySQL 5.7.13
系統(tǒng)環(huán)境:Centos 7.2x86_64
1、安裝前準(zhǔn)備:
因?yàn)?/span>Centos 7.2默認(rèn)安裝了mariadb-libs,所以要先卸載掉
[root@localhost ~]# rpm -aq | grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
[root@localhost ~]# rpm -e mariadb-libs --nodeps
2、安裝相關(guān)依賴包
準(zhǔn)備以下安裝包
bison-3.0.4.tar.gz cmake-3.5.2.tar.gz mysql-5.7.13.tar.gz
boost_1_59_0.tar.gz ncurses-5.9.tar.gz
注:相關(guān)依賴包的作用
# cmake:由于從MySQL5.5版本開始棄用了常規(guī)的configure編譯方法,所以需要cmake編譯器,用于設(shè)置mysql的編譯參數(shù)。(如:安裝目錄,數(shù)據(jù)存放目錄,字符編碼,排序規(guī)則等)
# boost:從MySQL5.7.5開始Boost庫是必需的,mysql源碼中用到了C++的Boost庫,要求必需安裝Boost1.59.0或以上版本。
# GCC:這是Linux下的C語言編譯工具,MySQL源碼編譯完全由C和C++編寫,要求必需安裝GCC。
# bison:Linux下C/C++語法分析器。
# ncurses:字符終端處理庫。
1)安裝cmake
[root@localhost ~]# tar zxf cmake-3.5.2.tar.gz
[root@localhost ~]# cd cmake-3.5.2/
[root@localhost cmake-3.5.2]# ./bootstrap
[root@localhost cmake-3.5.2]# gmake && gmake install
2)查看cmake版本:
3)安裝ncurses
[root@localhost ~]# tar zxf ncurses-5.9.tar.gz
[root@localhost ~]# cd ncurses-5.9/
[root@localhost ncurses-5.9]# ./configure && make && make install
4)安裝bison
[root@localhost ~]# tar zxf bison-3.0.4.tar.gz
[root@localhost ~]# cd bison-3.0.4/
[root@localhost bison-3.0.4]# ./configure && make && make install
5)安裝boost
[root@localhost ~]# tar zxf boost_1_59_0.tar.gz
[root@localhost ~]# mv boost_1_59_0 /usr/local/boost
6)創(chuàng)建mysql用戶和用戶組及目錄
[root@localhost ~]# groupadd -r mysql
[root@localhost ~]# useradd -r -g mysql -s /bin/false -M mysql
[root@localhost ~]# mkdir -p /usr/local/mysql/data
3、編譯安裝MySQL
解壓mysql源碼包
[root@localhost ~]# tar zxf mysql-5.7.13.tar.gz
[root@localhost ~]# cd mysql-5.7.13/
執(zhí)行cmake命令進(jìn)行編譯前配置
[root@localhost mysql-5.7.13]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_SYSTEMD=1 -DWITH_BOOST=/usr/local/boost
<-- 注 -->:配置解釋:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql ## MySQL安裝根目錄
-DMYSQL_DATADIR=/usr/local/mysql/data ## MySQL數(shù)據(jù)庫文件存放目錄
-DSYSCONFDIR=/etc ## MySQL配置文件所在目錄
-DDEFAULT_CHARSET=utf8 ## 設(shè)置Mysql默認(rèn)字符集為utf-8
-DDEFAULT_COLLATION=utf8_general_ci ## 設(shè)置默認(rèn)字符集校對(duì)規(guī)則
-DEXTRA_CHARSETS=all ## 使MySQL支持所有的擴(kuò)展字符
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock ## 指定mysql.sock位置
-DWITH_MYISAM_STORAGE_ENGINE=1 ## 添加MYISAM引擎支持
-DWITH_INNOBASE_STORAGE_ENGINE=1 ## 添加lnnoDB引擎支持
-DWITH_ARCHIVE_STORAGE_ENGINE=1 ## 添加ARCHIVE引擎支持
-DWITH_PARTITION_STORAGE_ENGINE=1 ## 安裝支持?jǐn)?shù)據(jù)庫分區(qū)
-DWITH_SYSTEMD=1 ## 可以使用systemd控制mysql服務(wù)
-DWITH_BOOST=/usr/local/boost ## 指向boost庫所在目錄
開始編譯及編譯安裝
[root@localhost mysql-5.7.13]# make && make install
<-- 注 -->:加快編譯速度的方法:
[root@localhost mysql-5.7.13]# make -j $(grep processor /proc/cpuinfo |wc -l) && make install
-j:參數(shù)表示根據(jù)CPU核數(shù)指定編譯時(shí)的線程數(shù),可以加快編譯速度(默認(rèn)為1個(gè)線程數(shù))
<-- 注 -->:若要重新運(yùn)行cmake配置,則需要?jiǎng)h除CMakeCache.txt文件:
[root@localhost mysql-5.7.13]# make clean
[root@localhost mysql-5.7.13]# rm -f CMakeCache.txt
優(yōu)化MySQL的執(zhí)行路徑
[root@localhost mysql-5.7.13]# echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[root@localhost mysql-5.7.13]# source /etc/profile
4、設(shè)置權(quán)限并初始化MySQL系統(tǒng)授權(quán)表
[root@localhost ~]# cd /usr/local/mysql/
[root@localhost mysql]# chown -R mysql:mysql .
[root@localhost mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local --datadir=/usr/local/mysql/data
<-- 注 -->:以root初始化操作系統(tǒng)時(shí)要加--user=mysql參數(shù),生成一個(gè)隨機(jī)密碼。(需記住登入時(shí)要用)
5、創(chuàng)建配置文件
[root@localhost mysql]# cd support-files/
[root@localhost support-files]# cp my-default.cnf /etc/my.cnf
[root@localhost ~]# vim /etc/my.cnf ##在[mysqld]下面添加以下內(nèi)容
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
server_id = 1
socket = /usr/local/mysql/mysql.sock
log-error = /usr/local/mysql/data/mysqld.err
6、配置mysql自動(dòng)啟動(dòng)
[root@localhost ~]# cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
<-- 注 -->:因?yàn)?/span>mysqld.service 把默認(rèn)的pid文件指定到/var/run/mysqld目錄,而沒有事先建立目錄,所有這個(gè)時(shí)候啟動(dòng)mysql會(huì)失敗。兩種解決方法:
第一種方法:創(chuàng)建/var/run/mysqld目錄并設(shè)置屬主屬主為mysql
root@localhost ~]# mkdir /var/run/mysqld
[root@localhost ~]# chown -R mysql:mysql /var/run/mysqld/
第二種方法:修改/usr/lib/system/system/mysqld.service
[root@localhost ~]# vim /usr/lib/systemd/system/mysqld.service
[root@localhost ~]# systemctl daemon-reload
啟動(dòng)mysql服務(wù)
[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl status mysqld.service
查看端口號(hào)
[root@localhost ~]# netstat -anpt |grep mysqld
6、設(shè)置數(shù)據(jù)庫管理員用戶root密碼
[root@localhost ~]# mysqladmin -uroot -p'=hJ?V:?9vQ-Q' password 123.com
注:這里-p選項(xiàng)中輸入初始化時(shí)生成的隨機(jī)密碼
訪問MySQL數(shù)據(jù)庫
[root@localhost ~]# mysql -u root -p
——到此MySQL 5.7.13安裝完成
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。