// 當(dāng)時我裝這個也是折騰了一下午 , 所以寫一個筆記記錄一下;
//如果哪里有問題的話我們可以一起討論( qq: 2970911340,郵箱+@qq.com),這也是我第一次寫博客 練練手
1. 安cmake工具
# yum install -y cmake
2. 創(chuàng)建mysql用戶
#useradd -s /sbin/nologin mysql //設(shè)置為非登陸用戶(安全)
3. 創(chuàng)建數(shù)據(jù)目錄,該目錄是用于數(shù)據(jù)庫初始化時生成的庫、表、日志等,不要直接在該目錄下存放東西
# mkdir -p /mysql/data //目錄名隨意(后面設(shè)置時要對應(yīng)),但目錄所在分區(qū)剩余空間不能小于1g(不是很清楚)
# chown mysql.mysql /mysql/ -R // 將該目錄的屬主屬組設(shè)置為mysql
4.安裝編譯時所需要的開發(fā)包等
# yum install ncurses-devel openssl-devel gcc* -y
5.解壓mysql二進(jìn)制包,并編譯
# cd /packet //cd 到 存放包的目錄下
# tar xvf mysql-5.6.22.tar.gz
# cd mysql-5.6.22
//直接開始編譯,注意:一定要進(jìn)入解壓后的mysql包里在編輯 然后 cmake 接一大堆參數(shù) 有一些可以省略的
#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_SSL=bundled
// -DCMAKE_INSTALL_PREFIX=/usr/local/mysql //指定安裝目錄
//-DMYSQL_DATADIR=/mysql/data //指定數(shù)據(jù)目錄,上面創(chuàng)建的那個
//其它的略。。。
6.錯誤解決(一般來說按照上面來是不會出錯的)
# rm -rf CMakeCache.txt
//當(dāng)編譯出現(xiàn)錯誤后 一定要先刪除 CMakeCache.txt 再重新編譯,該文件編譯時會自動生成有點(diǎn)像 “記賬本 ”記錄編譯時的一些信息。。。
//錯誤大全暫時先放一放后面更新。。。
7.安裝
# make -j 4 // -j 4 使用4核編譯,因?yàn)榫幾g很要好久所以多給它幾個u
# make install
8.初始化
# yum install -y perl-Data-Dumper //會提示安裝這個
# /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/mysql/data/ --basedir=/usr/local/mysql
//初始化完畢后可以在 /mysql/data/ 目錄下看到生成的基本庫和日志等
// 里面 client21.err (主機(jī)名.err)會記錄 mysql服務(wù)啟動 重啟 關(guān)閉時的日志,如果啟動有問題時可以看該日志
# tail -50 /mysql/data/client21.err
9. 啟動配置,啟動
# cp /usr/local/mysql/mysql-test/include/default_my.cnf /etc/my.cnf //該文件是mysql服務(wù)的配置文件
# cat > /etc/my.cnf //將里面的內(nèi)容都刪除掉否則后面會有問題,也可以自己添加一些選項(xiàng)進(jìn)去
# /usr/local/mysql/bin/mysqld_safe --user=mysql & //放入后臺啟動,不加 '&'當(dāng)前終端就會廢掉,可以試試看
//當(dāng)然中間也可能會有一些令人頭疼的錯誤,后面有時間會跟新...
eg:排查思路看提示信息,錯誤日志的地址 , 從哪啟動
1. selinux 是否關(guān)閉 //setenforce 0 臨時關(guān)閉
2. 是否正常初始化
3. cp的/etc/my.cf 配置文件里的數(shù)據(jù)路徑 'datadir '是否正確
10.將命令定義成系統(tǒng)命令(可以忽略這一步)
# vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH //只需要添加這一行就行
# source /etc/profile.d/mysql.sh
11.設(shè)置開機(jī)啟動
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld //將mysqld添加到chkconfig管理的開機(jī)啟動中
# chkconfig --list | grep mysqld //查看mysqld在各運(yùn)行級別中是否開機(jī)啟動
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
而且設(shè)置完后 可以直接 用 systemctl restart | start mysqld 控制了,( stop 用不了,暫時不知道為啥 可以先用 ' pkill mysqld ' 代替)
12. 本機(jī)測試訪問 , 在本機(jī)上下載mysql客戶端(不是服務(wù)哦)
# yum install -y mysql //這樣裝的是mariadb客戶端,體驗(yàn)會比我的mysql好一點(diǎn) 其實(shí)都是一樣的
# mysql //直接進(jìn)入 ,測試一下有沒有問題
//如果能正常讀寫說明沒有問題, very good !
總結(jié)
以上所述是小編給大家介紹的Linux下二進(jìn)制編譯安裝MySql centos7的教程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!