本文實例講述了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ù)庫目錄:/data/mysql/data
三、安裝準(zhǔn)備
1、添加用戶
> useradd -s /sbin/nologin mysql
2、建立目錄
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
(*注意,如果出錯,需刪除CMakeCache.txt,重新運行配置)
關(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
#快捷鍵功能(我沒用過)
-DWITH_READLINE=1
#連接數(shù)據(jù)庫socket路徑
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock
#端口
-DMYSQL_TCP_PORT=3306
#允許從本地導(dǎo)入數(shù)據(jù)
-DENABLED_LOCAL_INFILE=1
#安裝支持數(shù)據(jù)庫分區(qū)
-DWITH_PARTITION_STORAGE_ENGINE=1
#安裝所有的字符集
-DEXTRA_CHARSETS=all
#默認字符
-DDEFAULT_CHARSET=utf8
#校驗字符
-DDEFAULT_COLLATION=utf8_general_ci
#會自動下載boost
-DDOWNLOAD_BOOST=1
#指定boost目錄
-DWITH_BOOST=/usr/local/boost
編譯安裝
復(fù)制配置文件
> cp /data/mysql/support-files/my-default.cnf /data/mysql/my.cnf
初始化數(shù)據(jù)庫
> /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'
請保證--defaults-file
配置選項在最前面。
如果出現(xiàn)如下信息:
[ERROR] --initialize specified but the data directory has files in it. Aborting.
請保證的你的datadir目錄下為空,如果有文件則刪除。
mysql5.7版本通過--initialize安裝會隨機生成root密碼,請注意保存。
如果希望生成空密碼請使用--initialize-insecure
配置。
修改mysql目錄擁有者
> chown -R mysql:mysql /data/mysql
五、配置mysql配置文件my.cnf
由于我們在編譯安裝mysql的時候設(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添加開機啟動
> cp /data/mysql/support-files/mysql.server /etc/init.d/mysqld
> chmod 755 /etc/init.d/mysqld
> chkconfig --add mysqld
啟動mysql服務(wù)
為mysql添加環(huán)境變量
> echo "export PATH=/data/mysql/bin/:$PATH" >> /etc/profile
> source /etc/profile
通過上面保存過的密碼登陸mysql來修改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存儲過程技巧大全》及《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》
希望本文所述對大家MySQL數(shù)據(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的詳細步驟
- Linux下Centos7安裝Mysql5.7.19的詳細教程
- 阿里云 Centos7.3安裝mysql5.7.18 rpm安裝教程
- CentOS7服務(wù)器中apache、php7以及mysql5.7的安裝配置代碼
- centos7使用rpm安裝mysql5.7的教程圖解
- centos7環(huán)境下二進制安裝包安裝 mysql5.6的方法詳解