傻瓜式操作数据库

#!/bin/bash
                                         ######################################################
                                         #                                                    #
                                         #                   shell学习                        #
                                         #                                                    #
                                         #                                         Mr Qu      #
                                         #                                       2017.3.19    #
                                         ######################################################
#菜单
function menu(){
echo -e "\t\t\t************************"
echo -e "\t\t\t* 傻瓜式操作数据库     *"
echo -e "\t\t\t************************"
echo -e "\t\t\t* 1、登录数据库        *"   
echo -e "\t\t\t* 2、创建用户或增加权限*"
echo -e "\t\t\t* 3、sql语句操作数据库 *"
echo -e "\t\t\t* 4、更改用户密码      *"
echo -e "\t\t\t* 0、退出              *"
echo -e "\t\t\t************************"
}
#输入mysql的用户名和密码
function input(){
echo -e "\t\t\t请登录数据库"
read -p "请输入mysql用户名:" user
read -s -p "请输入mysql的密码:" passwd
}
#判断输入的用户名密码是否正确
function panduan(){
mysql -u$user -p$passwd -e exit 1>/dev/null 2>&1
if [ $?!= 0 ]
then
echo -e "\n\t\t\t用户名或密码错误,请重新输入!"
input
else
echo -e "\n\t\t\t数据库登录成功!"
fi
}
#创建用户并授权
function createuser(){
echo -e "已存在的用户如下,如果输入的用户已存在,则增加该用户到权限"
mysql -u$user -p$passwd -e "select user,host from mysql.user;"
read -p "请输入要创建的用户名:" newuser
read -s -p "请输入新用户的密码:" newpasswd
echo -e "请输入此用户的主机名(%代表所有的主机都能用此账户访问数据库,具体到某几个主机名中间用英文的逗号隔开,如localhost,192.168.1.1):"
read hostname
echo -e "请输入授予此用户操作数据库的权限(all代表全部,具体到某几个权限中间用英文的逗号隔开,如create,select):" 
read grant
echo -e "请输入授予此用户的访问的库和表的权限(*.*代表全部的库和表,具体到某几个库中间用英文的逗号隔开,如database1.table1,database2.table2):"
read database
mysql -u$user -p$passwd -e "grant $grant on $database to ‘$newuser‘@‘$hostname‘ identified by ‘$newpasswd‘;" 2>/tmp/error.txt
if [ -s /tmp/error.txt ]
then
echo -e "\t\t数据库的权限或库名、表名输入错误!"
else
echo -e "\n\t\t\t用户创建成功!"
fi
}
#命令行操作数据库
function orders(){
while true
do
echo -e "\n"
echo -e "请输入mysql语句:"
read order
mysql -u$user -p$passwd -e "$order" 2>/dev/null
if [ $?!=0 ]
then
echo -e "\t\t\tsql语句输入错误!"
fi
done
}
#修改密码
function change(){
echo -e "数据库中已存在的用户如下:"
tuser=`mysql -u$user -p$passwd -e "select distinct User from mysql.user;"|awk ‘{print $1}‘|sed -n ‘2,$p‘`
echo $tuser
while true
do
echo -e "请输入要修改的用户名:"
read cuser
echo -e "请输入新密码"
read -s cpasswd
echo -e "请再次输入新密码"
read -s zpasswd
echo $tuser|grep $cuser>/tmp/tuser.txt
if [ "$cpasswd" = ""$zpasswd"" -a -s /tmp/tuser.txt ]
then
mysql -u$user -p$passwd <<EOF
update mysql.user set password=password(‘$cpasswd‘) where user=‘$cuser‘;
flush privileges;
EOF
echo -e "\t\t\t$cuser用户的密码修改成功!"
elif [ "$cpasswd" != ""$zpasswd"" ]
then
echo -e "\t\t\t两次输入的密码不一致!"
else
echo -e "\t\t\t你输入的用户不存在!"
fi
done
}
while true;do
menu
read -p "请输入数字(0~4):" i
case $i in
1)
while true
do
input
mysql -u$user -p$passwd 2>/tmp/mysql.txt
if [ -s /tmp/mysql.txt ]
then
echo -e "\n\t\t\t用户名或密码错误,请重新输入!"
else
break
fi
done
;;
2)
input
panduan
createuser
;;
3)
input
orders
;;
4)
input
panduan
change
;;
0)
exit 0;;
*)
echo -e "\t\t\t请输入有效数字!"
;;
esac
done
时间: 2024-10-11 00:38:55

傻瓜式操作数据库的相关文章

傻瓜式操作Nagios图解

傻瓜式操作Nagios 为了节省资源,首先在淘汰的机器上安装一个低版本的OSSIM系统,接下来在WebUI中无需编写任何代码和配置文件便可开启傻瓜化操作Nagios之旅. 1.在左侧菜单中设置网络发现. 开始扫描,发现设备 点击完成后可出现扫描结果,接着选则更新数据库. 2.主机列表 选择一台主机开始设置监控项 查看监控效果 3.列拓扑 列出另一网段更多主机,列出主机状态. 很轻松就完成了Nagios设置,今后增减服务器都可以通过这种图形化方式修改Nagios,非常方便,刚才说了这只是一个低版本

傻瓜式操作Nagios

