一键安装|卸载 mysql 8.2.0 shell脚本

场景:为了在无网、外网 mysql 安装方便,这里分享一个自己编写得 shell脚本

  • 这里以当前最新版 mysql 8.2.0centos-7
    二进制包下载:
    下载地址

    mysql_install.sh
shell 复制代码
#!/bin/bash
# 解压安装包
tar -xf mysql-8.2.0-linux-glibc2.17-x86_64.tar.xz

# 移动解压后的文件夹到指定位置
mv mysql-8.2.0-linux-glibc2.17-x86_64 /usr/local/mysql

# 创建MySQL数据目录
mkdir -p /var/lib/mysql

# 创建MySQL组和用户
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

# 修改文件夹权限
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /var/lib/mysql

# 创建MySQL配置文件
cat > /usr/local/mysql/my.cnf << EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/var/lib/mysql
server_id=1 
port=3306 

[mysql]
default-character-set=utf8mb4

[client]
port=3306
socket=/var/lib/mysql/mysqlx.sock
EOF

# 初始化MySQL
cd /usr/local/mysql
./bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize-insecure --user=mysql

# 创建MySQL服务
cat > /etc/systemd/system/mysql.service <<EOF
[Unit]
Description=MySQL8.2.0 Server
After=syslog.target
After=network.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/my.cnf
EOF

# 启动MySQL服务并设置开机启动
systemctl daemon-reload
systemctl start mysql
systemctl enable mysql

mysql_remove.sh

shell 复制代码
#!/bin/bash

# 停止mysql服务
sudo systemctl stop mysql

# 删除mysql用户组
sudo userdel mysql
sudo groupdel mysql


# 删除mysql服务配置
sudo systemctl disable mysql
sudo rm /etc/systemd/system/mysql.service

# 删除数据文件
sudo rm -rf /var/lib/mysql

# 删除mysql二进制文件
sudo rm -rf /usr/local/mysql

echo "mysql已成功卸载!"
相关推荐
小冷coding3 小时前
【MySQL】MySQL 插入一条数据的完整流程(InnoDB 引擎)
数据库·mysql
周杰伦的稻香6 小时前
MySQL中常见的慢查询与优化
android·数据库·mysql
·云扬·8 小时前
MySQL 常见存储引擎详解及面试高频考点
数据库·mysql·面试
何以不说话9 小时前
mysql 的主从复制
运维·数据库·学习·mysql
橘子1310 小时前
MySQL库的操作(二)
数据库·mysql·oracle
·云扬·11 小时前
MySQL各版本核心特性演进与主流分支深度解析
数据库·sql·mysql
田超凡12 小时前
深入理解MySQL_6 Temporary临时表
mysql·java-ee
尽兴-13 小时前
MySQL 8.0主从复制原理与实战深度解析
数据库·mysql·主从复制
YongCheng_Liang14 小时前
MySQL 高级特性深度解析:从索引优化到高可用架构
运维·数据库·mysql
<花开花落>14 小时前
MySQL 数据备份流程化
mysql·systemd