【shell 每日一練6】初始化安裝Mysql並修改密碼


一、簡單實現mysql一鍵安裝

參考:【第二章】MySQL數據庫基於Centos7.3-部署

此腳本前提條件是防火牆,selinux都已經設置完畢:

[root@web130 ~]# cat InstallMysql.sh 
#!/bin/bash
#2018-09-04
#旅行者-Travel
#卸載自帶maridb
yum -y remove mari*
rm -rf /var/lib/mysql/*
#下載yum源 URL="https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm" wget $URL -P /etc/yum.repos.d/
yum -y install yum-utils #如果沒有該包,下邊執行yum-config-manager不生效 yum -y install /etc/yum.repos.d/mysql80-community-release-el7-1.noarch.rpm yum-config-manager --disable mysql80-community yum-config-manager --enable mysql57-community yum -y install mysql-community-server systemctl start mysqld systemctl enable mysqld systemctl status mysqld if [ $? -eq 0 ];then echo -e "install succefull" fi

二、修改Mysql初始密碼

1)由於mysql5.7初始化是有密碼的,需要找到密碼才能登陸,所以我們直接通過腳本修改密碼,並實現登陸:

[root@web130 ~]# cat i.sh 
#!/bin/bash
result="`grep 'temporary password' /var/log/mysqld.log|tail -n 1`"
p1="`echo $result |awk '{print $NF}'`"
read -p "請輸入數據庫密碼:" num1
read -s -p "請輸入數據庫密碼:" num2
if [ $num1 = $num2 ];then
    mysqladmin -uroot -p"$p1" password "$num1" 
    echo "passwd change successful"
    mysql -uroot -p$num1
else

2)優化以上腳本實菜單操作:

[root@web130 ~]# cat ChangePasswd1.sh 
#!/bin/bash

function init_passwd()
{
result="`grep 'temporary password' /var/log/mysqld.log`"
p1="`echo $result |awk '{print $NF}'`"
read -p "請輸入數據庫密碼:" num1
read -s -p "請輸入數據庫密碼:" num2
if [ $num1 = $num2 ];then
    mysqladmin -uroot -p"$p1" password "$num1" 
    echo "passwd change successful"
    mysql -uroot -p$num1
else
    echo "兩次輸入密碼不一致"
    exit 0

fi
}
function menu(){
cat<<EOF
-----------主菜單-----------------
1)初始化數據庫密碼
2)登陸數據庫
Q)退出
EOF
read -p "請輸入序號:" num3
case $num3 in 
    1)
    init_passwd
    ;;
    2)
    mysql -uroot -p$num1
    ;;
    Q|q)
    exit 0
    ;;
    *)
    echo "-------請輸入正確序號-------"
    menu
esac
}

menu
[root@web130 ~]# 

可通過此腳本來登陸數據庫效果如下圖:

 

此腳本比較粗糙,純屬為了集群環境寫,后期優化>>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM