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
  • 相关阅读:
    Making Pimpl Easy
    OpenCV学习资源
    openCV基础学习(1)
    fl2440原始linux代码的启动日志
    《s3c2440+lan91c111 vxworks驱动调试》疑惑
    使用并行的方法计算斐波那契数列 (Fibonacci)
    [译] SolidWorks的发展历史(1994~2007)
    翻译介绍一点CAD发展的历史
    使用fopen的两点注意事项
    四元数(Quaternions)简介
  • 原文地址:https://www.cnblogs.com/Carr/p/13219119.html
Copyright © 2011-2022 走看看