#!/bin/sh
#mkdir /root/mysql
#tar -xvf mysql-5.7.-.el7.x86_64.rpm-bundle.tar -C /root/mysql
#cd /root/mysql
#yum -y install perl-Data-Dumper perl-JSON perl-Time-HiRes
#rpm -Uvh mysql-community-*.rpm
#systemctl start mysqld
language(){
echo $LANG |grep -q zh
if [ $? -eq ];then
return
else
return
fi
}
menu(){
clear
language
if [ $? -eq ];then
echo " ##############----Menu----##############"
echo "# 1. 安装mysql"
echo "# 2. 修改数据库的初始密码"
echo "# 3. 配置数据库"
echo "# 4. 卸载数据库"
echo "# 5. 退出"
echo " ########################################"
else
echo " ##############----Menu----##############"
echo "# 1. Install mysql"
echo "# 2. change mysql first password"
echo "# 3. configure mysql"
echo "# 4. remove MySQL"
echo "# 5. exit"
echo " ########################################"
fi
} choice(){
language
if [ $? -eq ];then
read -p "请选择一个菜单[1-5]:" select
else
read -p "Please choice a menu[1-5]:" select
fi
}
install_mysql(){
language
echo "请上传数据库安装包"
rz -E
mkdir /root/mysql
tar -xvf mysql-5.7.-.el7.x86_64.rpm-bundle.tar -C /root/mysql
cd /root/mysql
rm -rf mysql-community-devel-5.7.-.el7.x86_64.rpm mysql-community-embedded-*.rpm mysql-community-libs-compat-5.7.-.el7.x86_64.rpm mysql-community-test-5.7.-.el7.x86_64.rpm
yum -y install perl-Data-Dumper perl-JSON perl-Time-HiRes net-tools
rpm -Uvh mysql-community-*.rpm
systemctl start mysqld if [ $? -eq ]
then
echo "安装成功"
else
echo $?
exit
fi
} change_password(){
language
PORT=""
USERNAME="root"
PASSWORD=$(cat /var/log/mysqld.log |grep 'temporary password' | awk -F: '{print $4}' | sed s/[[:space:]]//g)
echo $PASSWORD
mysql_conn="mysql -P${PORT} -u${USERNAME} --connect-expired-password --password=${PASSWORD}"
echo $mysql_conn
NEWPASS=""
# sql="alter mysql.user 'root'@'localhost' identified by \"${NEWPASS}\";flush privileges;"
# echo $sql
$mysql_conn -e "set global validate_password_policy=0;"
$mysql_conn -e "set global validate_password_length=4;"
$mysql_conn -e "set password for 'root'@'localhost'=password('1234');flush privileges;"
if [ $? -eq ]
then
echo "修改密码成功"
else
echo $?
exit
fi } configure_mysql(){
cp /etc/my.cnf /etc/my.cnf.default
sed -i '3a\[client]\t\ndefault-character-set=utf8 ' /etc/my.cnf
sed -i '/\[mysqld\]/a\character-set-server=utf8\nvalidate_password_length=4\nvalidate_password_policy=0 ' /etc/my.cnf
systemctl restart mysqld
if [ $? -eq ]
then
echo "修改默认编码为utf8成功"
  sleep
else
echo $?
exit
fi
  
} remove_mysql(){
language
systemctl stop mysqld
mysql_pack=$(rpm -qa|grep mysql)
for i in $mysql_pack
do
rpm -e ${i} --nodeps
done
rm -rf /var/lib/mysql
rm -rf /usr/bin/mysql
rm -rf /usr/lib64/mysql
rm -rf /usr/share/mysql
rm -rf /usr/include/mysql
rm -rf /var/log/mysqld.log
if [ $? -eq ]
then
echo "卸载成功"
else
echo $?
exit
fi }
while true
do
menu
choice
case $select in
)
install_mysql
;;
)
change_password
;;
)
configure_mysql
;;
)
remove_mysql
;;
)
quit;break
;;
esac
done

