您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么在CentOS7下安裝MySQL5.7數(shù)據(jù)庫(kù)以及配置”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“怎么在CentOS7下安裝MySQL5.7數(shù)據(jù)庫(kù)以及配置”吧!
一、MySQL5.7主要特性:
原生架構(gòu)支持centos7的Systemd
(1.)更好的性能:對(duì)于多核的CPU、固態(tài)硬盤、鎖有著更好的優(yōu)化、更好的innoDB存儲(chǔ)引擎。
(2.)更為健壯的復(fù)制功能:復(fù)制帶來(lái)了數(shù)據(jù)完全不丟失的方案,傳統(tǒng)金融客戶也
可以選擇使用MySQL數(shù)據(jù)庫(kù)。
(3.)新增sys庫(kù):以后這會(huì)是DBA訪問(wèn)最頻繁的庫(kù)
(4.)更好的優(yōu)化器:優(yōu)化器的代碼重構(gòu)的意義將在5.7版本及以后的版本中帶來(lái)巨大的改進(jìn)
oracle官方正在解決MySQL之前最大的難題,原生JSON類型的支持
注意:JSON(JavaScript object Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式。
JSON采用完全獨(dú)立于語(yǔ)言的文本格式,但是也使用了類似于C語(yǔ)言家族的習(xí)慣
(包括C、C++、C#、Java、JavaScript、Perl、Python等)。
這些特性使JSON成為理想的數(shù)據(jù)交換語(yǔ)言。易于閱讀和編寫,同時(shí)易于機(jī)器解析
和生成(一般用于提升網(wǎng)絡(luò)傳輸速率)。
JSON語(yǔ)法是JavaScript對(duì)象表示語(yǔ)法的子集
數(shù)據(jù)在鍵值對(duì)中
數(shù)據(jù)由逗號(hào)分隔
花括號(hào)保存對(duì)象
方括號(hào)保存數(shù)組
用JSON編寫的文件,可以代替.yaml格式的文件。(dockerkubernetes中的用的到,創(chuàng)建RC)。
注:mysql-5.6.3 已經(jīng)支持了多線程的主從復(fù)制
二、源碼編譯安裝MySQL5.7
1.系統(tǒng)環(huán)境:centos7.2x64位
因?yàn)閏entos7.2默認(rèn)安裝了mariadb-libs,所以先要卸載掉。
2.安裝相關(guān)依賴包
cmake:由于從MySQL5.5版本開始棄用了常規(guī)的configure編譯方法,所以需要CMAKE編譯器,用
于設(shè)置mysql的編譯參數(shù)。如:安裝目錄、數(shù)據(jù)存放目錄、字符編碼、排序規(guī)則等。
Boot: 從Mysql5.7.5開始Boost庫(kù)是必需的,MySQL源碼中用到了C++的Boost庫(kù),要求必須安
裝boost1.59.0或以上版本。
GCC是Linux下的C語(yǔ)言編譯工具,MySQL源碼編譯完全由C和C++編寫,要求必須安裝GCC
bison:Linux下C/C++語(yǔ)法分析器
ncurses:字符終端處理庫(kù)
下載所需軟件:
下載cmake-3.5.tar.gz http://www.cmake.org/download
下載ncurses-5.9.tar.gzftp://ftp.gnu.org/gnu/ncurses/
下載bison-3.0.4.tar.gzhttp://ftp.gnu.org/gnu/bison/
下載mysql-5.7.13.tar.gz
wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.18.tar.gz
下載Boost_1_59_0.tar.gz
wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
3.安裝cmake及相關(guān)下載好的軟件
1.安裝cmake:
cmake -version 查看版本:
2.安裝ncurses:
3.安裝bison:
4.安裝boost:
因?yàn)閎oost是一個(gè)提前編譯好的軟件所以這里無(wú)需在進(jìn)行配置和編譯,所以直接移動(dòng)到指定的目錄即可直接使用。
4.創(chuàng)建MySQL用戶和用戶組及目錄
新建MySQL組合MySQL用戶,禁止登錄shell ,-r選項(xiàng):代表系統(tǒng)用戶
5.編譯安裝MySQL5.7.18
(1.)解壓mysql源碼包:
(2.)執(zhí)行cmake命令前進(jìn)行編譯配置:
注意:在mysql5.5-5.6版本中是不需要加上-DWITH_SYSTEMD=1參數(shù),否則會(huì)報(bào)錯(cuò)?。?!
(3.)開始編譯安裝:
配置解釋:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql :mysql安裝的根目錄
-DMYSQL_DATADIR=/usr/local/mysql/data :mysql數(shù)據(jù)庫(kù)文件存放目錄
-DSYSCONFDIR=/etc :mysql配置文件所在目錄
-DWITH_MYISAM_STORAGE_ENGINE=1 :添加MYISAM引擎支持
-DWITH_INNOBASE_STORAGE_ENGINE=1 :添加InnoDB引擎支持
-DWITH_ARCHIVE_STORAGE_ENGINE=1 :添加ARCHIVE引擎支持
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock :指定mysql.sock位置
-DWITH_PARTITION_STORAGE_ENGINE=1 :安裝支持?jǐn)?shù)據(jù)庫(kù)分區(qū)
-DEXTRA_CHARSETS=all :使mysql支持所有的擴(kuò)展字符
-DDEFAULT_CHARSET=utf8 :設(shè)置mysql的默認(rèn)字符集為utf-8
-DDEFAULT_COLLATION=utf8_general_ci :設(shè)置默認(rèn)字符集校對(duì)規(guī)則
-DWITH_SYSTEMD=1 :可以使用systemd控制mysql服務(wù)
-DWITH_BOOST=/usr/local/boost :指向boost庫(kù)所在目錄
注意:更多參數(shù)執(zhí)行: #cmake . -LH
為了加快編譯速度可以按照下面的方式去編譯安裝:
make -j $(grep processor /proc/cpuinfo | wc -l )
-j 參數(shù)表示根據(jù)CPU核數(shù)指定編譯時(shí)的線程數(shù),可以加快編譯速度。默認(rèn)為1個(gè)線程編譯。
注意:若要重新運(yùn)行cmake配置,需要?jiǎng)h除CMakeCache.txt文件
#make clean
#rm -f CMakeCache.txt
6.優(yōu)化MySQL的執(zhí)行路徑
7.設(shè)置權(quán)限并初始化MySQL系統(tǒng)授權(quán)表
注意: 以上root初始化操作時(shí)要加--initialize參數(shù),生成一個(gè)隨機(jī)密碼(注意保存密碼登錄時(shí)使用)
MySQL5.7.6之前的版本執(zhí)行這個(gè)腳本進(jìn)行初始化系統(tǒng)數(shù)據(jù)庫(kù):
/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql
--datadir=/usr/local/mysql/data
有密碼的初始化:
#bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
無(wú)密碼的初始化:
#/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
8.創(chuàng)建配置文件
vim /etc/my.cnf
以上服務(wù)器啟動(dòng)失敗,查看錯(cuò)誤日志文件
在mysqld.service,把默認(rèn)的pid文件指定到了/var/run/mysqld目錄,而并沒有事先建立該目錄,因此要手動(dòng)建立該目錄并把權(quán)限賦給MySQL用戶。(這種方法是臨時(shí)的,因?yàn)?var/run/下的目錄關(guān)機(jī)就沒有了)。
或者修改/usr/lib/system/system/mysqld.service:
#systemctl daemon-reload
到此,相信大家對(duì)“怎么在CentOS7下安裝MySQL5.7數(shù)據(jù)庫(kù)以及配置”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。