shell 脚本二进制安装mysql
以下脚本的手动安装连接:https://www.cnblogs.com/leihongnu/p/12581793.html
【
#/bin/bash
#脚本安装 mysql,上传安装包至 /root
cd /root
#安装日志
mysql_log=/root/mysql.log
# mysql 安装包名
mysql_package=mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
# 解压 mysql 安装包后文件夹名称
mysql_package_dir=mysql-8.0.19-linux-glibc2.12-x86_64
#存放数据库的目录
mysql_dbdata=/usr/local/mysql/data
#centos6 检查 mysql
if [ `rpm -qa | grep -i mysql | wc -l ` -ge 1 ]
then
rpm -qa | grep -i mysql >> uninstall_mysql.txt
file=$(cat uninstall_mysql.txt)
for name in $file
do
rpm -e --nodeps $name
done
fi
rm -rf uninstall_mysql.txt
#centos7 检查 mariadb
if [ `rpm -qa | grep -i mariadb | wc -l ` -ge 1 ]
then
rpm -qa | grep -i mariadb >> uninstall_mariadb.txt
file=$(cat uninstall_mariadb.txt)
for name in $file
do
rpm -e --nodeps $name
done
fi
rm -rf uninstall_mariadb.txt
#添加 mysql 用户
useradd -r -s /sbin/nologin mysql
#解压 mysql_package 至 /usr/local
tar -xvf $mysql_package -C /usr/local/
cd /usr/local
#创建软连接
ln -s $mysql_package_dir mysql
#创建 mysql 数据存放目录
mkdir $mysql_dbdata
#修改文件夹所属者
chown -R mysql:mysql mysql
chown -R mysql:mysql mysql/
#添加环境变量路径,使生效
echo PATH=/usr/local/mysql/bin:$PATH > /etc/profile.d/mysql.sh
source /etc/profile.d/mysql.sh
#生成数据库,默认生成密码打印在屏幕上,登录时会用到,记得保存
cd /usr/local/mysql
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=$mysql_dbdata
#创建RSA private key
bin/mysql_ssl_rsa_setup --datadir=$mysql_dbdata
#生成配置文件
if [ -e /etc/my.cnf ]
then
mv /etc/my.cnf /etc/my.cnf.bak
rm -rf /etc/my.cnf
fi
touch /etc/my.cnf
echo "[client]" >> /etc/my.cnf
echo "port = 3306" >> /etc/my.cnf
echo "default-character-set=utf8" >> /etc/my.cnf
echo "[mysqld]" >> /etc/my.cnf
echo "character_set_server=utf8" >> /etc/my.cnf
echo "init_connect='SET NAMES utf8'" >> /etc/my.cnf
echo "basedir=/usr/local/mysql" >> /etc/my.cnf
echo "datadir=$mysql_dbdata" >> /etc/my.cnf
echo "socket=/tmp/mysql.sock" >> /etc/my.cnf
echo "[mysqld_safe]" >> /etc/my.cnf
echo "lower_case_table_names = 1" >> /etc/my.cnf
echo "log-error=/var/log/mysqld.log" >> /etc/my.cnf
echo "pid-file=/var/run/mysqld/mysqld.pid" >> /etc/my.cnf
#设置启动服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#添加启动服务
chkconfig --add mysqld
#启动服务
service mysqld start
#查看服务
systemctl status mysqld >> $mysql_log
】
过程截图:
中间省略
查看mysqld状态:
shell 脚本二进制安装mysql的更多相关文章
- Centos 6.4上面用Shell脚本一键安装mysql 5.6.15
Centos 6.4上面用Shell脚本一键安装mysql 5.6.15 #!/bin/bash if [ `uname -m` == "x86_64" ];then machi ...
- Shell脚本中执行mysql的几种方式(转)
Shell脚本中执行mysql的几种方式(转) 对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用 ...
- shell脚本循环执行mysql语句
参考资料:Shell脚本中执行mysql语句 需求:数据库里有张数据表存储的是用户对电影的评价(user_id movie_id rating time),但是我现在要每部电影的总评分. 解决方法: ...
- Centos 6.4上面用Shell脚本一键安装vsftpd
Centos 6.4上面用Shell脚本一键安装vsftpd install.sh #!/bin/bash if [ `uname -m` == "x86_64" ];then m ...
- 安装完Ubuntu后通过shell脚本一键安装软件
安装完Ubuntu后通过shell脚本一键安装软件 以下代码中#是单行注释 :<<! ! 是多行注释. 运行的时候需要把多行注释去掉. 比如把以下代码保存为install.sh, 那么在终 ...
- 二进制安装MySQL数据库
今天安装的是二进制的mysql包5.7.21的包,在配置文件的时候采了好多坑,左后还是搞定了,来和大家分享一下 二进制msyql5.7.21版本的主从复制安装 新建/picclife目录 mkdir ...
- CentOS 6.5下二进制安装 MySQL 5.6
CentOS 6.5 二进制安装MySQL 5.6 1:查看系统版本 [root@10-4-5-9 mysql]# cat /etc/redhat-release CentOS release 6.5 ...
- 二进制安装MySQL及破解密码
二进制安装MySQL及破解密码 1.确保系统中有依赖的libaio 软件,如果没有: yum -y install libaio 2.解压二进制MySQL软件包 tar xf mysql-5.7.24 ...
- mysql自动化安装脚本(二进制安装)
为了日后安装数据库方便,遂写了一个自动安装MySQL的脚本: 测试可以安装mariadb和MySQL-5.7.X 安装前配置好对应的my.cnf文件放在/tmp路径下 将启动脚本mysql3306放在 ...
随机推荐
- ✔PHP文件包含漏洞全面总结
我的另一篇博客总结的不够全面,但依然有借鉴价值:https://www.cnblogs.com/Zeker62/p/15192610.html 目录 文件包含的定义 文件包含漏洞常见函数 文件包含漏洞 ...
- Docker系列(21)- DockerFile介绍
DockerFile介绍 dockerfile是用来构建docker镜像的文件!命令参数脚本! 构建步骤 编写一个dockerfile文件 docker build构建成为一个镜像 docker ru ...
- git 操作 :从远程仓库gitLab上拉取指定分支到本地仓库;git如何利用分支进行多人开发 ;多人合作代码提交实践
例如:将gitLab 上的dev分支拉取到本地 git checkout -b dev origin/dev 在本地创建分支dev并切换到该分支 git pull origin dev 就可以把git ...
- Appium和Selenium的区别和联系
https://www.cnblogs.com/lv-lxz/p/11118862.html https://blog.csdn.net/weixin_42139375/article/details ...
- 使用form插件 和ajax 结合使用 没有调用success的原因
当我做文件上传的时候出现不调用success方法 将datype: 'json' 注释掉后成功响应 浏览器显示200状态码,并且响应头为json格式,格式ajax不认为它是json,所以一直执行错误 ...
- Fiddler修改抓包请求
hi,说到fiddler的用途,第一时间想到抓包,不过还有一个功能是:支持修改请求. 那么问题来了,怎么做呢?很简单,先定下我们需要修改哪个请求. 这里用F12跟fiddler做演示. 首先我们在F1 ...
- Kafka 性能篇:为何 Kafka 这么快?
『码哥』的 Redis 系列文章有一篇讲透了 Redis 的性能优化 --<Redis 核心篇:唯快不破的秘密>.深入地从 IO.线程.数据结构.编码等方面剖析了 Redis " ...
- 几分钟就能学会的Python虚拟环境教程
什么是虚拟环境 我们在使用Python的时候,通常用pip来进行包管理.比如我们要安装一个叫requests的库,那么我们就会采用以下命令去安装: pip install requests 那你知道, ...
- PHP的SPL扩展库(一)数据结构
SPL 库也叫做 PHP 标准库,主要就是用于解决典型问题的一组接口或类的集合.这些典型问题包括什么呢?比如我们今天要讲的数据结构,还有一些设计模式的实现,就像我们之前讲过的观察者模式相关的接口在 S ...
- equals之List
School类 package com.collection.equals; /* * 定义一个学校类 相当于一个学校模板 * 状态: 1.学校id 2.学校名称 * */ public class ...