广告
返回顶部
首页 > 资讯 > 数据库 >Centos7编译安装mysql脚本
  • 895
分享到

Centos7编译安装mysql脚本

2024-04-02 19:04:59 895人浏览 泡泡鱼
摘要

#!/bin/bash # Mysqld install scripts # display Progress Progress () 

#!/bin/bash
# Mysqld install scripts
# display Progress
Progress () {
    b=''
    i=0
    while [ $i -le  100 ]
    do
        printf "$*:[ %-50s ]%d%%\r" $b $i
        sleep 0.001
        i=`expr 2 + $i`
        b=#$b
    done
    echo
}

# if Centos Version
Centos_version=$(cat /etc/redhat-release|awk '{print $4}'|cut -b1)
wget -o /dev/null -O /etc/yum.repos.d/Centos-Base.repo /Http://mirrors.aliyun.com/repo/Centos-${Centos_version}.repo
yum makecache
Progress Centos Download
sed -i 's/^SElinux=.*/SELINUX=disabled/g' /etc/selinux/config;iptables -F
setenforce 0
rpm -e --nodeps mysql*

CPU_NUMBERS=`cat /proc/cpuinfo|grep processor|wc -l`
COMPUTER_MEM=`free -m|grep Mem|awk '{print $2}'`
MYsql_MEM=`expr $COMPUTER_MEM - $COMPUTER_MEM / 4`
COLOR_GREEN="\033[32m"
COLOR_RED="\033[31m"
COLOR_BULE="\033[34m"
COLOR_YELLOW="\033[33m"
COLOR_PURPLE="\033[35m"
COLOR_END="\033[0m"
sleep 0.05;echo "==================================================";echo;echo
sleep 0.05;echo -e "Mysql 5.7.16 on $COLOR_GREEN Centos7_`uname -m` $COLOR_END"
sleep 0.05;echo -e "Your computer is $COLOR_GREEN $CPU_NUMBERS $COLOR_END processes,Mysql Memory is ${COLOR_GREEN}${MYSQL_MEM}M${COLOR_END}"
sleep 0.05;echo -e "${COLOR_RED}Your will input mysql's root passWord and mysql's memory${COLOR_END}";echo;echo
sleep 0.05;echo "=================================================="

# are you sure install
read -n1 -t30 -p "Are you sure setup[y/n]?: " answer
case $answer in
    "y" | "Y" )
        echo;echo "Start setup.....";sleep 2;;
    "n" | "N" )
        echo;echo -e "${COLOR_RED}Cancel setup......${COLOR_END}"
        exit 0 ;;
    "")
        echo;echo -e "${COLOR_PURPLE}Over time!!!!!${COLOR_END}"
        exit 0 ;;
    *)
        echo;echo -e "${COLOR_RED}Error input parameter......${COLOR_END}"
       exit 1 ;;
esac

# check if user is root
if [ $(id -u) != "0" ];then
    echo "$COLOR_RED Sorry:You must be root to run this script!${COLOR_END}"
    exit 1
fi

# useradd mysql
GROUP_NAME=mysql
USER_NAME=mysql
if [ -z $(cat /etc/passwd|awk -F: "{print $1}"|grep -w "$USER_NAME") -a -z $(cat /etc/group|awk -F: "{print $1}"|grep -w "$GROUP_NAME") ]
then
    useradd -s /sbin/nologin -M -U $USER_NAME 2> /dev/null
    if (( $? == "0" ))
    then
        echo -e  "$COLOR_GREEN group $GROUP_NAME add sucessfully!${COLOR_END}"
    fi
    else
        echo -e "${COLOR_PURPLE}User $USER_NAME is exsits! ${COLOR_END}"
fi

for i in make GCc gcc-c++ bison-devel ncurses-devel perl perl-devel wget
do
    yum -y -q install $i > /dev/null
    echo -e "${COLOR_PURPLE}$i ${COLOR_GREEN}Install ok${COLOR_END}"
done

# download cmake >= 2.8
CMAKE_VERSION=cmake-3.4.3
rm -rf /tmp/cmake*
if [ -z $(which cmake) ]
then
    wget -c --no-check-certificate -q https://cmake.org/files/v3.4/${CMAKE_VERSION}.tar.gz -P /tmp
    if [ $? == "0" ]
    then
        Progress Cmake Download
        echo -e "${COLOR_GREEN}Cmake Download sucessfully!${COLOR_END}"
    else
        echo -e "${COLOR_RED}Cmake Download failed!${COLOR_END}"
        exit 0
    fi
    tar -zxf /tmp/${CMAKE_VERSION}.tar.gz -C /tmp/ > /dev/null
    cd /tmp/${CMAKE_VERSION}
    ./bootstrap > /dev/null
    make && make install
    echo $?
