mysql下用户和密码生成管理
应用上线,涉及到用户名和密码管理,随着上线应用的增加,用户名和密码的管理设置成为一个问题。还要对用户赋权,于是想着写一个脚本来管理,看到同事写的一个脚本,满足需求。思路大致是字母替换为数字,账号根据库名设置。脚本如下:
#!/bin/sh
 passwd1=$1_sir
 dbuser=`echo $passwd1|awk '{print tolower($0)}'`
 dbpassword=`echo $passwd1| awk '{print  tolower($0)}' |sed '/\n/!G;s/\(.\)\(.*\n\)/&\2\1/;//D;s/.//'|awk '{
     toupper($0)
     gsub(/_/,"",$0)
     while($0~/a/)
     {
         gsub(/a/,"4",$0)
     }
     while($0~/e/)
     {
         gsub(/e/,"3",$0)
     }       
     while($0~/i/)
     {
         gsub(/i/,"1",$0)
     }       
     while($0~/o/)
     {
         gsub(/o/,"0",$0)
     }       
     while($0~/v/)
     {
         gsub(/v/,"7",$0)
     }
     print  tolower($0)
 }'`
 
 echo "grant select,update,delete,insert on $1.* to $dbuser@'%' identified by '$dbpassword';"
 echo "grant select on $1.* to reader@'%' identified by 'n0p4ssw0rd';"
使用方式  脚本后面跟db名字
 
[root@dbxxxxx]# ./password.sh userdb
 grant select,update,delete,insert on userdb.* to userdb_sir@'%' identified by 'r1sbdr3su';
 grant select on userdb.* to reader@'%' identified by 'n0p4ssw0rd';
执行完产生上面的sql语句,一个写账号,一个读账号,然后在相应主机上执行命令。
 
 
                    
                     
                    
                 
                    
                

 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号