在bash脚本中创建mysql数据库和用户

编程入门 行业动态 更新时间:2024-10-24 01:55:45
本文介绍了在bash脚本中创建mysql数据库和用户的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

这看起来应该很简单,我发誓这段代码已经使用了几个月了,但是现在不起作用了.我确定我只是太累了,但我会感谢一位知情的朋友.

This seems like it should be simple and I swear this code has worked for months but it's not working now. I'm sure I'm just overly tired but I would appreciate a knowing nudge.

# create random password PASSWDDB="$(openssl rand -base64 12)" # replace "-" with "_" for database username MAINDB=${USER_NAME//[^a-zA-Z0-9]/_} # create database and user mysql -e "CREATE DATABASE $MAINDB" mysql -e "GRANT ALL PRIVILEGES ON $MAINDB.* TO $MAINDB@localhost IDENTIFIED BY '$PASSWDDB!'"

MAINDB先前在脚本中提供.我最终得到的是一个数据库,一个用户和适当的权限,并且该用户具有一个密码-它不是$ PASSWORDDB中定义的密码.

MAINDB is supplied previously in the script. What I end up with is a database, a user, and proper permissions and the user has a password - it's just not the password defined in $PASSWORDDB.

MariaDB 10.0.22 Ubuntu 14.04

MariaDB 10.0.22 Ubuntu 14.04

推荐答案

这是我使用的: raw.githubusercontent/saadismail/useful-bash-scripts/master/db.sh

您可以使用以下方法:

# create random password PASSWDDB="$(openssl rand -base64 12)" # replace "-" with "_" for database username MAINDB=${USER_NAME//[^a-zA-Z0-9]/_} # If /root/.myf exists then it won't ask for root password if [ -f /root/.myf ]; then mysql -e "CREATE DATABASE ${MAINDB} /*\!40100 DEFAULT CHARACTER SET utf8 */;" mysql -e "CREATE USER ${MAINDB}@localhost IDENTIFIED BY '${PASSWDDB}';" mysql -e "GRANT ALL PRIVILEGES ON ${MAINDB}.* TO '${MAINDB}'@'localhost';" mysql -e "FLUSH PRIVILEGES;" # If /root/.myf doesn't exist then it'll ask for root password else echo "Please enter root user MySQL password!" echo "Note: password will be hidden when typing" read -sp rootpasswd mysql -uroot -p${rootpasswd} -e "CREATE DATABASE ${MAINDB} /*\!40100 DEFAULT CHARACTER SET utf8 */;" mysql -uroot -p${rootpasswd} -e "CREATE USER ${MAINDB}@localhost IDENTIFIED BY '${PASSWDDB}';" mysql -uroot -p${rootpasswd} -e "GRANT ALL PRIVILEGES ON ${MAINDB}.* TO '${MAINDB}'@'localhost';" mysql -uroot -p${rootpasswd} -e "FLUSH PRIVILEGES;" fi

更多推荐

在bash脚本中创建mysql数据库和用户

本文发布于:2023-11-28 13:00:27,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1642509.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:脚本   数据库   用户   bash   mysql

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!