Linux編譯安裝MySQL5.6

原文地址:http://www.cnblogs.com/shijiaqi1066/p/4311061.html

此處使用的MySQL為5.6版本夷恍。
卸載MySQL
首先卸載由RPM包安裝的MySQL。系統(tǒng)自帶的MySQL本質(zhì)也是由RPM包安裝的舌剂。
查詢系統(tǒng)中MySQL的相關(guān)程序:

rpm -qa | grep mysql
image.png

卸載MySQL相關(guān)程序:

 rpm -e 包名  或   rpm -e --nodeps 包名

例:卸載mysql-libs

rpm -e mysql-libs    #卸載
image.png

說明:若存在依賴關(guān)系气破,則無法被卸載聊浅。

忽略依賴關(guān)系卸載:

rpm -e --nodeps mysql-libs
image.png

刪除老版本的MySQL的開發(fā)頭文件和庫(若沒有使用RPM版本的MySQL,則該步驟不會使用到)

rm -fr /usr/lib/mysqlrm -fr /usr/include/mysql

注意:卸載后/var/lib/mysql中的數(shù)據(jù)及/etc/my.cnf不會刪除现使,如果確定沒用后就手工刪除

rm -f /etc/my.cnfrm -fr /var/lib/mysql

編譯安裝MySQL

配置編譯環(huán)境

MySQL5.5及以上版本都開始用cmake方式進(jìn)行配置編譯低匙。(MySQL5.0,5.1 均使用configure進(jìn)行配置。)所以需要先安裝好cmake

方法一:

yum-y install make gcc-c++ cmake bison-devel ncurses-devel

方法二:

CentOS5.5的yum沒有cmake碳锈,所以可以選擇編譯安裝cmake顽冶。

安裝編譯源碼所需的工具和庫

yum install gcc gcc-c++ ncurses-devel perl 

安裝cmake,從 www.cmake.org 下載源碼并編譯安裝

wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz  tar -xzvf cmake-2.8.10.2.tar.gz

cd cmake-2.8.10.2  

./bootstrap ; make; make install

下載MySQL源碼包后開始編譯

tar -zxf mysql-5.6.23.tar.gz

cd mysql-5.6.23

一些準(zhǔn)備工作

設(shè)置MySQL用戶和組

新增mysql用戶組

groupadd mysql

新增mysql用戶

useradd -r -g mysql mysql

新建MySQL所需要的目錄

新建mysql安裝目錄

mkdir -p /usr/local/mysql

新建mysql數(shù)據(jù)庫數(shù)據(jù)文件目錄

mkdir -p /data/mysqldb

編譯安裝

CMake執(zhí)行腳本為:

cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysqldb \-DMYSQL_TCP_PORT=3306 \-DENABLE_DOWNLOADS=1

說明:

網(wǎng)上有些文章中給出的cmake命令如下:

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DENABLED_LOCAL_INFILE=1 \-DMYSQL_DATADIR=/data/mysql \-DMYSQL_USER=mysql \-DMYSQL_TCP_PORT=3306

編譯后警告顯示:

image.png

即MYSQL_USER等模塊式不可用的售碳。

此時强重,若需要重新配置,請刪除CMakeCache.txt文件:

rm CMakeCache.txt

去掉MYSQL_USER等不可被用的選項后贸人,再重新編譯即可间景。

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DENABLED_LOCAL_INFILE=1 \-DMYSQL_DATADIR=/data/mysql \-DMYSQL_TCP_PORT=3306

編譯 & 安裝

makemake install

這兩步都需要很長時間,請耐心等待艺智。

修改mysql目錄所有者和組

修改mysql安裝目錄

cd /usr/local/mysqlchown -R mysql:mysql .

修改mysql數(shù)據(jù)庫文件目錄

cd /data/mysqldbchown -R mysql:mysql .

說明:

chown 最后跟文件名倘要。此處使用".",表示當(dāng)前目錄力惯。

啟動MySQL

初始化mysql數(shù)據(jù)庫

cd /usr/local/mysql

scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb
image.png

...... ......

image.png

說明:

從打印日志可以看出碗誉,mysql_install_db命令的作用是生成MySQL系統(tǒng)表召嘶。并且最后在mysql目錄下生成一個my.cnf文件父晶。

--user=mysql 作用是指定運行mysqld進(jìn)程的用戶名。設(shè)置這個用戶以后弄跌,所有通過mysqld進(jìn)程創(chuàng)建的文件(如日志等)都會屬于這個用戶甲喝。

image.png

mysql配置文件


cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

注:如果/etc/my.cnf文件存在,則覆蓋铛只。

