zoukankan      html  css  js  c++  java
  • mysql创建用户授权shell

    #!/bin/bash
    declare -A chengshike
    declare -A jinrizhuan
    declare -A dazui
    declare -A fengkuangshiwan
    declare -A ceshiku
    
    ceshiku=( ["host"]="地址" ["user"]="账号" ["passwd"]="密码" )
    chengshike=( ["host"]="地址" ["user"]="账号" ["passwd"]="密码" )
    jinrizhuan=( ["host"]="地址" ["user"]="账号" ["passwd"]="密码" )
    dazui=( ["host"]="地址" ["user"]="账号" ["passwd"]="密码" )
    fengkuangshiwan=( ["host"]="地址" ["user"]="账号" ["passwd"]="密码" )
    #menu=(chengshike jinrizhuan dazui fengkuangshiwan)
    itemname=$1
    user=$2
    passwd=`date +%s |sha256sum |base64 |head -c 10 ;echo`
    command_linebin="/usr/bin/mysql"
    
    function monitor()
    {
            if [ "${itemname}" = "chengshike" ];then
                    echo "${chengshike[host]}"
                    hosts=${chengshike[host]}
                    users=${chengshike[user]}
                    passwds=${chengshike[passwd]}
                    mysql
    
            elif [ "${itemname}" = "jinrizhuan" ];then
                    echo "${jinrizhuan[host]}"
                    hosts=${jinrizhuan[host]}
                    users=${jinrizhuan[user]}
                    passwds=${jinrizhuan[passwd]}
                    mysql
    
            elif [ "${itemname}" = "dazui" ];then
                    echo "${dazui[host]}"
                    hosts=${dazui[host]}
                    users=${dazui[user]}
                    passwds=${dazui[passwd]}
                    mysql
    
            elif [ "$itemname" = "fengkuangshiwan" ];then
                    echo "${fengkuangshiwan[host]}"
                    hosts=${fengkuangshiwan[host]}
                    users=${fengkuangshiwan[user]}
                    passwds=${fengkuangshiwan[passwd]}
                    mysql
            elif [ "${itemname}" = "ceshiku" ];then
                    echo "${ceshiku[host]}"
                    hosts=${ceshiku[host]}
                    users=${ceshiku[user]}
                    passwds=${ceshiku[passwd]}
                    mysql
            else 
                    echo "1"
    fi
    }
    
    mysql()
    {
    usertest="SELECT EXISTS(SELECT 1 FROM mysql.user WHERE user = '$user')"
    msg=$(${command_linebin} -h $hosts  -u$users -p$passwds -s mysql -e "${usertest}")
    
    echo $msg
    #usertest=$(mysql -h $hosts -u$users -p$passwds -e "SELECT EXISTS(SELECT 1 FROM mysql.user WHERE user = "$user")")
    if [ "$msq" = 1 ];then
        echo "$user 已存在"
        exit
    else
    echo "开始创建用户并授权" 
    ${command_linebin} -h $hosts  -u$users -p$passwds -s mysql <<EOF
    create user '$user'@'%' identified by '$passwd';
    GRANT Select ON *.* TO '$user'@'%';
    flush privileges;
    EOF
    check
    fi
    }
    check()
    {
            usertest="SELECT EXISTS(SELECT 1 FROM mysql.user WHERE user = '$user')"
            msg=$(${command_linebin} -h $hosts  -u$users -p$passwds -s mysql -e "${usertest}")
    
    if [[ "$msg" = "" ]];then
        echo "创建失败"
        exit
    else
            echo "创建成功"
            echo "$user  $passwd " >>/root/mysqluser.txt
        
    fi
    }
    monitor
  • 相关阅读:
    用于爬取知乎某个话题下的精华问题中所有回答的爬虫
    BSP -- 图书共享系统(Book Sharing Platform)
    【已解决】WPS2018 从第三页开始插入页眉页码(即前两页不要页眉页码)
    【编译原理】大白话讲解 First 集和 Follow 集的构造算法
    如果
    HTTP协议(1)------->资源和URL
    JavaWeb框架_Struts2_(八)----->Struts2的国际化
    深入理解java虚拟机----->垃圾收集器与内存分配策略(下)
    深入理解java虚拟机----->垃圾收集器与内存分配策略(上)
    JavaWeb框架_Struts2_(七)----->文件的上传和下载
  • 原文地址:https://www.cnblogs.com/Carr/p/13219119.html
Copyright © 2011-2022 走看看