#!/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. PHP min() 函数

    实例 通过 min() 函数查找最小值: <?php高佣联盟 www.cgewang.comecho(min(2,4,6,8,10) . "<br>");echo ...

  2. PHP strnatcasecmp() 函数

    实例 使用"自然"算法来比较两个字符串(不区分大小写): <?php高佣联盟 www.cgewang.comecho strnatcasecmp("2Hello w ...

  3. Struts2中Get请求转码问题

    Tomcat默认编码为ISO859-1 Post提交时,struts2会对其转码为iso8859-1,因此不需要另外转码,而 Get提交表单,则需要单独转码,转码过程如下图:

  4. sql_to_csv

    将需要信息 导出成 csv,txt等格式 create or replace procedure sql_to_csv(p_query in varchar2, --sql query stateme ...

  5. Qt 之 Graphics View Framework 简介

    Graphics View Framework 交互式 2D 图形的 Graphics View 框架概述.自 Qt4.2 中引入了 Graphics View,以取代其前身 QCanvas.Grap ...

  6. 16、Mediator 仲裁者模式

    只有一个仲裁者 Mediator 模式 组员向仲裁者报告,仲裁者向组员下达指示,组员之间不在相互询问和相互指示. 要调整多个对象之间的关系时,就需要用到 Mediator 模式.将逻辑处理交给仲裁者执 ...

  7. java_抽象类、接口、多态的使用

    抽象类 抽象类:包含抽象方法的类. 抽象方法 : 没有方法体的方法. 使用 abstract关键字修饰方法,该方法就成了抽象方法,抽象方法只包含一个方法名,而没有方法体. 格式为:修饰符 abstra ...

  8. IDEA操作jdbc总结

    今天学习IDEA操作JDBC,MySQL包导入到项目 // 1.注册数据库的驱动// Driver driver=new com.mysql.jdbc.Driver();// DriverManage ...

  9. 2020 Multi-University Training Contest 1 部分题解

    目录 Cookies Distinct Sub-palindromes Fibonacci Sum Finding a MEX Leading Robots Math is Simple Minimu ...

  10. python流程控制-if

    在python中流程控制可以分为三种,分别是顺序结构.分支结构和循环结构.分支结构:if..else循环结构:while循环.for循环 一:分支结构 1:单项分支 语法: 含义:判断条件,条件结果为 ...