關(guān)于MySQL配置文件存在多個訪問位置埠胖。MySQL會以此訪問糠溜,后訪問到的配置會覆蓋先前的配置。

MySQL訪問配置文件的訪問路徑與訪問順序如下:

image.png

配置MySQL


[client]

#password       = your_password

port            = 3306 

socket          = /data/mysql/mysql.sock

default-character-set=utf8

# Here follows entries for some specific programs

# The MySQL server

[mysqld]

port            = 3306 

### **character_set_server=utf8**

basedir=/data/mysql

datadir=/data/mysql/data

socket          = /data/mysql/mysql.sock

skip-external-locking

key_buffer_size = 16M

max_allowed_packet = 1M

table_open_cache = 64 

sort_buffer_size = 512K

net_buffer_length = 8K

read_buffer_size = 256K

read_rnd_buffer_size = 512K

myisam_sort_buffer_size = 8M

將MySQL執(zhí)行命令添加入PATH

vim /etc/profile

在文件的末尾添加內(nèi)容:

PATH=$PATH:/usr/local/mysql/bin

export PATH

保持退出后,執(zhí)行:

source /etc/profile

將MySQL設(shè)置為系統(tǒng)服務(wù)并啟動服務(wù)

cp support-files/mysql.server /etc/init.d/mysqld

即,MySQL可以以如下形式啟動:

service mysqld start

如果報錯 "Starting MySQL. ERROR! The server quit without updating PID file (/data/mysql/rhelubuntu.com.pid). " 則修改

vim  /etc/init.d/mysqld

修改basedir=/usr/local/mysql -----mysql安裝位置

修改datadir=/var/data/mysqldata -----mysql數(shù)據(jù)文件存放位置

一般修改好這個再重新啟動mysql應(yīng)該不會報錯了读宙。

檢查MySQL是否已經(jīng)啟動:

netstat -tulnp | grep 3306

配置用戶

使用MySQL客戶端連接MySQL服務(wù)器

mysql -u root -p

初始密碼為空屁奏,如果能登陸上,則安裝成功檐蚜。

設(shè)置mysql管理員密碼

mysqladmin -u root password "123456";

則123456即為新密碼。

設(shè)置mysql 遠(yuǎn)程登錄

grant all on *.* to root@'%';

flush privileges;

更多配置,略锤悄。

配置防火墻

防火墻的3306端口默認(rèn)沒有開啟,若要遠(yuǎn)程訪問嘉抒,需要開啟這個端口

打開/etc/sysconfig/iptables

在"-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT"零聚,下添加:

-A INPUT -m state --state NEW -m tcp -p -dport 3306 -j ACCEPT

然后保存,并關(guān)閉該文件些侍,在終端內(nèi)運行下面的命令隶症,刷新防火墻配置:

service iptables restart

CentOS 7中默認(rèn)使用Firewalld做防火墻,所以修改iptables后岗宣,在重啟系統(tǒng)后沿腰,根本不管用。

Firewalld中添加端口方法如下:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末狈定,一起剝皮案震驚了整個濱河市颂龙,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌纽什,老刑警劉巖措嵌,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異芦缰,居然都是意外死亡企巢,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進(jìn)店門让蕾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來浪规,“玉大人,你說我怎么就攤上這事探孝∷裥觯” “怎么了?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵顿颅,是天一觀的道長。 經(jīng)常有香客問我,道長庇配,這世上最難降的妖魔是什么斩跌? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮捞慌,結(jié)果婚禮上耀鸦,老公的妹妹穿的比我還像新娘。我一直安慰自己啸澡,他們只是感情好揭糕,可當(dāng)我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著锻霎,像睡著了一般著角。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上旋恼,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天吏口,我揣著相機與錄音,去河邊找鬼冰更。 笑死产徊,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蜀细。 我是一名探鬼主播舟铜,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼奠衔!你這毒婦竟也來了谆刨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤归斤,失蹤者是張志新(化名)和其女友劉穎痊夭,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體脏里,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡她我,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了迫横。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片番舆。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖矾踱,靈堂內(nèi)的尸體忽然破棺而出恨狈,到底是詐尸還是另有隱情,我是刑警寧澤介返,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布拴事,位于F島的核電站,受9級特大地震影響圣蝎,放射性物質(zhì)發(fā)生泄漏刃宵。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一徘公、第九天 我趴在偏房一處隱蔽的房頂上張望牲证。 院中可真熱鬧,春花似錦关面、人聲如沸坦袍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽捂齐。三九已至,卻和暖如春缩抡,著一層夾襖步出監(jiān)牢的瞬間奠宜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工瞻想, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留压真,地道東北人。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓蘑险,卻偏偏與公主長得像滴肿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子佃迄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,440評論 2 348