日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linux下全自動編譯安裝MySQL

mysql的編譯安裝,在 linux下MySQL的編譯安裝圖文詳述 中已經(jīng)說明了,但是還是比較麻煩,尤其是一大堆命令,來手動執(zhí)行,稍有不慎,就會出錯。生產(chǎn)上一般都是先在本地測試環(huán)境進(jìn)行自動化測試,如果ok,那么就在生產(chǎn)上進(jìn)行自動化安裝,省事,省力,安全。

本文環(huán)境:

CentOS6.5x64 ,mysql版本:mysql-5.6.26。 采用自動化編譯安裝。

相關(guān)準(zhǔn)備工作:

熟知sed 文本編譯命令,expect交互式腳本的使用。

提前將需要安裝的mysql安裝包放在/root下面,當(dāng)然了,下載的過程也可以一并寫在腳本中,為了節(jié)約時間,下載過程一般不會寫在腳本中,而且好多生產(chǎn)環(huán)境是不能夠連接外網(wǎng)的。

[root@xiaolyu76 ~]# ls

anaconda-ks.cfg  install.log install.log.syslog mysql-5.6.26.tar.gz  mysql_install_auto.sh

下面是我的腳本:mysql_install_auto.sh 的內(nèi)容:

[root@xiaolyu76 ~]# cat mysql_install_auto.sh

#!/bin/bash
MYSQL_PASSWD="123456"
yum remove  -y mysql mysql-server
yum install -y cmake    ncurses-devel
tar xf mysql-5.6.26.tar.gz -C /usr/local/src/
cd /usr/local/src/mysql-5.6.26
useradd -M -s /sbin/nologin mysql
cmake \
 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
 -DDEFAULT_CHARSET=utf8 \
 -DDEFAULT_COLLATION=utf8_general_ci \
 -DWITH_EXTRA_CHARSETS=all \
 -DWITH_MYISAM_STORAGE_ENGINE=1\
 -DWITH_INNOBASE_STORAGE_ENGINE=1\
 -DWITH_MEMORY_STORAGE_ENGINE=1\
 -DWITH_READLINE=1\
 -DENABLED_LOCAL_INFILE=1\
 -DMYSQL_DATADIR=/usr/local/mysql/data \
 -DMYSQL-USER=mysql
make -j 4 && make install
cd && chown -R mysql:mysql /usr/local/mysql/
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
sed  -i 's%^basedir=%basedir=/usr/local/mysql%' /etc/init.d/mysqld
sed  -i 's%^datadir=%datadir=/usr/local/mysql/data%' /etc/init.d/mysqld
chkconfig mysqld on
/usr/local/mysql/scripts/mysql_install_db \
 --defaults-file=/etc/my.cnf  \
 --basedir=/usr/local/mysql/  \
 --datadir=/usr/local/mysql/data/  \
 --user=mysql
ls /usr/local/mysql/data/
ln -s /usr/local/mysql/bin/* /bin/
service mysqld start
echo "now let's begin mysql_secure_installation "
if [ ! -e /usr/bin/expect ]
 then  yum install expect -y
fi
echo '#!/usr/bin/expect
set timeout 60
set password [lindex $argv 0]
spawn mysql_secure_installation
expect {
"enter for none" { send "\r"; exp_continue}
"Y/n" { send "Y\r" ; exp_continue}
"password" { send "$password\r"; exp_continue}
"Cleaning up" { send "\r"}
}
interact ' > mysql_secure_installation.exp
chmod +x mysql_secure_installation.exp
./mysql_secure_installation.exp $MYSQL_PASSWD

[root@xiaolyu76 ~]# sh  mysql_install_auto.sh    //直接執(zhí)行該腳本即可。

腳本是shell腳本,最后mysql數(shù)據(jù)庫安全初始化的時候,生成一個expect的腳本:mysql_secure_installation.exp。

說明:為了增強(qiáng)腳本的整齊美觀和可讀性,去掉了很多if 判斷以及echo $?判斷腳本是否執(zhí)行成功。

本文腳本經(jīng)測試完全正確。


文章名稱:Linux下全自動編譯安裝MySQL
分享URL:http://www.dlmjj.cn/article/ccdepcp.html