mysql 安装卸载自动化脚本的更多相关文章

  1. MySQL安装卸载、idea中Database的使用、常用的sql语句

    MySQL安装卸载 MySQL安装 在下面的资源链接中下载MySQL软件压缩包(绿色版),这个版本是MySQL5.7.29的,本教程也只适用于这个绿色版的,如果下载的是安装包那就可能有些地方不一样了, ...

  2. mysql安装 卸载 查字符集编码

    下载地址 :     https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.11-winx64.zip 解压zip  解压完之后的目录 在里面新建一 ...

  3. Mysql安装及自动化部署脚本方案

    一.简介 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库, 每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据. 我们也可以将数据存储在文件中,但是 ...

  4. mysql安装卸载-windows

     安装:(注意点) 官网download安装包 choose setup type --> custom 安装路径 detailed configuration developer machin ...

  5. Linux中Mysql安装卸载

    参考博客:https://www.cnblogs.com/xrog/p/6862669.html安装步骤:#wget http://dev.mysql.com/get/mysql57-communit ...

  6. Hadoop(MapR)分布式安装及自动化脚本配置

    MapR的分布式集群安装过程还是很艰难的,远远没有计划中的简单.本人总结安装配置,由于集群有很多机器,手动每台配置是很累的,编写了一个自动化配置脚本,下面以脚本为主线叙述(脚本并不完善,后续继续完善中 ...

  7. MySQL安装/卸载

    http://jishu8.cc/2017/02/06/55/ 检查端口是否冲突:netstat nao | findstr 3307  启动服务:services.msc

  8. lnmp_auto:自动化安装lnmp环境脚本

    朋友找我在一台机器上帮忙安装下discuz.想着搭建过好几次的lnmp了,但是还没有使用过"一键安装"的自动化脚本,去网上有搜索出来,但是运行的时候发现用root运行别人的脚本还是 ...

  9. Linux安装卸载Mysql数据库

    关于mysql数据库在Linux下的应用一直以来都是我认为比较棘手的,这次通过搭建Linux学习环境顺便研究和学习Mysql数据库在Linux下安装和卸载. 1.先来看看卸载吧,如下图所示: 以上的命 ...

随机推荐

  1. Sharding-JDBC实现垂直拆分

    参考资料:猿天地  https://mp.weixin.qq.com/s/wl8h6LIQUHztVuVbjfsU3Q  作者:尹吉欢 当一个项目量增大,数据表数量增多时,就需要对数据表进行垂直拆分, ...

  2. Mybatis 的连接池技术

    我们在前面的 WEB 课程中也学习过类似的连接池技术,而在 Mybatis 中也有连接池技术,但是它采用的是自 己的连接池技术.在 Mybatis 的 SqlMapConfig.xml 配置文件中,通 ...

  3. 比PS还好用!Python 20行代码批量抠图

    你是否曾经想将某张照片中的人物抠出来,然后拼接到其他图片上去,从而可以即使你在天涯海角,我也可以到此一游? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在 ...

  4. C# Thread.Join的报错情形——论执行完的线程能够成功执行Join吗

    结论: 能, 执行完的线程调用Join不会抛出错误. Thread.Join()是什么? Join()函数用于阻塞地等待线程结束, 其行为是在线程A中调用了线程B的Join()后, 线程A将一直阻塞在 ...

  5. C#LeetCode刷题之#54-螺旋矩阵(Spiral Matrix)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3672 访问. 给定一个包含 m x n 个元素的矩阵(m 行, ...

  6. C#LeetCode刷题-递归

    递归篇 # 题名 刷题 通过率 难度 687 最长同值路径   30.8% 简单 698 划分为k个相等的子集   30.7% 中等 726 原子的数量   37.2% 困难 761 特殊的二进制序列 ...

  7. Deep learning-based personality recognition from text posts of online social networks 阅读笔记

    文章目录 一.摘要 二.模型过程 1.文本预处理 1.1 文本切分 1.2 文本统一 2. 基于统计的特征提取 2.1 提取特殊的语言统计特征 2.2 提取基于字典的语言特征 3. 基于深度学习的文本 ...

  8. python处理转载博客html

    前景 在转载别人博客的时候通常我们会通过复制html然后放到编辑器里面, 但是通常html里有很多杂七杂八的东西, 比如script, svg这些标签导致排版出现问题 例如由lu标签引起的 由svg标 ...

  9. C#图解教程(第四版)—01—类型,存储,变量

    3.1 如何广泛的描述C#程序 可以说C程序是一组函数和数据类型,C++程序是一组函数和类,然而C#程序是一组类型声明 3.2 类型 可以把类型想象成一个用来创建数据结构的模板,模板本身并不是数据结构 ...

  10. Python | 浅谈并发锁与死锁问题

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Python专题的第24篇文章,我们一起来聊聊多线程场景当中不可或缺的另外一个部分--锁. 如果你学过操作系统,那么对于锁应该不陌生. ...