老师你的打法还是太吃建模了 有没有更简单的操作...
这是一个留言本!要来留言签到嘛...
还有 5 人发表了评论 加入462人围观这是一个留言本!要来留言签到嘛...
还有 5 人发表了评论 加入462人围观#!/bin/bash #Description : MySQL8.4.4 Install Script #Author : lyx #Version : 2.0_01 function MySQL_User() { id mysql >/dev/null 2>&1 if [ "$?" != "0" ]; then useradd -s /sbin/nologin mysql >/dev/null 2>&1 fi } function Create_DIR() { DIRECTORY=("/home/mysql/data" "/home/mysql/mysqlbase" "/home/mysql/mysqllog") for i in "${DIRECTORY[@]}"; do if [ ! -d "${i}" ]; then mkdir -p "${i}" fi done } function DOWNLOAD_MYSQL() { if [ ! -f "/root/mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz" ]; then echo "Downloading MySQL 8.4.4..." wget https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz -P /root/ if [ "$?" != "0" ]; then echo "Failed to download MySQL 8.4.4." exit 1 fi else echo "MySQL 8.4.4 package already exists." fi } function INSTALL() { chown -R mysql:mysql /home/mysql/{data,mysqlbase,mysqllog} tar -xvf /root/mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz -C /home/mysql/mysqlbase mv /home/mysql/mysqlbase/mysql-8.4.4-linux-glibc2.28-x86_64 /home/mysql/mysqlbase/mysql-8.4.4 /home/mysql/mysqlbase/mysql-8.4.4/bin/mysqld --initialize --user=mysql --basedir=/home/mysql/mysqlbase/mysql-8.4.4/ --datadir=/home/mysql/data/ if [ "$?" != "0" ]; then echo "An error occurs during the installation of the MySQL Database Service." exit 1 fi if [ -f /etc/my.cnf ]; then rm -rf /etc/my.cnf fi mv /root/my.cnf /etc/ if [ -f /etc/init.d/mysqld ]; then rm -rf /etc/init.d/mysqld fi cp /home/mysql/mysqlbase/mysql-8.4.4/support-files/mysql.server /etc/init.d/mysqld if [ ! -f /usr/bin/mysql ]; then ln -s /home/mysql/mysqlbase/mysql-8.4.4/bin/mysql /usr/bin/mysql fi } function MYSQL_LOG() { MYSQL_LOG=("/home/mysql/mysqllog/error_log" "/home/mysql/mysqllog/mybinlog") for j in "${MYSQL_LOG[@]}"; do if [ ! -d "${j}" ]; then mkdir -p "${j}" fi done touch /home/mysql/mysqllog/error_log/error.log touch /home/mysql/mysqllog/mysql-slow.log chown -R mysql:mysql /home/mysql/mysqllog } function MYSQL_START() { /etc/init.d/mysqld start sleep 5 if [ "$?" != "0" ]; then echo "MySQL Service Running Is Error." exit 1 else echo "MySQL Service Running Is Successful." fi } function main() { MySQL_User Create_DIR DOWNLOAD_MYSQL INSTALL MYSQL_LOG MYSQL_START } main