Linux下二進(jìn)制編譯安裝MySql centos7的教程
// 當(dāng)時(shí)我裝這個(gè)也是折騰了一下午 , 所以寫(xiě)一個(gè)筆記記錄一下;
//如果哪里有問(wèn)題的話我們可以一起討論( qq: 2970911340,郵箱+@qq.com),這也是我第一次寫(xiě)博客 練練手
1. 安cmake工具
# yum install -y cmake
2. 創(chuàng)建mysql用戶
#useradd -s /sbin/nologin mysql //設(shè)置為非登陸用戶(安全)
3. 創(chuàng)建數(shù)據(jù)目錄,該目錄是用于數(shù)據(jù)庫(kù)初始化時(shí)生成的庫(kù)、表、日志等,不要直接在該目錄下存放東西
# mkdir -p /mysql/data //目錄名隨意(后面設(shè)置時(shí)要對(duì)應(yīng)),但目錄所在分區(qū)剩余空間不能小于1g(不是很清楚) # chown mysql.mysql /mysql/ -R // 將該目錄的屬主屬組設(shè)置為mysql
4.安裝編譯時(shí)所需要的開(kāi)發(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 //直接開(kāi)始編譯,注意:一定要進(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)建的那個(gè) //其它的略。。。
6.錯(cuò)誤解決(一般來(lái)說(shuō)按照上面來(lái)是不會(huì)出錯(cuò)的)
# rm -rf CMakeCache.txt //當(dāng)編譯出現(xiàn)錯(cuò)誤后 一定要先刪除 CMakeCache.txt 再重新編譯,該文件編譯時(shí)會(huì)自動(dòng)生成有點(diǎn)像 “記賬本 ”記錄編譯時(shí)的一些信息。。。 //錯(cuò)誤大全暫時(shí)先放一放后面更新。。。
7.安裝
# make -j 4 // -j 4 使用4核編譯,因?yàn)榫幾g很要好久所以多給它幾個(gè)u # make install
8.初始化
# yum install -y perl-Data-Dumper //會(huì)提示安裝這個(gè) # /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/mysql/data/ --basedir=/usr/local/mysql //初始化完畢后可以在 /mysql/data/ 目錄下看到生成的基本庫(kù)和日志等 // 里面 client21.err (主機(jī)名.err)會(huì)記錄 mysql服務(wù)啟動(dòng) 重啟 關(guān)閉時(shí)的日志,如果啟動(dòng)有問(wèn)題時(shí)可以看該日志 # tail -50 /mysql/data/client21.err
9. 啟動(dòng)配置,啟動(dòng)
# cp /usr/local/mysql/mysql-test/include/default_my.cnf /etc/my.cnf //該文件是mysql服務(wù)的配置文件 # cat > /etc/my.cnf //將里面的內(nèi)容都刪除掉否則后面會(huì)有問(wèn)題,也可以自己添加一些選項(xiàng)進(jìn)去 # /usr/local/mysql/bin/mysqld_safe --user=mysql & //放入后臺(tái)啟動(dòng),不加 '&'當(dāng)前終端就會(huì)廢掉,可以試試看
//當(dāng)然中間也可能會(huì)有一些令人頭疼的錯(cuò)誤,后面有時(shí)間會(huì)跟新...
eg:排查思路看提示信息,錯(cuò)誤日志的地址 , 從哪啟動(dòng)
1. selinux 是否關(guān)閉 //setenforce 0 臨時(shí)關(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è)置開(kāi)機(jī)啟動(dòng)
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld # chkconfig --add mysqld //將mysqld添加到chkconfig管理的開(kāi)機(jī)啟動(dòng)中 # chkconfig --list | grep mysqld //查看mysqld在各運(yùn)行級(jí)別中是否開(kāi)機(jī)啟動(dòng) mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
而且設(shè)置完后 可以直接 用 systemctl restart | start mysqld 控制了,( stop 用不了,暫時(shí)不知道為啥 可以先用 ' pkill mysqld ' 代替)
12. 本機(jī)測(cè)試訪問(wèn) , 在本機(jī)上下載mysql客戶端(不是服務(wù)哦)
# yum install -y mysql //這樣裝的是mariadb客戶端,體驗(yàn)會(huì)比我的mysql好一點(diǎn) 其實(shí)都是一樣的 # mysql //直接進(jìn)入 ,測(cè)試一下有沒(méi)有問(wèn)題
//如果能正常讀寫(xiě)說(shuō)明沒(méi)有問(wèn)題, very good !
總結(jié)
以上所述是小編給大家介紹的Linux下二進(jìn)制編譯安裝MySql centos7的教程,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
詳解如何在 CentOS 7 中安裝或升級(jí)最新的內(nèi)核
這篇文章主要介紹了詳解如何在 CentOS 7 中安裝或升級(jí)最新的內(nèi)核,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03基于Centos7 部署Varnish緩存代理服務(wù)器
這篇文章主要介紹了基于Centos7 部署Varnish緩存代理服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01詳解CentOS安裝tomcat并且部署Java Web項(xiàng)目
本篇文章主要介紹了CentOS安裝tomcat并且部署Java Web項(xiàng)目,具有一定的參考價(jià)值,有需要的可以了解一下。2016-11-11Apache 本地服務(wù)器啟動(dòng)后又自動(dòng)停止解決辦法
setup_inherited_listeners(), WSASocket failed to open the inherited socket2010-04-04linux內(nèi)核copy_{to, from}_user()的思考
本文即將介紹copy_{to,from}_user()接口的使用應(yīng),它是kernel space和user space溝通的橋梁,接下來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-08-08