centos7環(huán)境下源碼安裝mysql5.7.16的方法詳解
本文實(shí)例講述了centos7環(huán)境下源碼安裝mysql5.7.16的方法。分享給大家供大家參考,具體如下:
一、下載源碼包
下載mysql源碼包
http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.16.tar.gz
二、安裝約定:
用戶名:mysql
安裝目錄:/data/mysql
數(shù)據(jù)庫(kù)目錄:/data/mysql/data
三、安裝準(zhǔn)備
1、添加用戶
> useradd -s /sbin/nologin mysql
2、建立目錄
> mkdir /data/mysql
3、改變目錄擁有者和所屬者
> chown -R mysql:mysql /data/mysql
4、安裝編輯所需的文件
> yum install gcc gcc-c++ cmake bison-devel ncurses-devel libaio libaio-devel
(*mysql5.7.5以上版本需要安裝boost)
> yum install boost boost-devel
5、解壓源碼包
> tar -xf mysql-5.7.16.tar.gz
四、編譯安裝
> cd /data/mysql-5.7.16 > cmake \ -DMYSQL_USER=mysql \ -DCMAKE_INSTALL_PREFIX=/data/mysql \ -DMYSQL_DATADIR=/data/mysql/data \ -DSYSCONFDIR=/data/mysql \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DINSTALL_PLUGINDIR=/data/mysql/plugin \ -DWITH_READLINE=1 \ -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \ -DMYSQL_TCP_PORT=3306 \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DEXTRA_CHARSETS=all \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DDOWNLOAD_BOOST=1 \ -DWITH_BOOST=/usr/local/boost
(*注意,如果出錯(cuò),需刪除CMakeCache.txt,重新運(yùn)行配置)
關(guān)于上面參數(shù)的解釋如下:
#mysql用戶名 -DMYSQL_USER=mysql #安裝路徑 -DCMAKE_INSTALL_PREFIX=/data/mysql #數(shù)據(jù)文件存放位置 -DMYSQL_DATADIR=/data/mysql/data #my.cnf路徑 -DSYSCONFDIR=/data/mysql #支持MyIASM引擎 -DWITH_MYISAM_STORAGE_ENGINE=1 #支持InnoDB引擎 -DWITH_INNOBASE_STORAGE_ENGINE=1 #支持Memory引擎 -DWITH_MEMORY_STORAGE_ENGINE=1 #插件文件及配置路徑 -DINSTALL_PLUGINDIR=/data/mysql/plugin #快捷鍵功能(我沒(méi)用過(guò)) -DWITH_READLINE=1 #連接數(shù)據(jù)庫(kù)socket路徑 -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock #端口 -DMYSQL_TCP_PORT=3306 #允許從本地導(dǎo)入數(shù)據(jù) -DENABLED_LOCAL_INFILE=1 #安裝支持?jǐn)?shù)據(jù)庫(kù)分區(qū) -DWITH_PARTITION_STORAGE_ENGINE=1 #安裝所有的字符集 -DEXTRA_CHARSETS=all #默認(rèn)字符 -DDEFAULT_CHARSET=utf8 #校驗(yàn)字符 -DDEFAULT_COLLATION=utf8_general_ci #會(huì)自動(dòng)下載boost -DDOWNLOAD_BOOST=1 #指定boost目錄 -DWITH_BOOST=/usr/local/boost
編譯安裝
> make && make install
復(fù)制配置文件
> cp /data/mysql/support-files/my-default.cnf /data/mysql/my.cnf
初始化數(shù)據(jù)庫(kù)
> /data/mysql/bin/mysqld \ --defaults-file=/data/mysql/my.cnf \ --initialize \ --user=mysql \ --basedir=/data/mysql \ --datadir=/data/mysql/data \
如果出現(xiàn)如下信息:
unknown variable 'defaults-file=/data/mysql/my.cnf'
請(qǐng)保證--defaults-file
配置選項(xiàng)在最前面。
如果出現(xiàn)如下信息:
[ERROR] --initialize specified but the data directory has files in it. Aborting.
請(qǐng)保證的你的datadir目錄下為空,如果有文件則刪除。
mysql5.7版本通過(guò)--initialize安裝會(huì)隨機(jī)生成root密碼,請(qǐng)注意保存。
如果希望生成空密碼請(qǐng)使用--initialize-insecure
配置。
修改mysql目錄擁有者
> chown -R mysql:mysql /data/mysql
五、配置mysql配置文件my.cnf
由于我們?cè)诰幾g安裝mysql的時(shí)候設(shè)置了它的配置文件目錄為/data/mysql,所以刪掉/etc/my.cnf。
以免受影響。
> rm -rf /etc/my.cnf > vi /data/mysql/my.cnf
配置如下:
[client] default-character-set = utf8 port = 3306 socket = /data/mysql/mysql.sock [mysql] default-character-set = utf8 [mysqld] skip-name-resolve basedir = /data/mysql datadir = /data/mysql/data port = 3306 server_id = 10 socket = /data/mysql/mysql.sock character-set-server = utf8 max_connections = 200 default-storage-engine = INNODB log-bin=mysql-bin
為mysql添加開(kāi)機(jī)啟動(dòng)
> cp /data/mysql/support-files/mysql.server /etc/init.d/mysqld > chmod 755 /etc/init.d/mysqld > chkconfig --add mysqld
啟動(dòng)mysql服務(wù)
> service mysqld start
為mysql添加環(huán)境變量
> echo "export PATH=/data/mysql/bin/:$PATH" >> /etc/profile > source /etc/profile
通過(guò)上面保存過(guò)的密碼登陸mysql來(lái)修改root密碼
> mysql -uroot -p > set password=password('123456'); > alter user 'root'@'localhost' password expire never; > flush privileges;
更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL常用函數(shù)大匯總》、《MySQL日志操作技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲(chǔ)過(guò)程技巧大全》及《MySQL數(shù)據(jù)庫(kù)鎖相關(guān)技巧匯總》
希望本文所述對(duì)大家MySQL數(shù)據(jù)庫(kù)計(jì)有所幫助。
- centos7.2.1511安裝jdk1.8.0_151及mysql5.6.38的方法
- centos7安裝mysql5.6的方法
- Centos7安裝 mysql5.6.29 shell腳本
- Centos7.3下mysql5.7.18安裝并修改初始密碼的方法
- Centos7安裝和配置Mysql5.7
- centos7利用yum安裝lnmp的教程(linux+nginx+php7.1+mysql5.7)
- Centos7使用yum安裝Mysql5.7.19的詳細(xì)步驟
- Linux下Centos7安裝Mysql5.7.19的詳細(xì)教程
- 阿里云 Centos7.3安裝mysql5.7.18 rpm安裝教程
- CentOS7服務(wù)器中apache、php7以及mysql5.7的安裝配置代碼
- centos7使用rpm安裝mysql5.7的教程圖解
- centos7環(huán)境下二進(jìn)制安裝包安裝 mysql5.6的方法詳解
相關(guān)文章
mysqldump備份數(shù)據(jù)庫(kù)時(shí)排除某些庫(kù)的實(shí)例
下面小編就為大家?guī)?lái)一篇mysqldump備份數(shù)據(jù)庫(kù)時(shí)排除某些庫(kù)的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03如何安裝MySQL Community Server 5.6.39
這篇文章主要為大家詳細(xì)介紹了MySQL Community Server 5.6.39安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-09-09Linux中MySQL跳過(guò)密碼驗(yàn)證以及Bug的解決方法(圖文)
這篇文章主要介紹了Linux中MySQL跳過(guò)密碼驗(yàn)證以及Bug的解決方法,文章通過(guò)代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對(duì)大家解決問(wèn)題有一定的幫助,需要的朋友可以參考下2024-09-09初探SQL語(yǔ)句復(fù)合主鍵與聯(lián)合主鍵
這篇文章主要介紹了初探SQL語(yǔ)句復(fù)合主鍵與聯(lián)合主鍵的相關(guān)內(nèi)容,具有一定參考價(jià)值,這里給大家分享下,需要的朋友可以參考。2017-10-10ORM模型框架操作mysql數(shù)據(jù)庫(kù)的方法
ORM 全稱是(Object Relational Mapping)表示對(duì)象關(guān)系映射; 通俗理解可以理解為編程語(yǔ)言的虛擬數(shù)據(jù)庫(kù);這篇文章主要介紹了ORM模型框架操作mysql數(shù)據(jù)庫(kù)的方法,需要的朋友可以參考下2021-07-07mybatis-plus分頁(yè)傳入?yún)?shù)后sql where條件沒(méi)有l(wèi)imit分頁(yè)信息操作
這篇文章主要介紹了mybatis-plus分頁(yè)傳入?yún)?shù)后sql where條件沒(méi)有l(wèi)imit分頁(yè)信息操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11MySQL一個(gè)語(yǔ)句查出各種整形占用字節(jié)數(shù)及最大最小值的實(shí)例
下面小編就為大家?guī)?lái)一篇MySQL一個(gè)語(yǔ)句查出各種整形占用字節(jié)數(shù)及最大最小值的實(shí)例。2017-03-03mysql 添加用戶并分配select權(quán)限的實(shí)現(xiàn)
在開(kāi)發(fā)MySQL應(yīng)用程序時(shí),為了保證數(shù)據(jù)的安全性和準(zhǔn)確性,通常需要設(shè)置不同級(jí)別的用戶權(quán)限,本文主要介紹了mysql 添加用戶并分配select權(quán)限的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01