黨建設(shè)網(wǎng)站營(yíng)銷(xiāo)咨詢(xún)公司排名前十
MySQL安裝步驟:
1、相關(guān)說(shuō)明
1.1、編譯參數(shù)的說(shuō)明
-DCMAKE_INSTALL_PREFIX | 安裝到的軟件目錄 |
---|---|
-DMYSQL_DATADIR | 數(shù)據(jù)文件存儲(chǔ)的路徑 |
-DSYSCONFDIR | 配置文件路徑 (my.cnf) |
-DENABLED_LOCAL_INFILE=1 | 使用localmysql客戶(hù)端的配置 |
-DWITH_PARTITION_STORAGE_ENGINE | 使mysql支持分表 |
-DEXTRA_CHARSETS | 安裝支持的字符集 |
-DDEFAULT_CHARSET | 默認(rèn)字符集使用 這里配置為utf8mb4 |
-DDEFAULT_COLLATION | 連接字符集 |
-DWITH_SSL | 開(kāi)啟mysql的ssl使用 |
1.2、初始化參數(shù)說(shuō)明
--basedir | 安裝到的軟件目錄 |
---|---|
--datadir | 數(shù)據(jù)文件存儲(chǔ)路徑 |
--user | mysql使用的用戶(hù) |
2、腳本實(shí)現(xiàn)安裝及其初始化
第一步:創(chuàng)建一個(gè)mysql系統(tǒng)賬號(hào)(沒(méi)有這個(gè)賬號(hào)mysql無(wú)法運(yùn)行)
# useradd -s /sbin/nologin -M mysql
第二步:對(duì)軟件進(jìn)行解壓 (可以給博主留言)
# cd /root/soft
# tar zxvf mysql-5.6.33.tar.gz
第三步:安裝依賴(lài)
# yum install -y cmake
# yum install -y ncurses-devel
第四步:編譯安裝
# cd mysql-5.6.33
# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci\
-DWITH_SSL=bundled# make && make install
第四步:配置文件
# rm -rf /etc/my.cnf
# cp? /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
第五步:#授權(quán)并初始化數(shù)據(jù)庫(kù)
# chown -R mysql:mysql /usr/local/mysql
# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql?
第六步:#配置服務(wù)、開(kāi)機(jī)自啟動(dòng)和環(huán)境變量
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# service mysqld start
# chkconfig --add mysqld
# echo 'PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile# source /etc/profile
?第七步:設(shè)置密碼與環(huán)境變量 (生產(chǎn)環(huán)境一定要復(fù)雜一些)
# cd /usr/local/mysql
# bin/mysqladmin -u root password '123456'
第八步:查看安裝是否成功
如果輸入密碼可以進(jìn)入上面的畫(huà)面,說(shuō)明已經(jīng)安裝成功!!
拓展,平時(shí)公司為了方便都會(huì)邊寫(xiě)一個(gè)shell腳本安裝,這樣不用每次都是分開(kāi)跑命令,腳本如下:
#!/bin/bash
#源碼編譯安裝MySQL
mysql_install() {#1、創(chuàng)建用戶(hù)
`id mysql` &>/dev/null
[ $? -ne 0 ] && useradd -s /sbin/nologin -M mysql
#2、解決依賴(lài)
yum install -y cmake
yum install -y ncurses-devel
#3、編譯安裝
cd /root/soft
tar zxvf mysql-5.6.33.tar.gz
cd mysql-5.6.33
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci\
-DWITH_SSL=bundled
make && make install
#配置文件
rm -rf /etc/my.cnf
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
#授權(quán)并初始化數(shù)據(jù)庫(kù)
chown -R mysql:mysql /usr/local/mysql
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
#配置服務(wù)、自啟動(dòng)和環(huán)境變量
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
service mysqld start
chkconfig --add mysqld
echo 'PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
#刪除匿名用戶(hù)
#設(shè)置root域名的密碼
rpm -qa|grep expect
if [ $? -ne 0 ];thenyum -y install expect
fi
#導(dǎo)入環(huán)境變量PATH
export PATH=/usr/local/mysql/bin:$PATH
#初始化root密碼 刪除匿名用戶(hù)
echo '#!/usr/bin/expect
set timeout 60
spawn mysql_secure_installation
expect {
"enter for none" { send "\r"; exp_continue}
"Y/n" { send "Y\r" ; exp_continue}
"password" { send "123456\r"; exp_continue}
"Cleaning up" { send "\r"}
}
interact ' > mysql_secure_installation.exp
chmod +x mysql_secure_installation.exp
./mysql_secure_installation.exp
}
#腳本開(kāi)始時(shí)間
start_time=`date +%s`
#執(zhí)行的腳本代碼
mysql_install
#腳本結(jié)束時(shí)間
end_time=`date +%s`
#腳本執(zhí)行花費(fèi)時(shí)間
const_time=$((end_time-start_time))
echo 'Take time is: '$const_time's'
?腳本說(shuō)明:
安裝完mysql-server 會(huì)提示可以運(yùn)行mysql_secure_installation。運(yùn)行mysql_secure_installation會(huì)執(zhí)行幾個(gè)設(shè)置:
? a)為root用戶(hù)設(shè)置密碼
? b)刪除匿名賬號(hào)
? c)取消root用戶(hù)遠(yuǎn)程登錄
? d)刪除test庫(kù)和對(duì)test庫(kù)的訪問(wèn)權(quán)限
? e)刷新授權(quán)表使修改生效
通過(guò)這幾項(xiàng)的設(shè)置能夠提高mysql庫(kù)的安全。建議生產(chǎn)環(huán)境中mysql安裝這完成后一定要運(yùn)行一次mysql_secure_installation,
如果有什么好的安裝方法,可以留言跟博主交流。