centeros 7源码安装mysql_Linux下源码编译安装MySql,centeros7
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é)
以上是生活随笔為你收集整理的centeros 7源码安装mysql_Linux下源码编译安装MySql,centeros7的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mybatis中mysql流式读取_My
- 下一篇: python最全知识点_史上最全的Pyt