else
    echo -e "${COLOR_PURPLE}Cmake is exsits ${COLOR_END}"
fi

# download boost_1.61
BOOST_VERSION=1.61.0
BOOST_VER="boost_1_61_0"
for i in bzip2 gcc bzip2-devel bzip2-libs python-devel perl-Data-Dumper
do
    yum install -q -y $i > /dev/null
    echo -e "${COLOR_PURPLE}$i ${COLOR_GREEN}install OK${COLOR_END}"
done

wget -c --no-check-certificate -q https://nchc.dl.sourceforge.net/project/boost/boost/${BOOST_VERSION}/${BOOST_VER}.tar.bz2 -P /tmp
if [ $? == "0" ]
then
    Progress Boost Download
    echo -e "${COLOR_GREEN}Boost Download sucessfully!${COLOR_END}"
    echo -e "${COLOR_GREEN}Decompression ${BOOST_VER}.tar.bz2${COLOR_END}"
    cd /tmp;tar -jxf ${BOOST_VER}.tar.bz2
    cd ${BOOST_VER}
    echo `pwd`
    ./bootstrap.sh 2> /dev/null
    ./b2 install   2> /dev/null
else
    echo -e "${COLOR_RED}Boost Download failed!${COLOR_END}"
    exit 0
fi

# Download mysql
rm -rf /tmp/mysql-5.*
MYSQL_VERSION=5.6.35
wget -c http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-${MYSQL_VERSION}.tar.gz -P /tmp

if [ $? == "0" ]
then
    echo -e "${COLOR_PURPLE}Mysql ${MYSQL_VERSION}${COLOR_GRENN}Download sucessfully!${COLOR_END}"
else
    echo -e "${COLOR_PURPLE}Mysql ${MYSQL_VERSION}${COLOR_RED}Download failed!${COLOR_END}"
fi

cd /tmp/
tar -zxf /tmp/mysql-${MYSQL_VERSION}.tar.gz
cd mysql-${MYSQL_VERSION}

if [ -f /etc/my.cnf ]
then
    mv /etc/my.cnf /etc/my.cnf__$(date +%Y%m%d).bak
fi

echo "======================================================"
echo -e "Please input the root password of mysql: "
read -p "(Default password:root):" MYSQL_PASSWD
if [ $mysqlrootpw == "" ];then
    MYSQL_PASSWD="root"
fi
echo "Mysql root's password is ${mysqlrootpw}"

echo -e "${COLOR_PURPLE}Please input Mysql Basedir: ${COLOR_END}"
read -p "(Default Mysql Basedir:/usr/local/mysql/)" MYSQL_HOME
if [ -z $MYSQL_HOME ];then
    MYSQL_HOME="/usr/local/mysql"
fi
read -p "(Default Mysql Datadir:/usr/local/mysql/data)" MYSQLDB_HOME
if [ -z $MYSQLDB_HOME ];then
    MYSQLDB_HOME="/usr/local/mysql/data"
fi

echo "======================================================="

cmake \
-DCMAKE_INSTALL_PREFIX=${MYSQL_HOME}-${MYSQL_VERSION} \
-DMYSQL_DATADIR=${MYSQLDB_HOME} \
-DSYSCONFDIR=/etc \
-DWITH_BOOST=/usr/local/include/boost \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DMYSQL_tcp_PORT=3306 \
-DDEFAULT_CHARSET=utf8 \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1 \
-DDEFAULT_COLLATION=utf8_general_ci

make -j${CPU_NUMBERS} && make install

ln -s ${MYSQL_HOME}-${MYSQL_VERSION} ${MYSQL_HOME}
cp ${MYSQL_HOME}/support-files/my-default.cnf /etc/my.cnf

mkdir -p ${MYSQLDB_HOME}/log
chown -R mysql:mysql ${MYSQL_HOME}
chown -R mysql:mysql ${MYSQLDB_HOME}

cd ${MYSQL_HOME};chmod +x ./scripts/mysql_install_db
${MYSQL_HOME}/scripts/mysql_install_db --user=mysql --basedir=${MYSQL_HOME} --datadir=${MYSQLDB_HOME}

cat >> /etc/profile <<EOF
PATH=\$PATH:${MYSQL_HOME}/bin
export PATH
EOF

source /etc/profile
${MYSQL_HOME}/support-files/mysql.server start
if [ $? == "0" ]
then
    echo "Setup successfully!enjoy it...."
    source /etc/profile
else
    echo "Mysql start failed"
fi


您可能感兴趣的文档:

--结束END--

本文标题: Centos7编译安装mysql脚本

