iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >怎么通过Shell脚本批量创建服务器上的MySQL数据库账号
  • 382
分享到

怎么通过Shell脚本批量创建服务器上的MySQL数据库账号

2023-06-09 13:06:11 382人浏览 八月长安
摘要

小编给大家分享一下怎么通过shell脚本批量创建服务器上的MySQL数据库账号,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.项目背景因监控需要,我们需要在既有

小编给大家分享一下怎么通过shell脚本批量创建服务器上的MySQL数据库账号,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1.项目背景

监控需要,我们需要在既有的每个Mysql实例上创建一个账号。公司有数百台 mysql 实例,如果手动登入来创建账号很麻烦,也不现实。所以,我们写了一个简单的shell脚本,用来创建批量服务器的mysql 账号。

 2.执行脚本内容;

#!/bin/bash## 此段shell 脚本的主要功能是实现在多个SQL Server IP实例上,创建账号。输入参数是两个,第一个是数据库所在的IPs,即多个Server IP构成的字符串,IP间用逗号隔开。第二个参数是 端口(3306 或 3307)##MySQL程序所在路径--mysql bin 文件所在路径;如果由建立软连接,可直接是mysqlcommand_linebin="/data/mysql5720/bin/mysql"##用来连接MySQ的账号和密码username="DBA_MYSQLACC"passWord="DBAACCTEST109211706DF"## 新创建的账号和密码createuid="testuid"createpwd="testpwd"##指定新创建的用户在那个主机上可以登录,如果是本地用户可用localhost;如果指定规则的可以使用通配符%phost="177.177.%"mysqlserverIPs=$1echo $mysqlserverIPs## 按“,”分割,将字符串转换为数组。IParr=(${mysqlserverIPs//,/ })echo $IParrfor ((i=0;i<${#IParr[@]};i++))do  IP=${IParr[$i]}  echo "${IP}"select_sql="select * from user where user=\"$createuid\""msg=$(${command_linebin} -h ${IP} -P $2 -u$username -p$password -s mysql -e "${select_sql}")echo $msg##创建账号前,先检查需要创建的账号是否已经存在,如果已经存在了,则直接退出。if [[ $msg = "" ]] ;then  echo $(date -d today +"%Y%m%d%H%M%S") $mip "The Condition is OK,permit to create UID."else  echo $(date -d today +"%Y%m%d%H%M%S") $IP "The UID you want create has been exited, please check it! The Act Quit!"  exit fi## 以下几行代码是创建的关键${command_linebin} -h ${IP} -P $2 -u$username -p$password -s mysql <<EOFCREATE USER '$createuid'@'$phost' IDENTIFIED BY '$createpwd';GRANT Select,PROCESS ON *.* TO '$createuid'@'$phost';flush privileges;EOF##创建后,再次检查账号看否已将存在。如果不存在,则说明创建失败,直接退出。select_sql="select * from user where user=\"$createuid\""msg=$(${command_linebin} -h ${IP} -P $2 -u$username -p$password -s mysql -e "${select_sql}")echo $msgif [[ $msg = "" ]] ;then  echo $(date -d today +"%Y%m%d%H%M%S") ${IP} "The action to create UID Error,Please Check it! The Act Quit! "  exitelse  echo $(date -d today +"%Y%m%d%H%M%S") ${IP} "Congratulation! Create UID successful" fidone

3. 执行举例

Step 1 将代码放置到执行文件中,可执行文件命名为 mysql_CreateUIDMulti.sh

Step 2 请对此文件授予可执行权限,否则,提示以下错误。

怎么通过Shell脚本批量创建服务器上的MySQL数据库账号

Step 3 执行的具体命令(参数格式),例如 在 177.177.XXX.128,177.177.XXX.144 两个 3306的实例上创建账号

./mysql_CreateUIDMulti.sh 177.177.XXX.128,177.177.XXX.144 3306

Step 4 打印的执行结果如下

177.177.XXX.128,177.177.XXX.144177.177.XXX.128177.177.XXX.128mysql: [Warning] Using a password on the command line interface can be insecure.20180529171802 The Condition is OK,permit to create UID.mysql: [Warning] Using a password on the command line interface can be insecure.mysql: [Warning] Using a password on the command line interface can be insecure.177.177.% testuid Y N N N N N N N Y N N N N N N N N N N N N N N N N N N N N 0 0 0 0 mysql_native_password *22CBF14EBDE8814586FF12332FA2B6023A7603BB N 2018-05-29 17:18:02 NULL N20180529171802 177.177.XXX.128 Congratulation! Create UID successful177.177.XXX.144mysql: [Warning] Using a password on the command line interface can be insecure.177.177.% testuid Y N N N N N N N Y N N N N N N N N N N N N N N N N N N N N 0 0 0 0 mysql_native_password *22CBF14EBDE8814586FF12332FA2B6023A7603BB N 2018-05-30 00:56:38 NULL N20180529171802 177.177.XXX.144 The UID you want create has been exited, please check it! The Act Quit!

