mysql+e+eof_25.第19章 MYSQL数据库

news/2024/7/24 9:40:36 标签: mysql+e+eof

一.mysql数据库基于二进制包一键安装脚本

#mysq5.6基于二进制包一键安装脚本

#!/bin/bash

#

#********************************************************************

#Author: zhanghui

#QQ: 19661891

#Date: 2021-01-26

#FileName: install_mysql5.6.sh

#URL: www.neteagles.cn

#Description: The test script

#Copyright (C): 2021 All rights reserved

#********************************************************************

#!/bin/bash

DIR=`pwd`

MYSQL="mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz"

FULL_NAME=${DIR}/${MYSQL}

DATA_DIR="/data/mysql"

MYSQL_VERSION=5.6.51

mysql_Dependency_package(){

if [[ `awk -F"[. ]+" '{print $4}' /etc/redhat-release` == 8 ]];then

yum install -y libaio perl-Data-Dumper autoconf ncurses-compat-libs

else

yum install -y libaio perl-Data-Dumper

fi

}

rpm -q wget || yum -y install wget

wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/${MYSQL}

mysql_Dependency_package

if [ -f ${FULL_NAME} ];then

echo "安装文件存在"

else

echo "安装文件不存在"

exit 3

fi

if [ -h /usr/local/mysql ];then

echo "Mysql 已经安装"

exit 3

else

tar xvf ${FULL_NAME} -C /usr/local/src

ln -sv /usr/local/src/mysql-${MYSQL_VERSION}-linux-glibc2.12-x86_64 /usr/local/mysql

if id mysql;then

echo "mysql 用户已经存在,跳过创建用户过程"

else

useradd -r -s /sbin/nologin mysql

fi

if id mysql;then

chown -R mysql.mysql /usr/local/mysql/*

if [ ! -d /data/mysql ];then

mkdir -pv /data/mysql && chown -R mysql.mysql /data -R

/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql/

cp /usr/local/src/mysql-${MYSQL_VERSION}-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysqld

chmod a+x /etc/init.d/mysqld

cat > /etc/my.cnf <

[mysqld]

socket=/data/mysql/mysql.sock

user=mysql

symbolic-links=0

datadir=/data/mysql

innodb_file_per_table=1

[client]

port=3306

socket=/data/mysql/mysql.sock

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/tmp/mysql.sock

EOF

ln -sv /usr/local/mysql/bin/mysql /usr/bin/mysql

/etc/init.d/mysqld start

chkconfig --add mysqld

else

echo "MySQL数据目录已经存在,"

exit 3

fi

fi

fi

#mysq5.7基于二进制包一键安装脚本

#!/bin/bash

#

#********************************************************************

#Author: zhanghui

#QQ: 19661891

#Date: 2021-01-27

#FileName: install_mysql5.7.sh

#URL: www.neteagles.cn

#Description: The test script

#Copyright (C): 2021 All rights reserved

#********************************************************************

. /etc/init.d/functions

SRC_DIR=`pwd`

MYSQL='mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz'

COLOR="echo -e \\033[01;31m"

END='\033[0m'

MYSQL_ROOT_PASSWORD=123456

MYSQL_VERSION=5.7

mysql_Dependency_package(){

if [[ `awk -F"[. ]+" '{print $4}' /etc/redhat-release` == 8 ]];then

yum -y install libaio perl-Data-Dumper ncurses-compat-libs

else

yum -y install libaio perl-Data-Dumper

fi

}

check (){

if [ -e /usr/local/mysql ];then

action "数据库已存在,安装失败" false

exit

else

return

fi

}

install_mysql(){

$COLOR"开始安装MySQL数据库..."$END

cd $SRC_DIR

rpm -q wget || yum -y install wget

wget http://mirrors.163.com/mysql/Downloads/MySQL-${MYSQL_VERSION}/${MYSQL}

mysql_Dependency_package

tar xf $MYSQL -C /usr/local/

MYSQL_DIR=`echo $MYSQL| sed -nr 's/^(.*[0-9]).*/\1/p'`

ln -s /usr/local/$MYSQL_DIR /usr/local/mysql

chown -R root.root /usr/local/mysql/

id mysql &> /dev/null || { useradd -s /sbin/nologin -r mysql ; action "创建mysql用户"; }

echo 'PATH=/usr/local/mysql/bin/:$PATH' > /etc/profile.d/mysql.sh

. /etc/profile.d/mysql.sh

cat > /etc/my.cnf <

[mysqld]

server-id=1

log-bin

datadir=/data/mysql

socket=/data/mysql/mysql.sock

log-error=/data/mysql/mysql.log

pid-file=/data/mysql/mysql.pid

[client]

socket=/data/mysql/mysql.sock

EOF

mysqld --initialize --user=mysql --datadir=/data/mysql

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

service mysqld start

[ $? -ne 0 ] && { $COLOR"数据库启动失败,退出!"$END;exit; }

MYSQL_OLDPASSWORD=`awk '/A temporary password/{print $NF}' /data/mysql/mysql.log`

mysqladmin -uroot -p$MYSQL_OLDPASSWORD password $MYSQL_ROOT_PASSWORD &>/dev/null

action "数据库安装完成"

}

check

install_mysql

#mysq8.0基于二进制包一键安装脚本

#!/bin/bash

#

#********************************************************************

#Author: zhanghui

#QQ: 19661891

#Date: 2021-01-27

#FileName: install_mysql8.0.sh

#URL: www.neteagles.cn

