本篇內(nèi)容介紹了“MySQL自動(dòng)安裝腳本分享”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的江孜網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
環(huán)境要求:centos:6.8
MySQL:5.7.20
MySQL安裝文件名:mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
MySQL源文件路徑:/usr/local/src
MYSQL腳本文件:/usr/local/src/install_mysql.sh
1、腳本如下:
#/bin/sh
#px 2017-11-29
#mysql install
#email:kitten-pan@163.com & 752684428
#version 2.0
#mysql-version mysql5.7.20
source_path=/usr/local/src
install_path=/usr/local/mysql
install_name=mysql-5.7.20-linux-glibc2.12-x86_64
##檢測(cè)本機(jī)環(huán)境
env_fun()
{
echo "============檢測(cè)本機(jī)環(huán)境,please wait ..."
username=`cat /etc/passwd |grep mysql|cut -c 1-5`
if [ "$username" = "mysql" ];then
echo "MySQL account is exits..."
return 10
else
echo "mysql account is not exits,ready add..."
groupadd mysql
useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql
return 12
fi
}
##判斷MySQL是否安裝
check_fun()
{
rpm_name=`rpm -aq |grep mysql-server`
echo $rpm_name
if [ ! $rpm_name ];then
echo "begin check the source install,please wait for a moment..."
if [ -d $install_path ];then
echo "source install is exist,quit..."
exit 0
else
echo "本機(jī)未安裝MySQL,稍后為你安裝..."
install_fun
op_fun
fi
else
echo -n "rpm MySQL已經(jīng)安裝,是否刪除?[yes|no]"
read select
if [ $select = yes ];then
rpm -e $rpm_name --nodeps
rm -rf /var/log/mysqld.log
check_fun
else
exit 0
fi
fi
}
###安裝MySQL
install_fun()
{
read -p "Input a mysql version:" -t 30 mysql_version
read -p "Input a mysql port:" -t 30 mysql_port
read -p "Input a mysql_server_id:" -t 30 mysql_server_id
cd $source_path && echo "解壓中,please waiting..."
tar -zxvf ${install_name}.tar.gz && mv $install_name $install_path
##創(chuàng)建數(shù)據(jù)目錄
mkdir -pv /data/mysqldata
###給MySQL目錄的MySQL賬號(hào)權(quán)限
cd /usr/local && chown mysql.mysql mysql
chown -R mysql.mysql /data/mysqldata
cd $install_path && bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysqldata
cd support-files && cp -rf mysql.server /etc/init.d/mysqld
sed -i 's#datadir\=\/usr\/local\/mysql\/data#\datadir\=\/data\/mysqldata#g' /etc/init.d/mysqld
cat > /etc/my.cnf << EOF
[client]
port = 3309
socket = /tmp/mysql.sock
default-character-set = utf8
[mysqld]
##mysql-version=5.7.20
port = 3309
socket = /tmp/mysql.sock
datadir = /data/mysqldata
basedir = /usr/local/mysql
pid-file = /data/mysqldata/mysqld.pid
user = mysql
server-id = 1
lower_case_table_names = 1
character-set-server = utf8
back_log = 300
max_connections = 1000
max_connect_errors = 6000
open_files_limit = 65535
table_open_cache = 128
max_allowed_packet = 4M
binlog_cache_size = 1M
max_heap_table_size = 8M
tmp_table_size = 16M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
join_buffer_size = 8M
key_buffer_size = 4M
thread_cache_size = 8
query_cache_type = 0
query_cache_size = 2M
query_cache_limit = 2M
ft_min_word_len = 4
log_bin = mysql-bin
binlog_format = row
expire_logs_days = 30
log-error=/data/mysqldata/mysqld.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /data/mysqldata/mysql-slow.log
performance_schema = 0
explicit_defaults_for_timestamp
skip-external-locking
default-time_zone = '+8:00'
default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_data_file_path = ibdata1:300M:autoextend
innodb_open_files = 5000
innodb_buffer_pool_size = 2048M
innodb_write_io_threads = 4
innodb_read_io_threads = 8
innodb_thread_concurrency = 0
innodb_purge_threads = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 128M
innodb_log_file_size = 256M
innodb_log_files_in_group = 2
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
bulk_insert_buffer_size = 8M
myisam_sort_buffer_size = 8M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
interactive_timeout = 28800
wait_timeout = 300
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
EOF
echo "export PATH=/$PATH:/usr/local/mysql/bin">>/etc/profile
echo 'export MYSQL_PS1="(\u@\h:\p) [\d]>"' >> /etc/profile
source /etc/profile
service mysqld restart
}
op_fun()
{
chmod 755 /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 345 mysqld on
}
main(){
echo "###==================================================###"
echo "###welcome to make install mysql with this script###"
echo "###copyright 2013 by px###"
echo "###==================================================###"
sleep 5
env_fun
re=$?
if [ re = 10 ];then
check_fun
else
check_fun
fi
}
main
exit 0
2、執(zhí)行自動(dòng)安裝腳本
需要填寫MySQL的版本信息、端口信息、serverid信息等
點(diǎn)擊(此處)折疊或打開
sh install_mysql.sh
###==================================================###
###welcome to make install mysql with this script###
###copyright 2013 by px###
###==================================================###
============檢測(cè)本機(jī)環(huán)境,please wait ...
mysql account is not exits,ready add...
begin check the source install,please wait for a moment...
本機(jī)未安裝MySQL,稍后為你安裝...
Input a mysql version:5.7.20
Input a mysql port:3309
Input a mysql_server_id:1
解壓中,please waiting...
3、自動(dòng)安裝完畢 啟動(dòng)
# service mysqld restart
MySQL server PID file could not be found! [FAILED]
Starting MySQL............. [ OK ]
4、登入MySQL 修改密碼
點(diǎn)擊(此處)折疊或打開
[root@ct562 mysqldata]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.20-log
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
(root@localhost:mysql.sock) [(none)]>
(root@localhost:mysql.sock) [(none)]>
(root@localhost:mysql.sock) [(none)]>
(root@localhost:mysql.sock) [(none)]>
(root@localhost:mysql.sock) [(none)]>
(root@localhost:mysql.sock) [(none)]>set password for root@'localhost' =PASSWORD('sysdba@321')
“MySQL自動(dòng)安裝腳本分享”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
當(dāng)前文章:MySQL自動(dòng)安裝腳本分享
當(dāng)前URL:http://jinyejixie.com/article28/ppegjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、移動(dòng)網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、做網(wǎng)站、外貿(mào)建站、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)