Linux环境安装Mariadb(欧拉)

一、安装Mariadb

1.方式一:源码离线安装

1.1 上传mariadb tar包和相关依赖包 

1.2 编写mariadb安装脚本

vi install_07_mariadb.sh 

#!/bin/bash

######################
# mariadb10 安装脚本 #
######################

WORK_PATH=/home/data/install_pkg
TMP_PATH=$WORK_PATH/tmp
PKG_PATH=$WORK_PATH/mariadb

if [ "$1" = "" ];
then
    echo -e "\033[0;31m 未输入操作系统类型 \033[0m  \033[0;34m {ubuntu|centos} \033[0m"
    exit 1
fi
LINUX_DISTRIBUTION=$1

#检查安装目录
if [ ! -d $PKG_PATH ];
then
    echo -e "${PKG_PATH} 缺失,结束进程"
    exit 1
fi

if [ ! -d $TMP_PATH ];
then
    mkdir -p $TMP_PATH
fi

#检查libaio
#echo `whereis libaio.so.1`

IS_LIBAIO=`echo \`whereis libaio.so.1\` | grep "/"`
if [ "$IS_LIBAIO" = "" ];
then
    echo -e "libaio.so.1缺失,尝试安装"
    cd $PKG_PATH
    if [ "$LINUX_DISTRIBUTION" = "ubuntu" ];
    then
        # ubuntu
        dpkg -i *.deb
    else
        # centos
        rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm
        rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
    fi
    #rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm
    #rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm
    IS_LIBAIO_2=`echo \`whereis libaio.so.1\` | grep "/"`
    if [ "$IS_LIBAIO_2" = "" ];
    then
        echo -e "libaio安装失败,请手动安装"
        exit 1
    fi
    echo -e "libaio安装完成,继续执行"
fi
#attention: 需要root用户执行,安装目录在/usr/local/mariadb下

# 1.判断当前用户是否为root用户
if [ $(id -u) != "0" ]; then
    echo "error: you must be root run this script"
    exit 1
fi

# 2.定义变量
WKDIR=$(pwd)
INSTALL_HOME="/home/data"
MYSQL_HOME="$INSTALL_HOME/mariadb"
MYSQL_DATA="$MYSQL_HOME/data"
[ -d $INSTALL_HOME ] || mkdir -p $INSTALL_HOME

# 3. 检验安装目录
if [ -d $MYSQL_HOME ];then
    echo "error:your system have installed mysql"
    exit 1
fi

# 4. 卸载系统自带数据库
rpm -qa|grep mysql > /dev/null 2>&1
if [ $? -eq 0 ];then
    rpm -qa|grep mysql|xargs yum -y remove
fi
rpm -qa|grep mariadb > /dev/null 2>&1
if [ $? -eq 0 ];then
    rpm -qa|grep mariadb|xargs yum -y remove
fi

# 5. 开始安装
echo "start installing mysql"
#解压
echo "start tar..."
cd $TMP_PATH
cp $PKG_PATH/mariadb-10.3.35-linux-systemd-x86_64.tar.gz ./
tar -zxf ./mariadb-10.3.35-linux-systemd-x86_64.tar.gz -C ./
mv ./mariadb-10.3.35-linux-systemd-x86_64 $MYSQL_HOME

echo "tar complete"
[ -d $MYSQL_DATA ] || mkdir -p $MYSQL_DATA

# 创建用户
id mysql > /dev/null 2>&1
if [ $? -ne 0 ];then
    useradd -s /sbin/nologin -M mysql
fi

# 创建配置文件及日志目录
mkdir -p $MYSQL_HOME/{etc,logs,tmp}

# 更改mysql目录所属用户和组
chown -R mysql:mysql $MYSQL_HOME
echo "initializing mysql"

# 初始化mysql数据库
cd $MYSQL_HOME
./scripts/mysql_install_db --basedir=$MYSQL_HOME --datadir=$MYSQL_DATA --user=mysql

# 创建配置文件
cat >$MYSQL_HOME/etc/my.cnf<<EOF
[mysqld]
user = mysql
port = 3306
basedir = /home/data/mariadb
datadir = /home/data/mariadb/data
socket = /tmp/mysql.sock
pid-file = /home/data/mariadb/tmp/mysqld.pid
character-set-server = utf8
collation-server = utf8_unicode_ci
max_connections = 1000
log-error = /home/data/mariadb/logs/mysqld.log
EOF

# 注册服务
cat >/usr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值