#Description:The test script

#Copyright (C): 2021 All rights reserved

#********************************************************************

. /etc/init.d/functions

SRC_DIR=`pwd`

MYSQL='mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz'

COLOR="echo -e \\033[01;31m"

END='\033[0m'

MYSQL_ROOT_PASSWORD=123456

MYSQL_VERSION=8.0

mysql_Dependency_package(){

if [[ `awk -F"[. ]+" '{print $4}' /etc/redhat-release` == 8 ]];then

yum -y install libaio perl-Data-Dumper ncurses-compat-libs

else

yum -y install libaio perl-Data-Dumper

fi

}

check (){

if [ -e /usr/local/mysql ];then

action "数据库已存在,安装失败" false

exit

else

return

fi

}

install_mysql(){

$COLOR"开始安装MySQL数据库..."$END

cd $SRC_DIR

rpm -q wget || yum -y install wget

wget http://mirrors.163.com/mysql/Downloads/MySQL-${MYSQL_VERSION}/${MYSQL}

mysql_Dependency_package

tar xf $MYSQL -C /usr/local/

MYSQL_DIR=`echo $MYSQL| sed -nr 's/^(.*[0-9]).*/\1/p'`

ln -s /usr/local/$MYSQL_DIR /usr/local/mysql

chown -R root.root /usr/local/mysql/

id mysql &> /dev/null || { useradd -s /sbin/nologin -r mysql ; action "创建mysql用户"; }

echo 'PATH=/usr/local/mysql/bin/:$PATH' > /etc/profile.d/mysql.sh

. /etc/profile.d/mysql.sh

cat > /etc/my.cnf <

[mysqld]

server-id=1

log-bin

datadir=/data/mysql

socket=/data/mysql/mysql.sock

log-error=/data/mysql/mysql.log

pid-file=/data/mysql/mysql.pid

[client]

socket=/data/mysql/mysql.sock

EOF

mysqld --initialize --user=mysql --datadir=/data/mysql

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

service mysqld start

[ $? -ne 0 ] && { $COLOR"数据库启动失败,退出!"$END;exit; }

MYSQL_OLDPASSWORD=`awk '/A temporary password/{print $NF}' /data/mysql/mysql.log`

mysqladmin -uroot -p$MYSQL_OLDPASSWORD password $MYSQL_ROOT_PASSWORD &>/dev/null

action "数据库安装完成"

}

check

install_mysql


http://www.niftyadmin.cn/n/887252.html

相关文章

mysql 远程过程调用(rpc)协议出现错误 怎么解决_遭遇:“传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确” 错误...

http://www.cnblogs.com/delphinet/archive/2010/03/09/1681777.html正在写一个类似文章的发表系统。其中记录文章内容的字段Contents设计为varchar(Max)类型。其中在DAL层调用存储过程来插入数据的参数SqlParameter[] parameters {new SqlParameter("Contents", Sq…

Vue mixins(混合)的理解,有哪些应用场景?源码分析

一、mixin是什么 Mixin是面向对象程序设计语言中的类&#xff0c;提供了方法的实现。其他类可以访问mixin类的方法而不必成为其子类。 Mixin类通常作为功能模块使用&#xff0c;在需要该功能时“混入”&#xff0c;有利于代码复用又避免了多继承的复杂。 Vue中的mixin 先来…

在MySQL中怎么进行多表删除_MySQL中多表删除方法

如果您是才接触MySQL的新人&#xff0c;那么MySQL中多表删除是您一定需要掌握的&#xff0c;下面就将为详细介绍MySQL中多表删除的方法&#xff0c;供您参考&#xff0c;希望对你学习掌握MySQL中多表删除能有所帮助。1、从MySQL数据表t1中把那些id值在数据表t2里有匹配的记录全…

vue插槽之slots

插槽slot&#xff1a;本质就是向组件传递一个DOM。 index.html&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>.panel{border: 1px solid #ececec;}.…

DOM知识结构

一、编程接口&#xff1a; 可通过 JavaScript &#xff08;以及其他编程语言&#xff09;对 HTML DOM 进行访问。 所有 HTML 元素被定义为对象&#xff0c;而编程接口则是对象方法和对象属性。 方法是您能够执行的动作&#xff08;比如添加或修改元素&#xff09;。 属性是您…

机器人二弟_“可佳二代”机器人好性感

将本文分享到微博:小观众认真观看机器人表演“晨报读者这边走……”5月14日上午&#xff0c;在科大科技周各科普点&#xff0c;300余人的晨报“科技周”探秘团&#xff0c;在各分队志愿者导游带领下&#xff0c;玩转科技周&#xff0c;过足科技瘾。看3D、观天象、看机器人&…

专题4:全方位解读javascript中this

首先必须要说的是&#xff0c;this的指向在函数定义的时候是确定不了的&#xff0c;只有函数执行的时候才能确定this到底指向谁&#xff0c;实际上this的最终指向的是那个调用它的对象&#xff0c;即&#xff1a;如果是以函数形式调用则是指向window&#xff0c;如果是以方法形…

lua excel to mysql_在Lua程序中使用MySQL的教程 -电脑资料

这篇文章主要介绍了在Lua程序中使用MySQL的教程,是Lua入门学习中的基础知识,需要的朋友可以参考下导入MySQL我们可以用一个简单语句导入SQLite库&#xff0c;假设Lua中正确实现并已完成&#xff0c;代码如下:mysql require "luasql.mysql"可变的MySQL将提供通过参照…