4.补充说明

如果创建一个服务器上的MySQL账号,可按照以下格式

./mysql_CreateUIDMulti.sh 177.177.XXX.128 3306

打印的Log 如下

177.177.XXX.128177.177.XXX.128177.177.XXX.128mysql: [Warning] Using a password on the command line interface can be insecure.20180529173517 The Condition is OK,permit to create UID.mysql: [Warning] Using a password on the command line interface can be insecure.mysql: [Warning] Using a password on the command line interface can be insecure.177.177.% testuid Y N N N N N N N Y N N N N N N N N N N N N N N N N N N N N 0 0 0 0 mysql_native_password *22CBF14EBDE8814586FF12332FA2B6023A7603BB N 2018-07-29 17:35:17 NULL N20180529173517 177.177.XXX.128 Congratulation! Create UID successful

以上是“怎么通过Shell脚本批量创建服务器上的MySQL数据库账号”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么通过Shell脚本批量创建服务器上的MySQL数据库账号

本文链接: https://www.lsjlt.com/news/256143.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么通过Shell脚本批量创建服务器上的MySQL数据库账号
    小编给大家分享一下怎么通过Shell脚本批量创建服务器上的MySQL数据库账号,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.项目背景因监控需要,我们需要在既有...
    99+
    2023-06-09
  • 怎么通过shell脚本批量操作mysql数据库
    这篇文章主要讲解了“怎么通过shell脚本批量操作mysql数据库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么通过shell脚本批量操作mysql数据库”吧!创建建表语句  =====...
    99+
    2023-06-05
  • mysql数据库怎么使用创建的账号登录
    使用 mysql 账号登录需要以下步骤:连接到 mysql 服务器并输入账号和密码。输入密码以连接到 mysql 服务器。成功连接后,可执行创建数据库、插入数据、运行查询等操作。使用命令...
    99+
    2024-04-14
    mysql
  • mysql数据库怎么使用创建的账号密码
    在 mysql 数据库中使用创建的账号和密码:1. 连接到数据库(使用用户名、密码和主机名);2. 执行 sql 查询;3. 退出连接。注意:确保有正确的密码、适当的权限和防火墙允许连接...
    99+
    2024-04-14
    mysql
  • mysql数据库怎么使用创建的账号和密码
    使用 mysql 创建的帐户和密码可通过以下步骤使用:打开 mysql 控制台输入用户名和密码创建并使用数据库管理数据退出 mysql 如何使用 MySQL 创建的账号和密码 要使用 ...
    99+
    2024-04-14
    mysql
  • 阿里云MySQL创建数据库服务器的过程详解
    随着互联网技术的发展,数据库服务器的建设成为了许多企业发展的关键。而阿里云作为国内领先的云计算服务提供商,其MySQL数据库服务受到了众多企业和个人用户的欢迎。本文将详细介绍阿里云MySQL创建数据库服务器的过程,帮助读者更好地了解和使用阿...
    99+
    2023-12-11
    阿里 详解 过程
  • 腾讯云服务器怎么搭建数据库的服务器号
    腾讯云服务器的服务器号是可以自己进行配置的,下面是一个简单的配置步骤: 1.首先,需要在电脑上安装腾讯云服务器的客户端。这个客户端在电脑上的路径是 C:UsersTencentApplication DataRoamingTelecom。...
    99+
    2023-10-26
    服务器 腾讯 数据库
  • 怎么登陆云服务器上的mysql数据库
    登录到云服务器中mysql数据库的方法首先,远程登录到云服务器,进入云服务器操作界面;在云服务器操作界面后,在命令行中启动mysql服务;Windows:net start mysql  Linux:service mysql start ...
    99+
    2024-04-02
  • 腾讯云服务器怎么搭建数据库的服务器号码
    首先,您需要在腾讯云控制台中创建一个云数据库实例。在创建实例时,您需要选择数据库引擎类型、版本、存储容量等参数,并设置访问密码和网络访问权限等。 创建完成后,您可以通过连接字符串和数据库账号密码来连接数据库实例。连接字符串包括数据库实例的...
    99+
    2023-10-26
    服务器 腾讯 号码
  • 怎么租用日本服务器搭建网站的数据库
    在日本租用服务器搭建网站的数据库可以通过以下步骤进行: 选择一个可靠的日本服务器租用服务提供商。注册一个账户并选择日本地区作为服务...
    99+
    2024-04-09
    日本服务器 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作