本文链接: https://www.lsjlt.com/news/38624.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Centos7编译安装mysql脚本
    #!/bin/bash # mysqld install scripts # display Progress Progress () ...
    99+
    2022-10-18
  • centos7 编译安装 mysql-5.7.25
    安装依赖组件yum -y install cmake gcc-c++ ncurses-devel bison-devel获取mysql-5.7.25.tar.gz 并解压缩wget cd mysql-5.7...
    99+
    2022-10-18
  • mariadb编译安装脚本
    #!/bin/bash#Date:2017-04-23#Author:Allen_Jol#mariadb_install_v1.0.sh#Version:mariadb-10.1.22MARIADB_VER...
    99+
    2022-10-18
  • centos7如何编译安装mysql
    这篇文章主要介绍centos7如何编译安装mysql,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! centos7编译安装mysql的方法:1、安装依赖包...
    99+
    2022-10-19
  • 源码包编译安装MySQL 5.6脚本
    源码包编译安装MySQL5.6脚本,一个机器安装两个MySQL数据库,编译时指定端口,安装路径和socket文件位置。 安装完成的MySQL安装文件可以打包复制到别的机器使用,在别的机器使用时候只...
    99+
    2022-10-18
  • CentOS7怎么编译安装MySQL 8.0
    这篇文章主要介绍了CentOS7怎么编译安装MySQL 8.0的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CentOS7怎么编译安装MySQL 8.0文章都会有所收获,下面我们一起来看看吧。CentOS编译安...
    99+
    2023-06-27
  • Centos7 MariaDB10.1.22编译安装
    当前系统环境# hostnamectl Static hostname: localhost.localdomainIcon name: computer-vmChassis: vmMachine...
    99+
    2022-10-18
  • Centos7编译安装python3.
    环境: CentOS Linux release 7.5.1804python3.7.3 前期准备: 安装相关依赖包,采用yum安装. yum -y install zlib-devel bzip2-devel openssl-devel...
    99+
    2023-01-31
  • Centos7 编译安装mariadb-10.1.22
    mariadb-10.1.22 源码编译安装下载文件https://mariadb.com/1.安装开发环境yum groupinstall "Development Tool...
    99+
    2022-10-18
  • php8.2 编译安装(详细)+ bash脚本
    编译安装php8.2.8(2023.7.4) 以下操作在debian11演示,其余deb系列(如ubuntu)同样,redhat系列自行安装依赖其余一样 仅限linux系统,bsd系统不适用此教程(因...
    99+
    2023-08-31
    php
  • Centos7怎么编译安装vim8
    这篇文章主要讲解了“Centos7怎么编译安装vim8”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Centos7怎么编译安装vim8”吧!环境Centos7.7 Minimalvim-8....
    99+
    2023-06-05
  • MySQL5.6一键编译安装脚本分享
    本篇内容主要讲解“MySQL5.6一键编译安装脚本分享”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL5.6一键编译安装脚本分享”吧! ...
    99+
    2022-10-18
  • Apache2.4.25+mysql5.7+php7.13编译安装For Centos7
    #!/bin/bash#此脚本适合新系统安装,一键安装脚本#安装环境#[root@localhost apache]# hostnamectl #       &nb...
    99+
    2022-10-18
  • Centos7如何编译安装kafka-manager
    本篇内容介绍了“Centos7如何编译安装kafka-manager”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!管理多个集群具体支持以下内...
    99+
    2023-06-05
  • MySQL编译安装
    MySQL编译安装 安装依赖环境 yum -y groupinstall "Development Tools"yum -y install ncurses ncurses-devel openssl...
    99+
    2023-09-23
    mysql 数据库 linux
  • Mysql5.6.36脚本编译安装及初始化教程
    概述 本文为centos7.3自动化编译安装mysql5.3.6的脚本及后续初始化操作,话不多少,直接上脚本。 安装脚本install.py如下: #coding=utf-8 #!/usr/bin/p...
    99+
    2022-10-18
  • CentOS7下如何编译安装Mapnik Mapnik
    小编给大家分享一下CentOS7下如何编译安装Mapnik Mapnik,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!InstallationTroublesho...
    99+
    2023-06-10
  • MySQL 5.5.32 编译安装
    1、安装环境准备 # wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo # y...
    99+
    2022-10-18
  • RedHat编译安装MySQL
    1、下载mysql源码压缩包,以及cmake的rpm包:boost_1_59_0.tar.gzmysql-5.7.19.tar.gzcmake-2.8.12.2-4.el6.x86_64.rpm2、解压压缩...
    99+
    2022-10-18
  • cmake 编译安装mysql
    目录1、安装必备软件包2、创建用户和用户组以及数据目录并赋予相应的权限3、编译安装4、重新编译(可选)5、开机自动启动6、初始化数据库7、启动服务8、首次配置用户 1、安装必备软件包 yum install -y gcc gcc-c++ a...
    99+
    2016-08-30
    cmake 编译安装mysql 数据库入门 数据库基础教程 数据库 mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作