MySQL源码包编译安装
+++++++++++++++++++++++++++++++++++++++++++
標(biāo)題:MySQL數(shù)據(jù)庫實(shí)例部署
時間:2019年5月2日
內(nèi)容:MySQL源碼包進(jìn)行編譯,然后部署MySQL單實(shí)例
+++++++++++++++++++++++++++++++++++++++++++
1. MySQL源碼包編譯
1.1 安裝編譯環(huán)境
# yum install -y gcc gcc-c++
# yum install -y ncurses-devel.x86_64
# yum install -y libaio.x86_64
# yum install -y bison.x86_64
# yum install -y gcc-c++.x86_64
# yum install -y cmake.x86_64 //如果cmake版本過低,卸載低版本,安裝高版本的cmake。
# wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
# tar zxvf boost_1_59_0.tar.gz
# mv boost_1_59_0 /usr/local/boost
1.2 編譯參數(shù)詳解
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql #mysql編譯安裝目錄
-DMYSQL_DATADIR=/home/mysql3306/mysql3306 #mysql默認(rèn)數(shù)據(jù)目錄 
-DDEFAULT_CHARSET=utf8 #mysql默認(rèn)編碼
-DEXTRA_CHARSETS=all #編譯其他編碼
-DSYSCONFDIR=/etc #配置文件默認(rèn)目錄
-DENABLED_LOCAL_INFILE=1 #是否允許載入外部數(shù)據(jù)文件
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock #默認(rèn)sock文件地址
-DDEFAULT_COLLATION=utf8_general_ci #默認(rèn)排序規(guī)則 
-DMYSQL_TCP_PORT=3306 #默認(rèn)端口 
-DMYSQL_USER=mysql #默認(rèn)用戶 
-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 
-DWITH_BOOST=/usr/local/boost #指定c++ boost庫的位置
1.3 . MySQL軟件編譯
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/home/mysql3306/mysql3306 -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DSYSCONFDIR=/etc -DENABLED_LOCAL_INFILE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock-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 -DWITH_BOOST=/usr/local/boost
# make
# make install
2. MySQL單實(shí)例部署
2.1 配置MySQL安裝環(huán)境
# useradd -s /sbin/nologin mysql //該用戶不需要登錄權(quán)限
# mkdir -p /data/mysql/mysql
# mkdir -p /data/mysql/logs
# chown -R mysql:mysql /data/mysql
2.2 配置MySQL配置文件
# cp my.cnf /etc/my.cnf
# vim /etc/my3306.cnf
 修改配置文件中的與路徑相關(guān)的參數(shù)
 port = 3306
 socket = /tmp/mysql3306.sock
 datadir = /data/mysql/mysql
 server-id = 441203306 //MySQL實(shí)例的唯一標(biāo)號
 innodb_buffer_pool_size = 256M //實(shí)驗(yàn)環(huán)境下,根據(jù)實(shí)際情況分配內(nèi)存
 其他參數(shù)則需要根據(jù)具體需求進(jìn)行修改。
2.3 MySQL實(shí)例內(nèi)存分配原則
單實(shí)例:建議單獨(dú)部署在單獨(dú)的服務(wù)器中,分配內(nèi)存為服務(wù)器內(nèi)存的75%。
多實(shí)例:建議核心節(jié)點(diǎn)單獨(dú)部署在單獨(dú)的服務(wù)器中,內(nèi)存具體分配根據(jù)數(shù)據(jù)庫服務(wù)器的壓力決定。
2.4 MySQL實(shí)例初始化
# tar zxvf mysql-5.7.19.el6.tar.gz -C /usr/local/
# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --basedir=/usr/local/mysql --datadir=/data/mysql/mysql/ --user=mysql
注意:
--initialize mysql5.7初始化會創(chuàng)建隨機(jī)密碼;--initialize-insecure 初始化啟動后沒有密碼。
MySQL5.6版本的數(shù)據(jù)庫初始化腳本為mysql_install_db;MySQL5.7版本數(shù)據(jù)庫初始化腳本為mysqld。
# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
注意:啟動時先指定配置文件
# ps -ef |grep mysql
2.5 配置MySQL環(huán)境變量
# vim /etc/profile
 export MYSQL_HOME=/usr/local/mysql
 export PATH=$MYSQL_HOME/bin:$PATH:$HOME/bin
# source /etc/profile
轉(zhuǎn)載于:https://www.cnblogs.com/lv1572407/p/10427480.html
總結(jié)
以上是生活随笔為你收集整理的MySQL源码包编译安装的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 什么是servlet及其生命周期
 - 下一篇: Ant Desgin Pro 修改登录后