mysql 8.0.13 tar安装教程_Mysql8.0.13脚本安装(mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz)

Mysql8.0.13脚本安装(mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz)

街头角落

链接:https://pan.baidu.com/s/1V8-3SepCkZoDR_3Z3Vr9Tg

提取码:ihin

复制这段内容后打开百度网盘手机App,操作更方便哦

#!/bin/bash

# ——————————————————————————-

# Filename: 安装MySQL8.0.13

# Revision: 1.1

# Author         zhongwf 577344353@qq.com

# Description: 解压安装MySQL8.0.13

# Notes: MySQL版本为:mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz

# ——————————————————————————–

#ySQL8.0.13下载地址 https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz

MYSQL_ID=`ifconfig eth0 | grep “inet addr” | awk -F. ‘{print $4}’ | awk ‘{print $1}’`

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`

echo “$MYSQL_MEM”

echo “================================================================”

echo “setup MySQL 8.0.13 on centos 7_64bit ”

echo “your computer is $CPU_NUMBERS processes ,mysql Memory is $MYSQL_MEM M”

echo “you will input mysql’s root password and mysql’s memory”

echo “================================================================”

sleep 1

read -n1 -p “are you sure setup[y/n]?” answer

case $answer in

Y | y)

echo

echo “start setup….”;;

N | n)

echo

echo “Cancel setup….”

exit 10 ;;

*)

echo

echo “error input parameter…..”

exit 11 ;;

esac

# check if user is root

if [ $(id -u) != “0” ];then

echo “Error: You must be root to run this script!”

exit 1

fi

# 解压MySQL8.0.13压缩包

cd /usr/local/src

tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz -C /usr/local/

# 改文件夹名

cd /usr/local/

mv mysql-8.0.13-linux-glibc2.12-x86_64 mysql

# 建数据文件夹和日志文件夹

#mkdir /data

# 建数据文件夹和日志文件夹

#mkdir /data

#判断是否已经有/data/这个目录

if [ ! -d “/data/” ];then

mkdir /data/

fi

#配置文件/etc/my.cnf

rm -rf /etc/my.cnf

touch /etc/my.cnf

cat > /etc/my.cnf << EOF

[client]

default-character-set = utf8mb4

[mysql]

default-character-set = utf8mb4

[mysqld]

port = 12336

log-bin=mysql-bin

server-id=1

#binglog日誌格式

binlog_format=”ROW”

#binlog过期清理时间

expire_logs_days=10

#binlog每个日志文件大小

max_binlog_size=100m

datadir=/usr/local/mysql

datadir=/data/mysql

socket=/data/mysql/mysql.sock

#symbolic-links=0

#innodb使用内存

#innodb_buffer_pool_size = 12G

#主从不同步的库

#binlog-ignore-db = dbname

binlog-ignore-db = information_schema

binlog-ignore-db = mysql

binlog-ignore-db = performance_schema

binlog-ignore-db = sys

#缓冲的数据hash到不同的缓冲池中,并行的内存读写

innodb_buffer_pool_instances = 2

#该变量将数据存导入到内存中,可以减少大量的IO资源消耗。当事务提交时,保存数据,后续在刷

#新到磁盘。

innodb_log_buffer_size = 128M

#在一个日志组每个日志文件的字节大小,日志文件的总大小

innodb_log_file_size = 256M

#修改InnoDB为独立表空间模式,每个数据库的每个表都会生成一个数据空间。

innodb_file_per_table =ON

#库里的表特别多的情况使用,这个值默认是300M

innodb_open_files=2M

#限制了一次有多少线程能进入内核,0表示不限制进入内核的数量

innodb_thread_concurrency=0

innodb_flush_log_at_trx_commit=1

sync_binlog=1

### myisam

key_buffer_size = 32M

sort_buffer_size=16M

bulk_insert_buffer_size=16M

read_rnd_buffer_size=16M

#连接数

max_connections = 2000

#跳过错误

#slave-skip-errors=all

#utf8mb4编码

character-set-client-handshake = FALSE

character-set-server = utf8mb4

init_connect=’SET NAMES utf8mb4’

lower_case_table_names=1

#开启log-bin日志

log-bin-trust-function-creators=1

#开启事件调度器

event_scheduler=1

#慢查询开启

slow_query_log=1

#慢查询时间为2s

long_query_time=2

#存放位置

slow_query_log_file = /data/mysql/slow.log

#索引

log_queries_not_using_indexes

default_authentication_plugin=mysql_native_password

sql_mode=NO_ENGINE_SUBSTITUTION

[mysqld_safe]

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

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

#

# include all files from the config directory

#

!includedir /etc/my.cnf.d

EOF

#mysql user create

groupadd mysql

useradd -g mysql mysql -s /bin/false

# 修改目录归属

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

chown -R mysql:mysql /data

#mysql dir create

mkdir -p /data/mysql

chown -R mysql:mysql /data/mysql

mkdir -p /usr/local/mysql

yum install -y libaio

# 初始化数据库

cd /usr/local/mysql/bin/

rm -rf /data/mysql/

touch /data/recording.txt

touch /data/mysql_default.txt

#script -c /data/recording.txt

./mysqld –initialize –user=mysql –basedir=/usr/local/mysql –datadir=/data/mysql/

#yum -y install psmisc

#killall script

#grep ‘root@localhost’ /data/recording.txt |awk ‘{print $13}’ > /data/mysql_default.txt

# 开机自启

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

chmod +x /etc/init.d/mysqld

chkconfig –add mysqld

chkconfig mysqld on

sed -i ‘s%^datadir=%datadir=/data/mysql%g’ /etc/rc.d/init.d/mysqld

sed -i ‘s%^basedir=%basedir=/usr/local/mysql%g’ /etc/rc.d/init.d/mysqld

# 添加环境变量

echo “export PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile

# 使新添加的环境变量生效

source /etc/profile

#添加到/etc目錄的軟連接

ln -s /data/mysql/mysql.sock /tmp/mysql.sock

ln -s /usr/local/mysql/bin/mysql /usr/bin

# 启动mysql服务

/etc/init.d/mysqld start

# 查看mysql服务是否成功启动

if [ $? = “0” ];then

echo “set up successfully!enjoy it….”

else

echo “set up fail”

fi

exit 0

#修改密码

#8.0 需要先用这条命令

#alter user ‘root’@’localhost’ identified by ‘123456’;

#CREATE USER ‘root’@’%’ IDENTIFIED BY ‘你的密码’;

#GRANT ALL ON *.* TO ‘root’@’%’;

#ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘你的密码’;

#密码永不过期的

#ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘新密码’ PASSWORD EXPIRE NEVER;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值