傻瓜式操作Nagios   不少接触Nagios的朋友都会觉得安装配置困难,应用在企业网中所花费的时间成本很高,下面通过OSSIM来搞定它把. 为了节省资源,首先在淘汰的机器上安装一个低版本的OSSIM系统,接下来在WebUI中无需编写任何代码和配置文件便可开启傻瓜化操作Nagios之旅. 1.在左侧菜单中设置网络发现. 开始扫描,发现设备,点击完成后可出现扫描结果,接着选则更新数据库. 2.主机列表 选择一台主机开始设置监控项 查看监控效果 3.查看拓扑 4.列出另一网段更多主机,列出主机状态

盘点三个网络赚零花钱的小项目,傻瓜式操作

今天,写一篇比较特别的日志,咱们来盘点三个赚零花钱的小项目,都是“傻瓜式”操作. 这几个小项目,虽说赚不了太多的钱,但是却是一个可以锻炼执行力的好方法. 每一个项目操作都非常的简单,边锻炼执行力,边收钱,也是一种不错的体验. 废话不多说,咱们直接进入主题啊! 一,支付宝借条,可赚零花钱,也可赚大钱 支付宝有打借条的功能,本来他们开发这个,只是针对于熟人之前借钱的. 不过,无心插柳柳成荫,没成想,这个功能火的一塌糊涂,完全带火了陌生人之间的借贷业务. 如何利用支付宝借条赚钱? 其实就跟放贷是一样的

傻瓜式操作的三个网络赚零花钱的小项目

今天,写一篇比较特别的日志,咱们来盘点三个赚零花钱的小项目,都是"傻瓜式"操作. 这几个小项目,虽说赚不了太多的钱,但是却是一个可以锻炼执行力的好方法. 每一个项目操作都非常的简单,边锻炼执行力,边收钱,也是一种不错的体验. 废话不多说,咱们直接进入主题啊! 一,支付宝借条,可赚零花钱,也可赚大钱 支付宝有打借条的功能,本来他们开发这个,只是针对于熟人之前借钱的. 不过,无心插柳柳成荫,没成想,这个功能火的一塌糊涂,完全带火了陌生人之间的借贷业务. 如何利用支付宝借条赚钱? 其实就跟放

mysql主从复制--傻瓜式操作

使用mysql主从复制的好处有: 1.采用主从服务器这种架构,稳定性得以提升.如果主服务器发生故障,我们可以使用从服务器来提供服务. 2.在主从服务器上分开处理用户的请求,可以提升数据处理效率. 3.将主服务器上的数据复制到从服务器上,保护数据免受意外的损失. 环境描述: 新企业要搭建架构为主从复制的mysql数据库. 主服务器(mysql-master):IP地址:172.17.0.142 从服务器(mysql-slave)  :IP地址:172.17.0.45 主从服务器均可正常提供服务.

史上最详细得虚拟机安装过程,傻瓜式操作

首先下载一个虚拟机 百度一搜虚拟机下载,无论是正室网站,还是野鸡网站,都出来一大堆.当然还存在一个问题,到底是哪个版本的虚拟机好用.我还真是百度了下,答案规整的回复,最新版本.当然了之前的旧版本也是相当的稳定的. 2.下载虚拟机以后,就是安装的过程了 虚拟机的安装就是next,下一步就对了.没有什么特别的注意事项. 需要注意,此时步骤,我们可以先跳过,选择稍后安装镜像. 选择下一步时候,就是选择虚拟机版本 选择下一步,就是安装路径 选择磁盘大小,唯一需要注意,就是虚拟机磁盘的大小选择问题,一般依

tp5数据库——链式操作

链式操作 数据库提供的链式操作方法,可以有效的提高数据存取的代码清晰度和开发效率,并且支持所有的CURD操作. 使用也比较简单,假如我们现在要查询一个User表的满足状态为1的前10条记录,并希望按照用户的创建时间排序 ,代码如下: Db::table('think_user') ->where('status',1) ->order('create_time') ->limit(10) ->select(); 这里的where.order和limit方法就被称之为链式操作方法,除

ubuntu16.04下安装windows10(傻瓜式)

参考如下博文,首先利用ubuntu的16.04的启动U盘,对原有的系统的磁盘分出一个区来,并使用gparted工具格式化为nyfs格式 http://blog.csdn.net/oct11/article/details/40351969 然后下载u大师,和win10的镜像,傻瓜式操作做一个镜像启动文件.傻瓜式安装. 安装之后可能存在没有引导.要进行修复. 用Boot-repair, ubuntu特有的傻瓜型修复引导工具.无论是win不能引导, 还是ubuntu不能引导,还是死在grub提示符.

SpringBoot使用WebFlux响应式编程操作数据库

这一篇文章介绍SpringBoot使用WebFlux响应式编程操作MongoDb数据库. 前言 在之前一篇简单介绍了WebFlux响应式编程的操作,我们在来看一下下图,可以看到,在目前的Spring WebFlux还没有支持类似Mysql这样的关系型数据库,所以本文以MongoDb数据库为例. SpringBoot使用WebFlux响应式编程操作数据库 接下来介绍SpringBoot使用WebFlux响应式编程操作MongoDb数据库. 新建项目 pom文件 新建项目,在项目中加入webflux